Agent Client Protocolを用いた
AIエージェントのエディタ組み込み実践

281 Views

November 08, 25

スライド概要

Unity AI 完全に理解した勉強会の登壇資料です。

profile-image

Annulus Gamesのエンジニアの部分。Author of LitMotion, Alchemy, Lua-CSharp, etc.

シェア

またはPlayer版

埋め込む »CMSなどでJSが使えない場合

ダウンロード

関連スライド

各ページのテキスト
1.

Agent Client Protocolを用いた AIエージェントのエディタ組み込み実践 > nuskey8/UnityAgentClient 2025/11/07 @DeNA Unity AI 完全に理解した勉強会 #Unity完全理解 1

2.

- @annulusgamesまたは@nuskey8 - 最近は@nuskey8の方がメインかも - 情報工学系の大学に通う学士2年です - RustとTypeScriptで色々作ってます(Unity…?) - draw(tokyo);#3に1FラウンジのVJとして参加しました - vjcode.devを使ったライブコーディング #Unity完全理解 # # 自己紹介 2

3.

# Unity AI、使ってますか? #Unity完全理解 3

4.

- Unity 6.2から提供される公式のAIツール - AIエージェントとしての「Assistant」 アセットを生成する「Generator」 推論エンジンの「Inference Engine」 がある - 詳しくはまっともぉんさんのLTで 説明がある、はず #Unity完全理解 # # Unity AIとは 4

5.

- ぶっちゃけ精度はあまり良くない - (少なくとも現時点では)実運用できるレベルには到底至らない - UI/UXもそこまで良くない - Domain Reloadと絶望的に相性の悪いワークフロー - Roslynを使ったシンタックスハイライトやコンパイルなど、技術的には面白いが… - 独自のポイント(トークンのようなもの)を消費する - Unity Cloudへの接続が必須 - GitHub CopilotやClaude Codeにお金を払っているのに わざわざ追加でお金を払うほどかというと… 5 . . . #Unity完全理解 # # 正直、かなり微妙

6.

- そもそもUnityとAIは噛み合わせが悪い - コードファーストなフロントエンドなどとは事情が違う - エディタ(GUI)前提のツールであるUnityは、AIの得意領域と重なっていない - もちろんコードを書くには便利だが、それならIDE/コードエディタでやればいい - 本当に必要なのは、自然言語をクエリとしたプロジェクトの解析機能なのでは…? - e.g. DeepWiki - エディタに組み込むからこそ、プロジェクト全てをコンテキストとして利用できる メリットを最大限に享受すべき #Unity完全理解 # # Unity+AIの組み合わせ 6

7.

- というものを作りました - Unityエディタ上で任意の AIエージェントを動かすエディタ拡張 - Gemini CLI、Claude Code、 Codex CLIなどのAIエージェントを バックエンドにして動作する - 組み込みのMCPサーバーによって エディタの情報の取得や操作を行う https: / / #Unity完全理解 # # UnityAgentClient github.com/nuskey8/UnityAgentClient 7

8.

# Demo #Unity完全理解 8

9.

- EditorWindowでAIエージェントにプロンプトを送る - Asset/GameObjectをドラッグ&ドロップすることで コンテキストとしてアタッチ - 組み込みのMCPサーバーを用いてエディタの解析・操作 (現在はConsoleのログ収集のみ) #Unity完全理解 # # 使い方 9

10.

- Zed(というRust実装のコードエディタ)では 任意のAIエージェントを組み込むことができる - これを実現するため、ZedがAgent Client間の 通信を標準化するJSON-RPCベースのプロトコル 「Agent Client Protocol」を提唱 - 既にGemini CLIが実験的なサポートを提供しているほか、 Claude CodeやCodexでもZedの提供するアダプタを 通じて利用できる - VSCodeにも対応がロードマップに挙げられており、 LSPのような立ち位置で標準化していきそうな雰囲気 10 ↔︎ #Unity完全理解 # # 仕組み (1/3)

11.

- ACPではJSON-RPCを用いてAgent-Client間の接続を行う - 初期化後はsession/newでセッションを作成し、 Agent側がsession/updateで進捗を通知する - Clientはファイルシステムやターミナルへのアクセスや 利用可能なMCPサーバーなどを提供できる - Transportは現状はstdioのみ、Streamable HTTPの 提案が進行中 - 正直、HTTP経由で接続する需要はあんまりなさそうな 気はする #Unity完全理解 # # 仕組み (2/3) 11

12.

- Agent Client ProtocolはRust、TypeScript、Kotlin向けの SDKを提供している - 残念ながらC#はない… - というわけで非公式SDKを作りました https: github.com/nuskey8/acp-csharp - これをベースに、EditorWindowとしてACPクライアントを実装している / / #Unity完全理解 # # 仕組み (3/3) 12

13.

- MCPは任意のサービスとAgentを繋ぐプロトコルであるのに対し、 ACPはコードエディタとAgentを繋ぐプロトコル - MCPと比べるとかなり地味… - MCPとは異なり、対象となるエディタの方を作る人は限られているので… - その意味では立ち位置は元となったLSP(Language Server Protocol)に近い - 現状公式のサポートがあるAgent/ClientはほぼGemini CLI/Zedのみだが、 少しずつサポートするものは増えていってる #Unity完全理解 # # MCPと何が違う? 13

14.

- UI/UX周りの完成度は当然Unity AIの方が高い - が、正直GitHub Copilot Agent >>>>>>> Unity AI > UnityAgentClient みたいな感じなので、コードを書かせるならCopilotやClaude Codeなどで良い - Unityエディタで動くAIエージェントが目指すべきはそこではない - UnityAgentClientはエディタの解析・操作に特化した設計 - 単なるエディタ拡張なので、特定のプロバイダに依存しない - Agent側の要件はACPサポートのみ (基本的にはZedがアダプタを提供している) #Unity完全理解 # # Unity AI vs UnityAgentClient 14

15.

# まとめ #Unity完全理解 15

16.

- Unity AIはまだまだ発展途上 - Unityエディタで動くAIが目指すべきは、 (少なくとも現時点では)コーディング用途ではない - 「エディタ上で動く」という利点を最大限に活用する - UnityAgentClient、使ってみてね! #Unity完全理解 # # まとめ 16

17.

# Thank you for listening! #Unity完全理解 17