一键导入
unity-shared
unity-cli 共通ルール。全 unity-* スキルが自動ロードする前提条件。Use as prerequisite for any unity-* skill (verification sequence, fallback order, security policy).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
unity-cli 共通ルール。全 unity-* スキルが自動ロードする前提条件。Use as prerequisite for any unity-* skill (verification sequence, fallback order, security policy).
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Unity API の探索と実行。u api schema で検索、u api call で任意の public static メソッドを呼ぶ。 Use for: "Unity API 呼び出し", "u api call", "schema 検索", "CLI 非対応操作のフォールバック"
アセット管理ワークフロー。依存関係調査、参照整合性チェック、パッケージ管理。 Use for: "アセット依存", "参照切れ", "パッケージ管理", "不要アセット"
ビルドワークフロー。検証 → 設定確認 → ビルド実行 → エラー対応。 Use for: "ビルド", "ビルド実行", "プラットフォーム設定", "ビルドエラー"
ランタイムエラー・NullReference・コンソールログの調査ワークフロー。 Use for: "エラー調査", "NullReference", "デバッグ", "コンソール確認", "ログ確認"
パフォーマンス計測ワークフロー。プロファイリング、GC 分析、最適化提案。 Use for: "パフォーマンス", "プロファイル", "FPS", "GC", "最適化", "ボトルネック"
シーン構築ワークフロー。オブジェクト配置、コンポーネント設定、Prefab化、シーン保存。 Use for: "シーン構築", "オブジェクト配置", "Prefab化", "コンポーネント設定"
| name | unity-shared |
| description | unity-cli 共通ルール。全 unity-* スキルが自動ロードする前提条件。Use as prerequisite for any unity-* skill (verification sequence, fallback order, security policy). |
| license | MIT |
| compatibility | Requires `u` CLI (unity-cli) and active Unity Editor via Relay Server. |
| metadata | {"openclaw":{"category":"game-development","user-invocable":false,"requires":{"bins":["u"]},"cliHelp":"u --help"}} |
全 unity-* スキルが従う共通ルール。
unity-* スキル経由で u コマンドを呼ぶ際は 必ず -i <instance> を付ける。default インスタンスに依存しない。
u -i <instance> refresh # OK
u refresh # NG (skill 経由では使わない)
<instance> はユーザーから渡される or 親セッションが指定する値で置き換える。u instances で接続中 Unity 一覧を確認できる。本ドキュメント以下のサンプルでは <instance> をそのまま使うが、実行時は具体名 (例: TestProject) に置換する。
理由: 複数 Unity 接続環境で誤ったインスタンスへコマンドを送るリスクと、subagent 間の挙動を default 依存にしないため。
u instances # 接続中 Unity 一覧
u -i <instance> state # 特定エディタの状態
接続不可時: unity-relay --port 6500 で Relay 起動。
コード変更後に毎回実行する検証シーケンス。順序厳守 (clear は refresh の前に置く。後にすると refresh の診断ログを消してしまう)。
# 1. 既存ログをクリア (refresh の診断を残すため refresh の前)
u -i <instance> console clear
# 2. AssetDatabase リフレッシュ (コンパイルトリガー)
u -i <instance> refresh
# 3. isCompiling が false になるまでポーリング (2秒間隔, 最大30秒)
for _ in $(seq 1 15); do
u -i <instance> state --json | jq -e '.isCompiling == false' >/dev/null && break
sleep 2
done
# 4. Error/Warning 取得 (--count は deprecated. head -N を使う)
u -i <instance> console get -l E,W | head -50
u state --json の出力例 (抜粋, キーはトップレベル):
{"isCompiling": false, "isPlaying": false, "isPaused": false}
Unity はインクリメンタルコンパイルのため、ソース未変更で refresh を呼んでも再コンパイルは走らず、過去の Warning は再出力されない。console clear 後に空が返っても以下のいずれかを意味する:
直前にソース編集があった文脈なら「クリーン」扱いで OK。過去の警告を確実に確認したい場合は対象ファイルの touch (touch Assets/.../Foo.cs) で mtime を更新してから refresh するか、Library/ScriptAssemblies/ をクリアする。
CLI 非対応の操作を行う場合:
1. u -i <instance> <既存コマンド> 最優先
2. u -i <instance> api call Type Method 5,243 メソッド対応
3. YAML 直接編集 最終手段 (.meta インポート設定等)
u api call は UnityEngine / UnityEditor のみ許可