Inicio rápido#
Del inicio de sesión a un modelo riggeado en tres pasos. Necesitas Node.js 18.17 o posterior.
- 01
Crea una clave
Inicia sesión en tu cuenta de afk.ai con Google y crea una en Claves de API. Empieza por
afk_y solo se muestra una vez; puedes revocarla allí cuando quieras. No la incluyas en páginas web ni en apps que la gente descarga. - 02
Ponla en tu entorno
shellexport AFK_API_KEY=afk_... # from afk.ai/account#api - 03
Riggea un modelo
npx afk-rig knight.glb --type human -o knight.rigged.glbLos rigs se ejecutan en nuestras GPU, normalmente en 1 a 2 minutos; la CLI y el cliente los esperan. Con un cliente MCP, pide algo como “riggea models/fox.glb como animal de cuatro patas”.
Desde una imagen#
¿Aún no tienes un modelo 3D? Envía una imagen de un personaje: una sola llamada crea con ella un modelo 3D texturizado y luego lo riggea con todas las animaciones de su tipo de cuerpo, en un GLB, en unos 2 a 3 minutos.
25¢ por personaje, de tus créditos: el modelo 3D, el rig y todas las animaciones; se reembolsa si falla. Los rigs gratis no cubren personajes. El billing del trabajo lo muestra: held mientras se ejecuta, luego charged o refunded, y la CLI muestra lo que cobró y los créditos que te quedan.
npx afk-rig character knight.png -o knight.glb
# Done in 135 s: 593 animations, 15.2 MB, charged $0.25 from your API credits. $4.75 of credits left.Funciona mejor una imagen clara y bien iluminada de un solo personaje, entero, sobre un fondo liso. Las texturas del modelo (color, metal y rugosidad) se crean a juego con la imagen, y la primera petición tras un rato sin actividad puede tardar hasta 5 minutos mientras arranca la GPU. Con un cliente MCP, pide algo como “haz un personaje riggeado a partir de art/knight.png”. Más en nuestra guía de la API de imagen a personaje riggeado.
Tipos de cuerpo#
Pasa uno con --type. afk.ai ajusta un esqueleto hecho para él, calcula los pesos de skin y añade todas las animaciones hechas para ese esqueleto: 933 entre todos los tipos. afk-rig types <type> enumera las animaciones de un tipo.

Personas, robots, zombis, cualquier cosa sobre dos piernas. Dedos incluidos.

Perros, gatos, zorros, lobos

Caballos, ciervos, vacas

Alas y dos patas

Alas y cuatro patas

Erguido, con cola

Seis u ocho patas, sin alas

Sin patas, una sola columna larga

