What you can build with the afk.ai rigging API
Send a 3D model, get back a rigged GLB with every animation for its body type. People, animals, dragons, dinosaurs, spiders, fish, and props that bounce, spin and wobble.
October 25, 2026
The afk.ai API does one job: you send a 3D model (GLB, glTF or FBX) and say what kind of body it has, and you get back a GLB with a skeleton, skin weights and every animation made for that body type. It's the same AI rigger as afk.ai/rig, driven from your terminal, your code or your AI agent.
export AFK_API_KEY=afk_...
npx afk-rig knight.glb --type human -o knight.rigged.glb
That one command gives you a knight with 172 animations: walks, runs, sword combos, climbing, swimming, dancing, deaths and more. Here's what else you can point it at, and what people build with it.
13 body types, one API
Most auto-riggers only handle humanoids. afk.ai has a skeleton for each of these body types, and each one comes with animations made for that skeleton, about 300 in all:
| Type | Rig it for | Animations | A few of them |
|---|---|---|---|
human | People, robots, zombies, anything on two legs | 172 | Walk, Sprint, Sword_Attack, Climb Ladder, Swim_Fwd, Dance Charleston |
fox | Dogs, cats, foxes, wolves | 19 | Walk, Trot, Run, Fetch, Howl, Play_Bow |
horse | Horses, deer, cows | 14 | Walk, Trot, Run, Rear, Kick, Eating |
bird | Birds: wings and two legs | 10 | Flap, Glide, Take Off, Hop, Peck |
dragon | Wings and four legs | 11 | Fly Flap, Fly Hover, Roar, Fire Breath, Tail Swipe |
kaiju | Dinosaurs and upright monsters with tails | 10 | Walk, Roar, Tail Attack, Swim |
spider | Spiders and insects | 15 | Walk, Run, Sneak, Jump, Threat |
snake | No legs, one long spine | 8 | Side winding, Coiled, Bite, Dance |
fish | Fish, sharks, whales | 12 | Swim Fast, Swim Turn Left, Thrash, Lunge Bite |
kangaroo | Kangaroos and other hoppers | 6 | Hop, Hop_Fast, Box, Tail_Kick |
frog | Frogs and toads | 6 | Hop, Big_Jump, Croak, Tongue_Snap, Swim |
ghost | Ghosts and floating spirits | 6 | Drift, Float_Idle, Spook, Vanish, Wail |
object | Props and objects with no body at all | 9 | Bounce, Spin, Wobble, Squash_Stretch, Pop_In |
npx afk-rig types lists them, and npx afk-rig types fox lists one type's animations. You can ask for all of a type's animations (the default), none, or only the ones you name with --animations Walk,Run.
Objects: animate things that have no skeleton
A coin, a treasure chest, a road sign or a potion bottle doesn't have bones, so the usual way to animate one is to keyframe its position and rotation by hand. That gets you a coin that spins, but never a chest that squashes when it lands or a sign that bends in the wind.
The object type fits a small skeleton inside any model: a spine up the middle and three rows of bones across it, 21 joints in all. Because the mesh itself is skinned to those bones, the object can bend, squash and stretch, not just move. It comes with 9 animations:
- Bounce: for pickups and collectibles
- Squash_Stretch: the classic cartoon squash and stretch
- Spin: for coins and rewards
- Float: for items hovering over the ground
- Wobble: for things that just landed or were hit
- Shake: for a locked door or a wrong answer
- Sway: for trees, signs and lamps
- Flag_Wave: for flags and banners
- Pop_In: for things that spawn
npx afk-rig chest.glb --type object --animations Bounce,Wobble,Pop_In
On afk.ai/rig you can also rig just part of a model, such as the flag on a flagpole or the sign on a post: select the part, and only it is animated while the rest stays still in the same file. There's more on both in how to make any 3D object bounce, spin, wobble or squash and stretch.
What people build with it
Games where players bring their own models
If players can upload a character or a pet, rig it on upload and it walks around a minute later. The rig comes back as a standard GLB, so your game loads it like any other asset, and every model of a body type gets the same animation names, so one animation controller drives them all.
Text-to-3D and image-to-3D apps
Generated meshes come out as statues. Pipe them through the API and they come out moving: generate a dragon, rig it as dragon, and play Fly Flap in your preview straight away.
Asset pipelines
Rig a whole folder in one go, in CI or on a build machine:
for f in models/animals/*.glb; do
npx afk-rig "$f" --type fox --animations Idle,Walk,Run
done
Up to 2 rigs run at once per account; the CLI waits for a free slot by itself.
AI agents that make 3D content
The same package is an MCP server, so Claude Code, Cursor or any MCP client can rig models as a tool call instead of hand-writing bones and weights. See rigging 3D models from Claude Code.
Web 3D
The output plays in three.js, Babylon.js, PlayCanvas or model-viewer without any conversion: load the GLB, pick a clip from its animations and play it.
From JavaScript
import { AfkRig } from 'afk-rig'
const afk = new AfkRig() // reads AFK_API_KEY
await afk.rig('wolf.glb', { type: 'fox', output: 'wolf.rigged.glb' })
startRig, getRig, waitForRig and downloadRig do the same thing a step at a time, for a server that starts a rig and comes back for it later.
Questions
What file formats does the API take?
GLB, glTF with its buffers and textures embedded, or FBX, up to 80 MB. Draco- and meshopt-compressed meshes aren't supported yet, so export without mesh compression.
What do I get back?
One GLB with the skeleton, skin weights, your textures and materials as they were, and the animations you asked for. It's the same file a download from afk.ai/rig gives you.
Does it work in Unity, Unreal and Godot?
Yes. Godot and Unreal (5.1 and later) import GLB directly, and Unity imports it with the glTFast package. Import creatures and objects as a Generic rig in Unity, not Humanoid.
Can I use the animations in a commercial game?
Yes. The skeletons and animations are CC0 (public domain), and your model stays yours.
How fast is a rig?
Usually 30 seconds to a minute from upload to a finished file. Big models (20 MB and up) can take a minute or two.
Rig models from code
Every animation for the body type, in one GLB, from your terminal, your code or your AI agent.