unity-cli
May 11, 2026 · View on GitHub
English | 中文 | Français | Deutsch | Italiano | Español
unity-cli は、Claude Code から Unity Editor を直接 TCP で操作するための Rust 製 CLI です。
unity-mcp-server の後継として、Node.js + MCP からネイティブバイナリ中心の構成に再設計しました。
特徴
- Claude Code から、用途別スキルと typed コマンドで Unity を操作できます。
- シーン、アセット、コード、テスト、UI、Editor を含む
101個の Unity Tool API を利用できます。 - Unity 公式 C# リファレンス(UnityCsReference)を
unity-cli reference fetchでローカルキャッシュし、unity-csharp-referenceスキルから読み取り専用で参照できます。 - 単一バイナリで高速起動、低オーバーヘッドです。
仕組み
Claude Code
-> Skills (必要時に読み込み)
-> unity-cli
-> Unity Editor (TCP bridge)
read、search、find_symbol、find_refs など一部のコード系ツールは Unity 接続なしでローカル実行できます。
はじめ方
推奨: Claude Code プラグイン
Claude Code Marketplace から unity-cli プラグインをインストールします:
/plugin marketplace add akiojin/unity-cli
Marketplace プラグインがインストールするのはスキルのみです。
unity-cli バイナリ自体は、以下の手動手順のいずれかで別途導入してください。
Codex スキル
Codex でこのリポジトリを利用する場合、.codex/skills/ にスキルのシンボリックリンクが配置済みです。
リポジトリをクローンするだけで追加セットアップは不要です。
手動インストール
最新バイナリは GitHub Releases から取得できます。 Cargo を使う場合は、ローカル clone からインストールしてください:
git clone https://github.com/akiojin/unity-cli.git
cd unity-cli
cargo install --path .
Unity 側ブリッジパッケージ(いずれかを選択):
OpenUPM(推奨):
openupm add com.akiojin.unity-cli-bridge
Git URL(Unity Package Manager):
https://github.com/akiojin/unity-cli.git?path=UnityCliBridge/Packages/unity-cli-bridge
接続確認:
unity-cli system ping
managed バイナリの確認と更新:
unity-cli cli doctor
unity-cli cli install
unityd と lspd は daemon 起動時に managed unity-cli / C# LSP バイナリを自動更新します。
managed copy は UNITY_CLI_TOOLS_ROOT(未指定時は OS 既定の tools ディレクトリ)配下に配置され、確認プロンプトなしで更新されます。
スキル (13)
| カテゴリ | スキル |
|---|---|
| 導入 | unity-cli-usage |
| シーンとオブジェクト | unity-scene-create, unity-scene-inspect, unity-gameobject-edit, unity-prefab-workflow |
| アセット | unity-asset-management, unity-addressables |
| コード | unity-csharp-navigate, unity-csharp-edit |
| 実行時とテスト | unity-playmode-testing, unity-input-system, unity-ui-automation |
| エディター | unity-editor-tools |
クイック例
# 接続確認
unity-cli system ping
# シーン作成
unity-cli scene create MainScene
# raw ツール呼び出しで GameObject 作成
unity-cli raw create_gameobject --json '{"name":"Player"}'
# C# コード検索(ローカルツール)
unity-cli tool call search --json '{"pattern":"PlayerController"}'
# EditMode テスト実行
unity-cli tool call run_tests --json '{"mode":"editmode"}'
設定
| 変数 | 説明 | 既定値 |
|---|---|---|
UNITY_PROJECT_ROOT | Assets/ と Packages/ を含むディレクトリ | 自動検出 |
UNITY_CLI_HOST | Unity Editor ホスト | localhost |
UNITY_CLI_PORT | Unity Editor ポート | 6400 |
UNITY_CLI_TIMEOUT_MS | コマンドタイムアウト (ms) | 30000 |
UNITY_CLI_LSP_MODE | LSP モード (off / auto / required) | off |
UNITY_CLI_TOOLS_ROOT | ダウンロード済みツールのルートディレクトリ | OS 既定 |
旧 MCP 接頭辞の環境変数は非対応です。UNITY_CLI_* のみ使用してください。
ドキュメント
- コマンドとツールの一覧: docs/tools.md
- 開発フローと CI: docs/development.md
- 貢献ガイド: CONTRIBUTING.md
- リリース手順: RELEASE.md
- 帰属表示テンプレート: ATTRIBUTION.md
ライセンス
MIT。再配布時の帰属表示テンプレートは ATTRIBUTION.md を参照してください。