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)

readsearchfind_symbolfind_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

unitydlspd は 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_ROOTAssets/Packages/ を含むディレクトリ自動検出
UNITY_CLI_HOSTUnity Editor ホストlocalhost
UNITY_CLI_PORTUnity Editor ポート6400
UNITY_CLI_TIMEOUT_MSコマンドタイムアウト (ms)30000
UNITY_CLI_LSP_MODELSP モード (off / auto / required)off
UNITY_CLI_TOOLS_ROOTダウンロード済みツールのルートディレクトリOS 既定

旧 MCP 接頭辞の環境変数は非対応です。UNITY_CLI_* のみ使用してください。

ドキュメント

ライセンス

MIT。再配布時の帰属表示テンプレートは ATTRIBUTION.md を参照してください。