Besty0728/Unity-Skills
AI automation skills specifically designed for Unity
UnitySkills – AI‑driven REST API for Unity Editor Automation
What it is – UnitySkills 是一个 Unity 2022.3+ 插件,它运行一个本地 HTTP 服务器,将 Skills(预先编写的编辑器指令)作为 REST 端点暴露出来。外部 AI‑assistant(Claude Code, Antigravity, Codex, Cursor, OpenCode, 等)可以代表用户调用这些端点来创建、修改或删除场景、prefab、asset、以及 .meta 文件。
Core ideas
| Layer | What it does |
|---|---|
| Skills catalog | 784 个 “Skill” 模块,分为 25 个建议的设计模块(例如:UI, Netcode, XR, ShaderGraph)。每个 Skill 是一个小型、有类型的操作,它知道其所需的参数、风险等级 (RiskLevel) 和是否会改变场景或 assets。 |
| REST interface | POST /skill/{name} (single) 或 POST /skills/batch (transactional)。支持查询参数 ?mode=dryRun 或 ?mode=plan 来预览验证错误和影响评估,而无需触及项目。 |
| Permission system | 三种模式 – Approval, Auto, Bypass – 镜像了 Claude Code 的权限模型。每个 Skill 的元数据 (RiskLevel, MayEnterPlayMode, 等) 会控制执行。可选的 ConfirmationToken 为高风险调用添加了第二次用户批准。 |
| Audit & rollback | 每次请求、授权、撤销和被拦截的调用都会被追加到 Library/UnitySkillsAudit.jsonl(在 1 MiB 时轮转)。每个文件更改的快照被内容寻址存储在 Library/UnitySkills/ 下,允许通过一个有类型的 workflow_undo_task 来回滚单个操作,即使在 domain reload 之后。 |
| Batch transactions | POST /skills/batch 可以是 fail‑fast 或 continueOnError,支持 $ref 来复用之前的步骤输出,并且可以在失败时自动回滚。?diff=1 标志位返回整个 batch 的净文件系统差异 (diff)。 |
| Long‑lived connections | 可配置的超时时间(默认 15 min),在 domain reload 之后自动重连,以及在 Unity 重新编译脚本时提供重试提示。 |
| Anti‑hallucination guardrails | 每个 Skill 都附带 “DO NOT” 列表和路由规则,在调用到达编辑器之前,拒绝掉未知指令或格式错误的参数。 |
How it works (high‑level flow)
- Install the Unity package 通过 Unity Package Manager 使用 Git URL(稳定版、beta 版或带标签的版本)进行安装。该插件会添加
Window → UnitySkills面板,并在Library/UnitySkills下生成服务器代码。 - Start the server 从面板中启动(或使用快捷键 Alt+Shift+U)。服务器会在任何 domain reload 之后自动重启。
- Configure an AI terminal – 在面板的 AI Config 标签页中选择 Claude Code, Antigravity, Codex, Cursor, 或 OpenCode,并点击 Install。安装程序会将一个模板 skill‑bundle (
unity‑skills~/) 复制到终端的 skill 目录,并写入一个agent_config.json来识别 AI agent。 - The AI calls a Skill – 例如
POST /skill/createGameObject?mode=plan配合 JSON body `{
相關
- 專案
- 專案
- 專案
- 專案
- 專案