用途:在不打开 Blender 的情况下,用一句文本请求为已绑定的 .fbx/.gltf 角色生成动画;也可无人值守地按 API key 运行动画循环,或在服务器执行前审查 LLM 生成的 bpy 脚本,以及运维、调试本地 Animato 服务及其 /api/* 端点。绑定制作、动作捕捉重定向、实时游戏特效和浏览器播放不属于本技能范围。
主要能力:本地模式默认执行上传 → /api/prompt → 一次 LLM 调用 → 静态门禁 → /api/run,并把提示词与生成脚本写入 --out-dir(默认 animato-out/),便于失败复盘。门禁会拒绝过时 Blender API、缺少关键帧、缺少帧范围、缺少导出、遗漏 export_animations=True / bake_anim=True、格式不匹配以及 subprocess/os.system/eval 等宿主调用。
使用方式:在 Animato 检出目录运行 uv run fastapi run main.py 启动 UI 与 API(:8000);用 python3 .agent-skills/animato/scripts/animato_agent.py doctor 检查服务可达性、密钥存在性与门禁脚本。配置 ANIMATO_SERVER、ANIMATO_PROVIDER(gemini | openai)、ANIMATO_LLM_ENDPOINT、ANIMATO_MODEL。执行动画:export ANIMATO_API_KEY=... 后运行 python3 .agent-skills/animato/scripts/animato_agent.py animate --file "./X Bot.fbx" --message "wave hello with the right arm, 2 seconds"。--dry-run 可在执行前停止;--mode server 会让 /api/chat 在门禁前执行脚本。可用 validate_bpy_script.py 单独校验脚本,用 remove 删除错误片段,用 selftest.py 离线验证整个循环。
限制:.obj 无骨架不能动画;生成脚本会原地覆盖已上传模型,源文件不可替代时先复制;/api/run 即使脚本失败也返回 HTTP 200,需按 ok 分支并确认输出文件确实含动画;门禁是静态的,通过门禁不等于动画可用;/api/run 与 /api/chat 属于本地远程代码执行面,仅限可信机器,不可无沙箱公开;自动运行每次动画只花一次推理。