快速入門#
從登入到拿到綁好骨骼的模型,只需三步。需要 Node.js 18.17 或更新版本。
- 01
建立金鑰
用 Google 登入你的 afk.ai 帳號,在 API keys(API 金鑰)下建立一個。它以
afk_開頭,只會顯示一次;隨時可以在那裡撤銷。不要把它放進網頁或讓人下載的 App 裡。 - 02
放進環境變數
shellexport AFK_API_KEY=afk_... # from afk.ai/account#api - 03
幫模型綁骨
npx afk-rig knight.glb --type human -o knight.rigged.glb綁骨在我們的 GPU 上執行,通常需要 1 到 2 分鐘;CLI 和用戶端會等它完成。使用 MCP 用戶端時,可以這樣問:「把 models/fox.glb 當作四足動物綁骨」。
從圖片生成#
還沒有 3D 模型?那就送出一張角色圖片:一次呼叫會根據圖片生成帶貼圖的 3D 模型,然後為它綁骨並加上該體型的全部動畫,都在一個 GLB 裡,約需 2 到 3 分鐘。
每個角色從你的點數中扣 25¢:包含 3D 模型、綁骨和全部動畫;失敗則退款。免費綁骨不包含角色生成。任務的 billing 會顯示扣款狀態:執行時為 held,之後是 charged 或 refunded;CLI 會印出扣了多少以及剩餘的點數。
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.最好是一張清晰、光線充足的圖片,只有一個完整的角色,背景單純。模型的貼圖(顏色、金屬度和粗糙度)會配合圖片生成;閒置一段時間後的第一個請求可能需要最多 5 分鐘,因為 GPU 需要啟動。使用 MCP 用戶端時,可以這樣問:「用 art/knight.png 生成一個綁好骨骼的角色」。更多內容請見我們的圖片轉綁骨角色 API 教學。
體型#
用 --type 傳入其中一種。afk.ai 會套用為它打造的骨架、計算蒙皮權重,並加上為該骨架製作的全部動畫:所有體型共 933 個。afk-rig types <type> 會列出某個體型的動畫。

人、機器人、殭屍,任何用兩條腿站立的角色。含手指。

狗、貓、狐狸、狼

馬、鹿、牛

翅膀加兩條腿

翅膀加四條腿

直立,帶尾巴

六條或八條腿,沒有翅膀

沒有腿,一條長長的脊椎

