For AI agents

Make MetaHuman heads from your AI agent.

Paste one prompt into Claude Code, Codex, Cursor, Gemini CLI or any agent that can run a command. It installs the FaceNinja skill, signs you in with a code you approve in the browser, and makes the head. No key to copy.

01 How it works

Three steps, about a minute of your time.

1

Make an account

Sign up with your email or Google. The first head is on us.

2

Paste a prompt

Your agent reads the skill, installs it and starts the sign-in.

3

Approve the code

The agent shows a code like WXYZ-2345. Open the link, check the code, click Approve. The agent gets its own API key and makes the head.

02 Prompts

Copy, paste, approve.

Put a photo next to where your agent works and name it photo.jpg, or change the path in the prompt. None of these prompts contains a key.

Any agent

Read https://faceninja.net/skill/SKILL.md and install the FaceNinja skill it describes. Then sign me in with it (it will show me a code to approve) and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

Works in any agent that can fetch a URL and run a shell command.

Claude Code

Install the FaceNinja skill with `curl -fsSL https://faceninja.net/skill/install.sh | sh -s -- --claude`, then read the SKILL.md it installed and follow it: sign me in (show me the code to approve) and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

Installs to ~/.claude/skills/faceninja (or $CLAUDE_CONFIG_DIR/skills). New sessions load it by itself.

Codex

Install the FaceNinja skill with `curl -fsSL https://faceninja.net/skill/install.sh | sh -s -- --codex`, then read the SKILL.md it installed and follow it: sign me in (show me the code to approve) and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

Installs to ~/.codex/skills/faceninja (or $CODEX_HOME/skills). The sign-in and downloads need network access.

Cursor

Install the FaceNinja skill into this project with `curl -fsSL https://faceninja.net/skill/install.sh | sh -s -- --cursor`, then read .cursor/skills/faceninja/SKILL.md and follow it: sign me in (show me the code to approve) and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

Installs to .cursor/skills/faceninja in the open project.

Gemini CLI

Install the FaceNinja skill into this project with `curl -fsSL https://faceninja.net/skill/install.sh | sh -s -- --agents`, then read .agents/skills/faceninja/SKILL.md and follow it: sign me in (show me the code to approve) and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

Installs to .agents/skills/faceninja. Add --agents-md to also list it in AGENTS.md. Other agents use the same line.

curl / API

# A key: Factory → API keys, or `python3 faceninja.py login`
export FACENINJA_API_KEY=fn_live_...

# 1. create a head from a photo (held: 1,500 credits)
curl -s https://faceninja.net/v1/heads -H "Authorization: Bearer $FACENINJA_API_KEY" \
  -H "Idempotency-Key: my-first-head" -F photos=@photo.jpg -F name=Me

# 2. wait (repeat until "status" is "completed" or "failed")
curl -s "https://faceninja.net/v1/heads/hd_...?wait=60" -H "Authorization: Bearer $FACENINJA_API_KEY"

# 3. download (the link works for 60 seconds and needs no key)
curl -s https://faceninja.net/v1/heads/hd_.../files -H "Authorization: Bearer $FACENINJA_API_KEY" -d format=glb
curl -s https://faceninja.net/v1/heads/hd_.../files -H "Authorization: Bearer $FACENINJA_API_KEY" -d format=metahuman_zip

Full reference: https://faceninja.net/docs/

With an API key instead (not recommended)

Use my FaceNinja API key fn_live_YOUR_KEY as the environment variable FACENINJA_API_KEY for the commands you run; do not write it into any file. Read https://faceninja.net/skill/SKILL.md, install the FaceNinja skill it describes and make a MetaHuman head from ./photo.jpg. Save the GLB and the MetaHuman ZIP in ./faceninja-out.

This prompt contains a live API key. Agent transcripts and logs keep it: anyone who reads them can spend your credits. Prefer the sign-in prompt, and revoke this key in Factory → API keys when you are done.

03 Install

Install the skill yourself.

The skill is a folder in the open Agent Skills format: SKILL.md, one Python script and short API notes. The installers download it, check each file's SHA-256, copy it into the skills folder of every agent they find and say where. They change nothing else.

macOS, Linux, WSL

curl -fsSL https://faceninja.net/skill/install.sh | sh

Add -s -- --claude, --codex, --cursor or --agents to choose the folder. Read the script first if you like.

Windows PowerShell

irm https://faceninja.net/skill/install.ps1 | iex

Read the script. The skill needs Python 3.9 or newer.

Claude Code~/.claude/skills/faceninja (or $CLAUDE_CONFIG_DIR/skills)
Codex~/.codex/skills/faceninja (and $CODEX_HOME/skills)
Cursor.cursor/skills/faceninja in the open project
Gemini CLI and others.agents/skills/faceninja, plus one line in AGENTS.md if you agree

Files: SKILL.md · faceninja-skill.zip · faceninja.py (the script alone) · api.md · version.json (checksums) · llms.txt

04 What it can do

Everything the API does, as commands.

The skill drives faceninja.py, a single file with no dependencies. People can run it too.

  • login: device sign-in, the key saved readable by you only
  • balance, whoami: credits left, who is signed in
  • make: 1 to 15 photos of one person to a head, then GLB, FBX, OBJ, STL, PLY or the MetaHuman ZIP
  • batch: a folder, one head per photo or per subfolder, resumable
  • status, download, list, logout
  • --json on every command, exit codes an agent can act on
05 Costs

USD 15 a head. Nothing for the rest.

  • A head costs 1,500 credits (100 credits per US dollar). One free head when you sign up.
  • A head that fails gives its credits back. Downloads, repeat downloads and status checks are free.
  • The skill tells you the cost and your balance before it spends, and stops to ask before any batch of more than 5 heads.
  • Agents never buy credits. You buy them in Factory. See pricing.
06 Safety

You stay in control of the key.

  • Sign-in is a code you approve on faceninja.net while signed in. Nothing is approved automatically, and a code works once within 10 minutes.
  • Each agent gets its own API key, named after it ("Claude Code on studio-mac"). Revoke it any time in Factory → API keys.
  • The script stores the key readable by you only and never prints it. Only its first characters are shown.
  • A key pasted into a prompt stays in the agent's transcript. Use the sign-in prompts, or revoke the key afterwards.
  • Only photos of yourself or of adults who agreed. See the acceptable use policy.

Building your own integration? The API reference covers the same workflow with curl, Node and Python, and the AI agents section lists the sign-in calls.