Peces, tiburones, ballenas
Avispas, abejas, libélulas
Salta sobre grandes patas traseras
Ranas y sapos
Tortugas de mar y de tierra
Flota, sin patas
Cajas, banderas, objetos
CLI#
Ejecútala con npx afk-rig o instálala globalmente con npm i -g afk-rig. El progreso va a stderr y la ruta del archivo escrito a stdout, así que se puede encadenar en scripts.
| comando | qué hace |
|---|---|
| afk-rig <model> [options] | Riggea un modelo y escribe el .glb riggeado |
| afk-rig character <image> [options] | Crea un personaje riggeado y animado a partir de una imagen y escribe el .glb (25¢) |
| afk-rig status <rig id> | El estado de un rig |
| afk-rig download <rig id> -o <file> | Descarga un rig terminado (durante 24 horas) |
| afk-rig account | Rigs gratis que te quedan este mes, el crédito mensual de tu plan y créditos de la API |
| afk-rig types [type] | Tipos de cuerpo y las animaciones de un tipo |
| afk-rig mcp | Se ejecuta como servidor MCP sobre stdio |
Opciones
| -t, --type <type> | Qué es el modelo: human (por defecto) u otro tipo de cuerpo |
|---|---|
| -a, --animations <list> | all (por defecto), none o nombres de animaciones separados por comas |
| --facing <degrees> | auto (por defecto), 0, 90, 180 o 270: cómo está girado el modelo sobre su eje vertical |
| -o, --out <file> | Por defecto: <modelo o imagen>.rigged.glb junto al original |
| --no-wait | Inicia el rig, imprime su id y sale |
| --json | Imprime JSON |
Códigos de salida
| 0 | Riggeado; la ruta del archivo escrito está en stdout |
|---|---|
| 3 | Sin rigs gratis ni créditos |
| 1 | Cualquier otro caso (el mensaje está en stderr) |
Node.js#
El mismo paquete es un cliente con tipos: import { AfkRig } from 'afk-rig'. new AfkRig() lee AFK_API_KEY, o pasa { apiKey }.
| método | devuelve |
|---|---|
| rig(model, options) | Sube, espera y descarga en una sola llamada; escribe options.output si se indica. Se resuelve en { job, glb } |
| startRig(model, options) | Sube y devuelve el trabajo en cola. Envía un Idempotency-Key, así que una subida reintentada nunca inicia un segundo rig |
| character(image, options) | Una imagen de entrada, el personaje riggeado de salida: como rig(), se resuelve en { job, glb } |
| startCharacter(image, options) | Sube una imagen y devuelve el trabajo en cola; después, waitForRig y downloadRig, igual que con un rig |
| getRig(id) | El trabajo tal como está ahora |
| waitForRig(id, { onUpdate }) | Consulta hasta que termina bien; lanza un error si falla |
| downloadRig(id) | El .glb riggeado como Uint8Array |
| account() | Rigs gratis restantes, créditos, límites y rigs recientes |
| types() | Tipos de cuerpo con sus animaciones |
Paso a paso
import { AfkRig } from 'afk-rig'
const afk = new AfkRig()
const started = await afk.startRig('fox.glb', { type: 'fox', facing: 'auto' })
// { id: 'rig_…', status: 'queued', billing: { charge: 'credits', state: 'held', … } }
const done = await afk.waitForRig(started.id, {
onUpdate: (job) => console.log(job.status, job.stage), // rigging skeleton, rigging fit, …
})
const glb = await afk.downloadRig(done.id) // Uint8Array, for 24 hoursLos errores son de tipo AfkRigError, con el status HTTP, un code de la tabla de abajo y, si hay límite de frecuencia, retryAfter en segundos.
Servidor MCP#
npx -y afk-rig mcp lo ejecuta como servidor MCP sobre stdio, para que Claude Code, Cursor, Windsurf, Claude Desktop y otros clientes MCP puedan riggear los modelos que crean. Pásale AFK_API_KEY en su entorno.
claude mcp add afk-rig -e AFK_API_KEY=afk_... -- npx -y afk-rig mcp{
"mcpServers": {
"afk-rig": {
"command": "npx",
"args": ["-y", "afk-rig", "mcp"],
"env": { "AFK_API_KEY": "afk_..." }
}
}
}Herramientas
| rig_model | Riggea un archivo de modelo y escribe el .glb a su lado |
|---|---|
| image_to_character | Crea un personaje riggeado y animado a partir de una imagen y escribe el .glb a su lado |
| get_account | Rigs gratis que quedan este mes, el crédito mensual de tu plan y créditos de la API |
| list_body_types | Los tipos de cuerpo y sus animaciones |
| rig_status | El estado de un rig, por id |
Ciclo de vida de un rig#
Un rig es un trabajo asíncrono. Al subir el modelo recibes su id al momento; el trabajo pasa por estos estados, y la CLI y el cliente lo consultan por ti.
stage durante el rigging: prepare → skeleton (→ retry) → fit → weights → skinstage durante la exportación: animationsbilling.state es held mientras se ejecuta un rig de pago, charged cuando el archivo está listo y refunded si falla, así que un rig fallido no cuesta nada. billing.charge indica cómo se pagó: free, rerig, credits o character. Un personaje a partir de una imagen está en generating (se está creando su modelo 3D) antes de pasar a rigging. Un trabajo terminado, tal como lo imprime afk-rig status <id> --json:
{
"id": "rig_Xq3v9KfL2mTz8RbA1cWd",
"status": "succeeded",
"stage": null,
"type": "human",
"file": "knight.glb",
"animations": "all",
"facing": null,
"created_at": "2026-10-26T17:02:11Z",
"finished_at": "2026-10-26T17:03:35Z",
"billing": { "charge": "credits", "amount_usd": "0.05", "state": "charged" },
"error": null,
"result": {
"download_url": "https://…/v1/rigs/rig_Xq3v9KfL2mTz8RbA1cWd/model.glb",
"bytes": 7412032,
"animations": 593,
"expires_at": "2026-10-27T17:03:35Z"
}
}Errores#
Las peticiones que la API rechaza vuelven con un estado HTTP y un code; no se cobran.
| estado | code | significado |
|---|---|---|
| 401 | missing_api_key | No se envió ninguna clave. Configura AFK_API_KEY. |
| 401 | invalid_api_key | La clave es incorrecta o se revocó. Crea una nueva en la página de tu cuenta. |
| 402 | insufficient_credits | No quedan rigs gratis este mes, no queda crédito de tu plan y no hay créditos suficientes. Un personaje siempre necesita créditos, haya rigs gratis o no: 25¢ por personaje, de tus créditos: el modelo 3D, el rig y todas las animaciones; se reembolsa si falla. La CLI sale con 3. |
| 400 | bad_type, bad_facing, unknown_animation | Una opción no es de las que conoce la API. afk-rig types enumera los tipos y las animaciones. |
| 400 | missing_image | Se pidió un personaje sin imagen. |
| 413 | too_large | El archivo pesa más de 200 MB, o su malla es demasiado detallada para riggearla (unos 5 millones de vértices como máximo); para un personaje, la imagen pesa más de 20 MB. |
| 415 | unsupported_format | No es un .glb, un .gltf con todo incrustado ni un .fbx (para un personaje: no es PNG, JPEG ni WebP). |
| 422 | unreadable_model | El archivo no se pudo leer como modelo 3D. |
| 429 | rate_limited | Demasiados rigs en curso o iniciados en esta hora, demasiadas peticiones en este minuto, o un rig descargado demasiadas veces en esta hora (el campo reason dice cuál). Espera retry_after segundos; la CLI y el cliente lo hacen solos con los rigs y las peticiones. |
| 409 | not_ready | Se descargó antes de que terminara el rig. Consulta hasta que su estado sea succeeded. |
| 410 | expired | Pasaron sus 24 horas para descargarlo. Vuelve a riggearlo (un re-rig es gratis). |
Cuando un rig falla
Un trabajo que se aceptó pero no se pudo riggear termina con status: "failed" y uno de estos en error.code. No se cobra.
| unriggable | La IA no encontró en el modelo un cuerpo que riggear. |
|---|---|
| content_not_allowed | El modelo no pasó la comprobación de contenido para adultos por la que pasa todo rig en afk.ai. |
| rig_failed | Algo salió mal en nuestra GPU. Vuelve a intentarlo. |
| no_model | Un personaje: no se pudo crear un modelo 3D a partir de la imagen. Prueba con una imagen más clara de un personaje entero. |
Límites#
| Entrada | .glb, .gltf (con sus buffers y texturas incrustados) o .fbx. Las mallas comprimidas con Draco o meshopt aún no son compatibles. |
|---|---|
| Tamaño del modelo | Archivos de hasta 200 MB, texturas incluidas, con hasta unos 5 millones de vértices |
| Imágenes | Para personajes: PNG, JPEG o WebP, de hasta 20 MB, un solo personaje, entero, sobre un fondo liso. Los personajes cuentan para los mismos límites de concurrencia y frecuencia que los rigs. |
| Concurrencia | 2 rigs a la vez por cuenta; la CLI espera a que haya un hueco |
| Frecuencia | 100 rigs iniciados por hora |
| Peticiones | 120 por minuto por cuenta para el estado, la cuenta y las descargas |
| Sin clave | 60 peticiones por minuto por dirección IP: los tipos de cuerpo y las peticiones sin clave o con una clave incorrecta |
| Descargas | El .glb de cada rig, 20 veces por hora |
| Resultados | Se pueden descargar durante 24 horas después de que termine el rig |
| Salida | glTF binario (.glb) con el esqueleto, los pesos de skin y los clips de animación. Las texturas y los materiales se conservan tal como estaban. Se importa en Unity (glTFast), Unreal, Godot, Blender y three.js. |
| Entrada ya riggeada | Se vuelve a riggear en la pose en que está; su esqueleto y sus animaciones anteriores se reemplazan |
| Licencia | Tu modelo sigue siendo tuyo. Los esqueletos y las animaciones son CC0, uso comercial incluido. |
Precios#
5¢ por rig, tarifa plana. Un rig es todo el resultado: esqueleto, pesos de skin y todas las animaciones del tipo de cuerpo. Un personaje creado a partir de una imagen cuesta 25¢. No se cobra por animación y no hay suscripción.
| por rig | $0.05 de créditos prepagados |
|---|---|
| gratis | 3 rigs al mes, compartidos con afk.ai/rig |
| con Pro | $10 en créditos que se añaden con cada Pro Pass ($29 por 30 días) y $10 con Lifetime ($85), ambos en afk.ai/lifetime, y que conservas. Los miembros con un Lifetime anterior o el Lifetime de la app para móvil reciben en cambio $10 en rigs al mes (200) después de los gratis, antes de tus créditos |
| re-rigs | El mismo modelo otra vez ese mes (otro tipo, otra orientación o un reintento): 3 más, gratis |
| rigs fallidos | $0: el precio se retiene al empezar un rig y solo se cobra cuando el archivo está listo |
| personaje a partir de una imagen | 25¢ por personaje, de tus créditos: el modelo 3D, el rig y todas las animaciones; se reembolsa si falla. Los rigs gratis no cubren personajes |
| recargas | Desde $5 (100 rigs) en la página de tu cuenta; los créditos no caducan nunca |
Lo que cuesta un mes
| rigs / mes | pagas | animaciones |
|---|---|---|
| 3 | $0.00 | Todas, en cada rig |
| 100 | $4.85 | Todas, en cada rig |
| 1,000 | $49.85 | Todas, en cada rig |
| 10,000 | $499.85 | Todas, en cada rig |
Comparada con otras API de rigging#
El precio de pago por uso más bajo de todas las API de rigging que encontramos. Precios de API publicados, con los créditos convertidos a dólares según los planes normales de cada proveedor. Ludo.ai es más barata para un rig sin animaciones si pagas un año por adelantado; un humanoide con diez animaciones cuesta menos aquí que en cualquier otra API cuyo precio calculamos. Los cálculos están en nuestra comparativa de precios de API de rigging automático.
| api | por rig | animaciones | tipos de cuerpo | facturación |
|---|---|---|---|---|
| afk.ai | 5¢ | Todas, incluidas (900+ entre todos los tipos de cuerpo) | Humanoides, animales, aves, dragones, dinosaurios, arañas, serpientes, peces y más | Créditos prepagados, sin suscripción |
| Ludo.ai | 3¢ a 5¢ | 1.5¢ a 2.5¢ cada una | Cualquier forma; las animaciones predefinidas son para humanoides | Suscripción Pro o Studio ($50 al mes, o $420 o $3,600 al año) |
| Meshy | 6.25¢ a 10¢ | 3.75¢ a 6¢ cada una (una caminata y una carrera vienen con el rig) | Solo humanoides | Plan de pago, desde $20 al mes |
| Uthana | 15¢ | Se cobran aparte | Humanoides | Pago por uso |
| Tripo | 25¢ | 10¢ cada una | Bípedos, cuadrúpedos, criaturas de seis y ocho patas, aves, serpientes, criaturas marinas | Pago por uso, desde $1 |
| Anything World | Por créditos, consulta sus precios | Tiene un endpoint para riggear y animar | Humanoides, cuadrúpedos, aves, peces y más | Asignación mensual gratis, luego créditos |
| Mixamo | Gratis, pero no encontramos una API pública | Biblioteca humanoide | Solo humanoides | Gratis con un Adobe ID |
Precios comprobados en octubre de 2026 en las páginas de cada proveedor, solo planes normales (sin ofertas para nuevos usuarios): Ludo.ai, API de Meshy, Planes de Meshy, Uthana, Tripo, Anything World, Preguntas frecuentes de Mixamo. Cambian; compruébalos antes de decidir.
Preguntas frecuentes#
¿Es la API de rigging más barata?
En pago por uso, sí: 5¢ por rig es el precio más bajo que encontramos sin suscripción (Uthana cuesta 15¢ y Tripo 25¢). Los planes anuales de Ludo.ai son más baratos por rig sin animaciones, de 3¢ a 3.5¢ pagando un año por adelantado, pero sus animaciones se cobran aparte: un humanoide con diez animaciones cuesta allí unos 18¢ o más, y aquí 5¢. La comparativa completa, con fuentes, está en nuestro artículo de precios de API de rigging automático.
¿Puedo empezar con una imagen en lugar de un modelo 3D?
Sí. Envía una imagen de un personaje y una sola llamada crea con ella un modelo 3D texturizado y lo riggea con todas las animaciones de su tipo de cuerpo, en unos 2 a 3 minutos. Son 25¢ por personaje, de tus créditos: el modelo 3D, el rig y todas las animaciones; se reembolsa si falla. Los rigs gratis no cubren personajes. Funciona mejor una imagen clara de un solo personaje, entero, sobre un fondo liso. Más en nuestro artículo sobre la API de imagen a personaje riggeado.
¿Qué incluye un rig?
Todo lo que necesitas para animar el modelo: el esqueleto, los pesos de skin y todas las animaciones que tenemos para su tipo de cuerpo, en un GLB. No se cobra nada extra por animación. Si el primer resultado no es correcto, puedes volver a riggear el mismo modelo hasta 3 veces más gratis.
¿Cómo funcionan los rigs gratis?
Cada cuenta tiene 3 rigs gratis al mes, los mismos que en el sitio web. Después, los rigs se pagan con créditos prepagados, a 5¢ cada uno. Como en el plan gratis del sitio web, un rig gratis incluye las animaciones gratis, pero no las doradas. Un rig pagado con créditos las incluye todas, igual que cada rig de una cuenta con un plan de pago de afk.ai. Si pides una animación dorada por su nombre, el rig se paga con tus créditos y conservas tu rig gratis.
¿Hay suscripción?
No. Recargas créditos cuando los necesitas, desde $5, y nada se renueva. Los créditos no caducan.
¿Pro incluye crédito de la API?
Sí. Cada Pro Pass de afk.ai ($29 por 30 días) añade $10 a tus créditos de la API, y Lifetime ($85) añade $10. Funcionan como los créditos que compras: no caducan y siguen ahí cuando termina un Pro Pass. Los miembros con un Lifetime anterior o el Lifetime de la app para móvil reciben en cambio $10 de crédito de la API cada mes: 200 rigs, que se usan después de los rigs gratis y antes de tus créditos prepagados. Ese crédito es para rigs, no para personajes a partir de imágenes, se renueva el día 1 y no se acumula. La página de tu cuenta muestra lo que te queda.
¿Cuánto tarda un rig?
Normalmente de 1 a 2 minutos en nuestros servidores. La API es asíncrona: subes el modelo, recibes un id y lo consultas hasta que el GLB riggeado está listo. La CLI espera por ti.
¿Qué envío y qué recibo?
Envías un GLB, glTF o FBX y el tipo de cuerpo. Recibes un glTF binario (GLB) estándar con el esqueleto, los pesos de skin y las animaciones, que se importa en Unity (con glTFast), Unreal, Godot, Blender y three.js.
¿Puede usarla mi agente de IA?
Sí. El paquete afk-rig también es un servidor MCP, así que Claude Code, Cursor, Windsurf, Claude Desktop y otros clientes MCP tienen el rigging como herramienta. Los agentes que solo tienen una terminal pueden ejecutar la CLI.
¿Puedo usar los modelos riggeados con fines comerciales?
Sí. Tu modelo sigue siendo tuyo, y las animaciones son CC0 (dominio público), así que pueden ir en juegos y apps comerciales.
¿Dónde consigo una clave de API?
Inicia sesión en afk.ai y crea una en la página de tu cuenta, en Claves de API. La clave solo se muestra una vez, así que guárdala en un lugar seguro; puedes revocarla y crear otra cuando quieras.