魚、鯊魚、鯨
黃蜂、蜜蜂、蜻蜓
用粗壯的後腿跳躍
青蛙和蟾蜍
烏龜和陸龜
飄浮,沒有腿
箱子、旗幟、物品
CLI#
用 npx afk-rig 執行,或用 npm i -g afk-rig 全域安裝。進度輸出到 stderr,寫出的檔案路徑輸出到 stdout,方便在腳本中串接使用。
| 指令 | 用途 |
|---|---|
| afk-rig <model> [options] | 幫模型綁骨並寫出綁好骨骼的 .glb |
| afk-rig character <image> [options] | 從圖片生成綁好骨骼、帶動畫的角色並寫出 .glb(25¢) |
| afk-rig status <rig id> | 查詢綁骨狀態 |
| afk-rig download <rig id> -o <file> | 下載已完成的綁骨結果(24 小時內) |
| afk-rig account | 本月剩餘免費綁骨次數、你方案的每月額度和 API 點數 |
| afk-rig types [type] | 體型,以及某個體型的動畫 |
| afk-rig mcp | 在 stdio 上以 MCP 伺服器執行 |
選項
| -t, --type <type> | 模型是什麼:human(預設)或其他體型 |
|---|---|
| -a, --animations <list> | all(預設)、none,或用逗號分隔的動畫名稱 |
| --facing <degrees> | auto(預設)、0、90、180 或 270:模型繞向上軸旋轉的角度 |
| -o, --out <file> | 預設:與原檔案同目錄的 <模型或圖片>.rigged.glb |
| --no-wait | 啟動綁骨,印出它的 id 後結束 |
| --json | 輸出 JSON |
結束代碼
| 0 | 綁骨成功;寫出的檔案路徑在 stdout 上 |
|---|---|
| 3 | 免費綁骨次數和點數都已用完 |
| 1 | 其他情況(訊息會輸出到 stderr) |
Node.js#
同一個套件也是一個帶型別定義的用戶端:import { AfkRig } from 'afk-rig'。new AfkRig() 會讀取 AFK_API_KEY,也可以傳入 { apiKey }。
| 方法 | 回傳值 |
|---|---|
| rig(model, options) | 上傳、等待並下載,一次呼叫完成;如果提供了 options.output,就寫入該檔案。最後回傳 { job, glb } |
| startRig(model, options) | 上傳並回傳排隊中的任務。會送出 Idempotency-Key,所以重試上傳絕不會啟動第二次綁骨 |
| character(image, options) | 輸入圖片,輸出綁好骨骼的角色:和 rig() 一樣,最後回傳 { job, glb } |
| startCharacter(image, options) | 上傳圖片並回傳排隊中的任務;之後和綁骨一樣使用 waitForRig 和 downloadRig |
| getRig(id) | 任務目前的狀態 |
| waitForRig(id, { onUpdate }) | 輪詢直到成功;失敗時拋出錯誤 |
| downloadRig(id) | 以 Uint8Array 回傳綁好骨骼的 .glb |
| account() | 剩餘免費綁骨次數、點數、限制和最近的綁骨紀錄 |
| types() | 體型及其動畫 |
逐步操作
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 hours錯誤為 AfkRigError,包含 HTTP status、來自下表的 code,以及觸發速率限制時以秒為單位的 retryAfter。
MCP 伺服器#
npx -y afk-rig mcp 會在 stdio 上以 MCP 伺服器執行,這樣 Claude Code、Cursor、Windsurf、Claude Desktop 和其他 MCP 用戶端就能幫它們生成的模型綁骨。在它的環境變數中提供 AFK_API_KEY。
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_..." }
}
}
}工具
| rig_model | 幫模型檔案綁骨,並把 .glb 寫在同一個資料夾 |
|---|---|
| image_to_character | 從圖片生成綁好骨骼、帶動畫的角色,並把 .glb 寫在同一個資料夾 |
| get_account | 本月剩餘免費綁骨次數、你方案的每月額度和 API 點數 |
| list_body_types | 體型及其動畫 |
| rig_status | 依 id 查詢綁骨狀態 |
綁骨生命週期#
綁骨是一個非同步任務。上傳模型後會立刻取得它的 id;它會依序經過以下狀態,CLI 和用戶端會替你輪詢。
stage:prepare → skeleton (→ retry) → fit → weights → skinstage:animations付費綁骨執行時 billing.state 為 held,檔案就緒後為 charged,失敗則為 refunded,所以失敗的綁骨不花一毛錢。billing.charge 說明付費方式:free、rerig、credits 或 character。從圖片生成的角色在進入綁骨階段之前處於 generating(正在生成它的 3D 模型)。一個已完成的任務,用 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"
}
}錯誤#
被 API 拒絕的請求會回傳 HTTP 狀態碼和一個 code;這些請求不收費。
| 狀態碼 | code | 說明 |
|---|---|---|
| 401 | missing_api_key | 沒有傳送金鑰。請設定 AFK_API_KEY。 |
| 401 | invalid_api_key | 金鑰錯誤或已被撤銷。請在你的帳號頁面建立新的金鑰。 |
| 402 | insufficient_credits | 本月的免費綁骨次數和方案額度都已用完,點數也不足。不管有沒有免費綁骨次數,生成角色一律需要點數:每個角色從你的點數中扣 25¢:包含 3D 模型、綁骨和全部動畫;失敗則退款。CLI 會以結束代碼 3 結束。 |
| 400 | bad_type, bad_facing, unknown_animation | 有個選項 API 不認得。afk-rig types 會列出體型和動畫。 |
| 400 | missing_image | 請求生成角色,卻沒有提供圖片。 |
| 413 | too_large | 檔案超過 200 MB,或網格太精細無法綁骨(最多約 500 萬個頂點);如果是角色,則是圖片超過 20 MB。 |
| 415 | unsupported_format | 不是 .glb、資源全部內嵌的 .gltf 或 .fbx(如果是角色:不是 PNG、JPEG 或 WebP)。 |
| 422 | unreadable_model | 無法將檔案讀取為 3D 模型。 |
| 429 | rate_limited | 正在執行或本小時已啟動的綁骨太多、本分鐘的請求太多,或者某次綁骨在本小時內下載次數過多(reason 會說明是哪一種)。請等待 retry_after 秒;遇到綁骨和請求的限制時,CLI 和客戶端會自動等待。 |
| 409 | not_ready | 在綁骨完成前就請求了下載。請輪詢,直到狀態變為 succeeded。 |
| 410 | expired | 24 小時的下載期限已過。請重新綁骨(重新綁骨免費)。 |
綁骨失敗時
已被接受但無法綁骨的任務,最終會以 status: "failed" 結束,並在 error.code 中給出以下之一。不收費。
| unriggable | AI 在模型中找不到可以綁骨的身體。 |
|---|---|
| content_not_allowed | 模型未通過成人內容檢查,afk.ai 上的每次綁骨都要經過這項檢查。 |
| rig_failed | 我們的 GPU 出了問題,請重試。 |
| no_model | 角色:無法從圖片生成 3D 模型。請換一張更清晰、只有一個完整角色的圖片。 |
限制#
| 輸入 | .glb、.gltf(緩衝區和貼圖已內嵌)或 .fbx。目前還不支援 Draco 和 meshopt 壓縮的網格。 |
|---|---|
| 模型大小 | 檔案最大 200 MB(含貼圖),最多約 500 萬個頂點 |
| 圖片 | 用於生成角色:PNG、JPEG 或 WebP,最大 20 MB,只有一個完整的角色,背景單純。角色生成與綁骨共用同樣的同時執行數和速率限制。 |
| 同時執行數 | 每個帳號同時執行 2 個綁骨任務;CLI 會等到有空位 |
| 速率 | 每小時最多啟動 100 次綁骨 |
| 請求 | 每個帳號每分鐘 120 次,用於查詢狀態、帳號和下載 |
| 無金鑰 | 每個 IP 位址每分鐘 60 次請求:查詢體型,以及缺少金鑰或金鑰錯誤的請求 |
| 下載 | 每次綁骨的 .glb 每小時最多下載 20 次 |
| 結果 | 綁骨完成後 24 小時內可下載 |
| 輸出 | glTF 二進位檔(.glb),包含骨架、蒙皮權重和動畫片段。貼圖和材質保持原樣。可匯入 Unity(glTFast)、Unreal、Godot、Blender 和 three.js。 |
| 已綁骨的輸入 | 依目前顯示的姿勢重新綁骨;原有的骨架和動畫會被取代 |
| 授權 | 你的模型仍歸你所有。骨架和動畫採用 CC0 授權,可用於商業用途。 |
價格#
每次綁骨均一價 5¢。一次綁骨就是全部產出:骨架、蒙皮權重和該體型的全部動畫。從圖片生成角色為 25¢。不依動畫數量收費,也不用訂閱。
| 每次綁骨 | $0.05,從預付點數中扣除 |
|---|---|
| 免費 | 每月 3 次,與 afk.ai/rig 共用 |
| Pro 使用者 | 每個 Pro Pass(30 天 $29)為你增加 $10 的點數,Lifetime($85)增加 $10,皆在 afk.ai/lifetime 購買,永久歸你。持有早期 Lifetime 或手機 App Lifetime 的使用者則在免費次數用完後,每月有 $10 的綁骨額度(200 次),先於你的點數使用 |
| 重新綁骨 | 當月再次綁同一個模型(換體型、換朝向或重試):另有 3 次免費 |
| 失敗的綁骨 | $0:綁骨開始時先保留費用,檔案就緒後才扣款 |
| 從圖片生成角色 | 每個角色從你的點數中扣 25¢:包含 3D 模型、綁骨和全部動畫;失敗則退款。免費綁骨不包含角色生成 |
| 儲值 | 在你的帳號頁面儲值,$5 起(100 次綁骨);點數永不過期 |
每月花費
| 每月綁骨次數 | 你要付 | 動畫 |
|---|---|---|
| 3 | $0.00 | 全部,每次綁骨都包含 |
| 100 | $4.85 | 全部,每次綁骨都包含 |
| 1,000 | $49.85 | 全部,每次綁骨都包含 |
| 10,000 | $499.85 | 全部,每次綁骨都包含 |
與其他綁骨 API 比較#
我們找到的所有綁骨 API 中,依用量計費的價格最低。以下是公開的 API 價格,點數已依各家一般方案換算成美元。如果預付一年,Ludo.ai 的單純綁骨更便宜;而一個帶十個動畫的人形角色,在這裡比我們算過的任何其他 API 都便宜。計算過程見我們的自動綁骨 API 價格比較。
| API | 每次綁骨 | 動畫 | 體型 | 計費方式 |
|---|---|---|---|---|
| afk.ai | 5¢ | 全部包含(各體型共 900+ 個) | 人形、動物、鳥、龍、恐龍、蜘蛛、蛇、魚等 | 預付點數,不用訂閱 |
| Ludo.ai | 3¢ 到 5¢ | 每個 1.5¢ 到 2.5¢ | 任何形狀;現成動畫只適用於人形 | Pro 或 Studio 訂閱(每月 $50,或每年 $420 或 $3,600) |
| Meshy | 6.25¢ 到 10¢ | 每個 3.75¢ 到 6¢(綁骨附帶一個行走和一個奔跑) | 僅限人形 | 付費方案,每月 $20 起 |
| Uthana | 15¢ | 另外計價 | 人形 | 依用量計費 |
| Tripo | 25¢ | 每個 10¢ | 雙足、四足、六足和八足生物、鳥、蛇、海洋生物 | 依用量計費,$1 起 |
| Anything World | 以點數計費,詳見其價格頁面 | 提供綁骨加動畫的 API 端點 | 人形、四足動物、鳥、魚等 | 每月免費額度,之後以點數計費 |
| Mixamo | 免費,但未找到公開 API | 人形動畫庫 | 僅限人形 | 免費,需 Adobe ID |
價格於 2026年10月 查核,來自各家自己的頁面,僅計一般方案(不含新使用者優惠):Ludo.ai、Meshy API、Meshy 方案、Uthana、Tripo、Anything World、Mixamo FAQ。價格會變動,做決定前請先確認。
常見問題#
它是最便宜的綁骨 API 嗎?
依用量計費的話,是的:每次綁骨 5¢ 是我們找到不需訂閱的最低價(Uthana 為 15¢,Tripo 為 25¢)。Ludo.ai 的年繳方案單純綁骨更便宜,預付一年為 3¢ 到 3.5¢,但動畫要額外收費:一個帶十個動畫的人形角色,在那裡約 18¢ 起,在這裡是 5¢。完整的比較和來源見我們的自動綁骨 API 價格文章。
可以從圖片開始,而不是 3D 模型嗎?
可以。送出一張角色圖片,一次呼叫就會根據圖片生成帶貼圖的 3D 模型,並為它綁骨、加上該體型的全部動畫,約需 2 到 3 分鐘。每個角色從你的點數中扣 25¢:包含 3D 模型、綁骨和全部動畫;失敗則退款。免費綁骨不包含角色生成。最好用一張清晰的圖片,只有一個完整的角色,背景單純。更多內容請見我們的圖片轉綁骨角色 API 文章。
一次綁骨包含什麼?
幫模型做動畫所需的一切:骨架、蒙皮權重,以及我們為該體型準備的全部動畫,都在一個 GLB 裡。不依動畫數量額外收費。如果第一次的結果不理想,同一個模型最多還可以免費重新綁骨 3 次。
免費綁骨怎麼算?
每個帳號每月有 3 次免費綁骨,與網站上相同。之後,每次綁骨從預付點數中扣 5¢。和網站的免費方案一樣,免費綁骨包含免費動畫,但不含金色動畫。用點數支付的綁骨包含全部動畫,付費 afk.ai 方案帳號的每次綁骨也一樣。如果指名要某個金色動畫,這次綁骨就會從你的點數中扣款,免費綁骨次數則會保留。
需要訂閱嗎?
不需要。需要時再儲值點數,$5 起,不會自動續費。點數不會過期。
Pro 包含 API 額度嗎?
包含。每個 afk.ai Pro Pass(30 天 $29)都會為你的 API 點數增加 $10,Lifetime($85)則增加 $10。這些點數和你購買的點數一樣:不會過期,Pro Pass 到期後也會保留。持有早期 Lifetime 或手機 App Lifetime 的使用者則是每月有 $10 的 API 額度,即 200 次綁骨,在免費綁骨之後、預付點數之前使用。這部分額度只能用於綁骨,不能用於從圖片生成角色;每月 1 日重新計算,用不完不會累積到下個月。你的帳號頁面會顯示還剩多少。
一次綁骨需要多久?
在我們的伺服器上通常約 1 到 2 分鐘。API 是非同步的:你上傳模型,取得一個 id,然後查詢狀態,直到綁好骨骼的 GLB 就緒。CLI 會替你等待。
我要送出什麼,會得到什麼?
送出 GLB、glTF 或 FBX 以及體型。你會得到一個標準的 glTF 二進位檔(GLB),包含骨架、蒙皮權重和動畫,可匯入 Unity(使用 glTFast)、Unreal、Godot、Blender 和 three.js。
我的 AI 代理能用嗎?
可以。afk-rig 套件同時也是 MCP 伺服器,所以 Claude Code、Cursor、Windsurf、Claude Desktop 和其他 MCP 用戶端都能把綁骨當作工具使用。只有 shell 的 AI 代理可以執行 CLI。
綁好骨骼的模型可以商用嗎?
可以。你的模型仍歸你所有,動畫採用 CC0(公眾領域)授權,可以用在商業遊戲和 App 中。
在哪裡取得 API 金鑰?
登入 afk.ai,在帳號頁面的 API keys(API 金鑰)下建立。金鑰只會顯示一次,請妥善保存;你可以隨時撤銷並建立新的。