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.
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.
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.