# ENGLISH
**Your AI agent already writes Unity code. It still can't open Unity.**
It edits C# then guesses everything else — did it actually land in the scene, did the project compile, does it look right when you press Play. So you paste screenshots, copy Console errors back into chat, and do the clicking yourself.
Editor Eye StandAlone closes that gap. It puts **20 first-class Editor tools** into the hands of the AI coding agent you already pay for: read the hierarchy, wire up components, build prefabs, enter Play Mode, simulate a screenshot capture, run C# live inside the Editor — then **read the result and correct itself** without you in the loop.
## No server. No port. No executable.
Editor Eye StandAlone runs entirely inside the Unity Editor. Your agent drives it by writing one JSON file into the project folder and reading the reply:
```
<Project>/EditorEye/inbox/0001.json ← agent writes the request
<Project>/EditorEye/outbox/0001.json ← Unity writes the response
```
That's the whole protocol. One page of plain JSON, installed into your project as `EditorEye/AGENTS.md` so your agent can read it and drive itself.
There is nothing else sitting between you and Unity: no server binary to download, no localhost port, no client config file to hand-edit, no client restart, no account, no API key of ours, no telemetry, no network traffic of any kind.
## Why files beat a socket — three things that only work this way
**1. Requests survive Domain Reload.**
Socket-based Unity integrations drop their connection the instant scripts recompile. Your agent's request dies mid-flight, and it's left guessing whether the work happened — one of the most common failure modes in this category of tool. A file simply waits on disk until Unity is ready to read it. Compile all you like; nothing is lost.
**2. It works even when Unity isn't the front window.**
Requests are picked up by a `FileSystemWatcher` on a background thread, independent of Editor focus. Unity can sit behind your browser, on a second monitor, or minimized. Your agent still gets through.
**3. Nothing is listening.**
No open port, no local HTTP server, no binary to whitelist. On a locked-down studio or enterprise machine, that's often the difference between "approved" and "no." The shipped package contains **zero executables** — every path inside the `.unitypackage` is enumerated and verified before release.
## Setup takes about a minute
1. Import the package.
2. **Tools › Editor Eye StandAlone › Setup Window › Install AI Assistant Docs.** This writes the protocol to `EditorEye/AGENTS.md` and appends a short pointer to `CLAUDE.md`, `AGENTS.md`, `GEMINI.md`, and `.cursor/rules/editor-eye.mdc`. Existing files are appended to, never overwritten — running it twice is safe.
3. Ask your agent to do something in Unity.
There is no step 4. No download dialog, no config JSON, no restart.
## What your agent can actually do
**See.** Read the hierarchy, inspect any GameObject, search the scene by name / component / tag / regex, pull Console logs and compile errors, and take screenshots — from the Scene View, the Game View, or a custom camera viewpoint.
**Build.** Create and edit GameObjects, components, prefabs, materials, shaders, textures, and ScriptableObjects. Almost anything you'd do by hand in the Inspector, your agent can do through `execute_dynamic_script` — with the same access to `UnityEditor` / `UnityEngine` / `AssetDatabase` that any Editor script has.
**Play.** Enter Play Mode, capture the result, assert on runtime state, run your NUnit test suite. The agent plays the game and tells you what broke.
**Write and run C# live.** `execute_dynamic_script` compiles and executes arbitrary C# inside the Editor in around **15–90 ms**, using an in-process **Roslyn 4.9.2** compiler with **C# 12** support. No `dotnet.exe`, no worker process, no `Process.Start` anywhere in the compilation path.
**Discover itself.** There's no static tool list pushed into your agent's context. It calls `help()` for the live catalog and `help(ToolName="…")` for a full parameter schema, so the catalog can never drift out of sync with what's actually installed.
## Open by design
Every tool is readable C# source inside your project. Read one, extend one — the wire format is plain, documented JSON. No black box, no obfuscated DLL.
## Honest fit — please read before buying
**You need an AI coding agent that can read and write files in your project.** Claude Code, Codex CLI, Cursor, Gemini CLI, and similar coding agents all qualify. **Chat-only clients cannot drive it** — the plain Claude Desktop app or the ChatGPT web UI have no filesystem access to your project. This is a tool for coding agents, not chat windows.
- **You bring your own AI.** Editor Eye StandAlone has no subscription, no account, no API key of its own. Your existing agent subscription is the only thing you need.
- **Anything that can write into your project folder can run C# in your Editor.** Same exposure any localhost automation tool would have — stated plainly.
## Production quality
- **20 AI-facing Editor tools across 6 groups** (`editor` / `scripting` / `scene` / `camera` / `play_mode` / `testing`), plus 3 internal diagnostic/stub tools callable by name. The tool count is fixed and does not change with third-party packages installed in your project.
- **Zero executables in the package**, confirmed by full path enumeration of the shipped `.unitypackage`. What you install is readable C# plus a handful of MIT-licensed managed assemblies (Roslyn 4.9.2 and its dependencies, attributed in `NOTICE.md`).
- **Roughly 5 MB**, no server binary, no download step beyond one Unity package dependency (Newtonsoft.Json).
- **0 compile errors**, verified on a clean Unity 2022.3.22f1 project with only the single required dependency installed.
- **Silent-failure-resistant tool schemas** — responses report exactly which fields were applied, so your agent doesn't have to guess whether a call actually took effect.
---
# 日本語
**あなたの AI エージェントはすでに Unity の C# を書けます。でも Unity を開くことはできません。**
C# を編集した後は全部推測です — 実際にシーンに反映されたのか、プロジェクトはコンパイルできたのか、Play を押したときに意図通りか。結局あなたがスクリーンショットを貼り、Console のエラーをチャットにコピーし、クリック作業を自分でやることになります。
Editor Eye StandAlone はそのギャップを埋めます。すでにお使いの AI コーディングエージェントに **20 個の本格 Editor ツール** を渡します — ヒエラルキーを読み、コンポーネントを配線し、Prefab を組み、Play Mode に入り、スクリーンショットを撮り、Editor 内で C# をその場で実行する。そして **その結果を自分で読んで自分で直す** ところまでを、あなたを介さずに回せます。
## サーバ不要。ポート不要。実行ファイル不要。
Editor Eye StandAlone は Unity Editor の内部だけで完結して動作します。エージェントはプロジェクトフォルダに JSON を 1 つ書き、返事を読むだけで Unity を動かします。
```
<Project>/EditorEye/inbox/0001.json ← エージェントがリクエストを書く
<Project>/EditorEye/outbox/0001.json ← Unity がレスポンスを書く
```
プロトコルはこれで全部です。A4 一枚分のプレーンな JSON 仕様が `EditorEye/AGENTS.md` としてプロジェクトに書き出されるので、エージェントは自分でそれを読んで使い方を理解します。
あなたと Unity の間にあったものは全部消えました。サーババイナリのダウンロードなし、localhost のポートなし、クライアント設定ファイルの手編集なし、クライアント再起動なし、アカウントなし、当方の API キーなし、テレメトリなし、ネットワーク通信そのものが一切なし。
## ソケットではなくファイルである理由 — この方式でしか成立しない 3 つ
**1. リクエストが Domain Reload を生き延びます。**
ソケット方式の Unity 連携は、スクリプトが再コンパイルされるたびに毎回接続が切れます。エージェントのリクエストは飛行中に死に、「処理されたのか、されなかったのか」をエージェントが推測する羽目になります — このカテゴリのツールで最もよくある失敗モードの一つです。ファイルは単純にディスク上で待ち、Unity の準備ができ次第読まれます。何度コンパイルしても失われません。
**2. Unity が最前面ウィンドウでなくても動作します。**
リクエストはバックグラウンドスレッドの `FileSystemWatcher` が拾うため、Editor のフォーカス状態とは無関係です。Unity がブラウザの裏、サブモニタ、最小化状態でも、エージェントは処理を通せます。
**3. 何も待ち受けていません。**
開いたポートなし、ローカル HTTP サーバなし、ホワイトリスト登録が必要なバイナリなし。ロックダウンされたスタジオや企業のマシンでは、これが「承認される」か「されない」かの分かれ目になることが少なくありません。配布パッケージに含まれる実行ファイルは **ゼロ** です — `.unitypackage` 内の全パスをリリース前に列挙・検証しています。
## セットアップは 1 分ほど
1. パッケージを Import する。
2. **Tools › Editor Eye StandAlone › Setup Window › Install AI Assistant Docs** をクリック。プロトコルを `EditorEye/AGENTS.md` に書き出し、`CLAUDE.md` / `AGENTS.md` / `GEMINI.md` / `.cursor/rules/editor-eye.mdc` に短いポインタを追記します。既存ファイルは追記のみで上書きしません — 何度実行しても安全です。
3. エージェントに Unity 上でやってほしいことを頼む。
手順 4 はありません。ダウンロードダイアログなし、設定 JSON なし、再起動なし。
## エージェントが実際にできること
**見る。** ヒエラルキーの読み取り、任意 GameObject の検査、名前 / コンポーネント / タグ / 正規表現によるシーン検索、Console ログ・コンパイルエラーの取得、Scene View / Game View / カスタムカメラ視点でのスクリーンショット撮影。
**作る。** GameObject・コンポーネント・Prefab・マテリアル・シェーダー・テクスチャ・ScriptableObject の作成と編集。Inspector で手作業していたことのほとんどは、`execute_dynamic_script` を通じて実行できます — 通常の Editor スクリプトと同じ `UnityEditor` / `UnityEngine` / `AssetDatabase` アクセス権を持ちます。
**遊ぶ。** Play Mode に入り、結果をキャプチャし、ランタイム状態をアサートし、NUnit テストスイートを実行する。エージェントがゲームをプレイして何が壊れたかを教えてくれます。
**C# をその場で書いて実行する。** `execute_dynamic_script` はインプロセスの **Roslyn
4.9.2** コンパイラ(**C# 12** 対応)を使い、約 **15〜90 ms** で任意の C# を Editor 内でコンパイル・実行します。`dotnet.exe` もワーカープロセスも、コンパイル経路に `Process.Start` も一切ありません。
**自分でツールを発見する。** ツール一覧をあなたのエージェントのコンテキストに静的に押し込むことはありません。`help()` でその場のカタログを、`help(ToolName="…")` で個別のパラメータスキーマを取得するため、カタログが実際の導入状態とずれることは原理的にありません。
## オープンな設計
すべてのツールはプロジェクト内の読める C# ソースです。読んで、拡張してください — ワイヤフォーマットはプレーンでドキュメント化された JSON です。ブラックボックスも難読化 DLL もありません。
## 正直な適合条件 — 購入前にお読みください
**プロジェクト内のファイルを読み書きできる AI コーディングエージェントが必要です。** Claude Code / Codex CLI / Cursor / Gemini CLI などのコーディングエージェントが該当します。
**チャット専用クライアントでは動きません。** 素の Claude Desktop アプリや ChatGPT の Web UI は、あなたのプロジェクトのファイルにアクセスできません。これはチャットウィンドウ用ではなく、コーディングエージェント用のツールです。
- **AI はご自身のものをお使いください。** Editor Eye StandAlone 側にサブスクもアカウントも API キーもありません。今お使いのエージェント契約だけで完結します。
- **プロジェクトフォルダに書き込めるものは、あなたの Editor で C# を実行できます。** localhost 型の自動化ツール一般と同程度の露出度であることを明記しておきます。
## 品質
- **6 グループにまたがる 20 種類の AI 向け Editor ツール**(`editor` / `scripting` / `scene` / `camera` / `play_mode` / `testing`)に加え、名前指定で呼び出せる内部診断・スタブ用ツールが 3 種。ツール数は固定であり、プロジェクトに導入されている第三者パッケージによって変動しません。
- **パッケージ内の実行ファイルはゼロ**。配布 `.unitypackage` の全パス列挙で確認済みです。導入されるのは読める C# ソースと、少数の MIT ライセンスのマネージドアセンブリ(Roslyn 4.9.2 とその依存、`NOTICE.md` に明記)のみです。
- **約 5 MB**。サーババイナリなし、必須の Unity パッケージ依存(Newtonsoft.Json)1 件を除きダウンロード手順もありません。
- **コンパイルエラー 0 件**。唯一の必須依存のみを導入したクリーンな Unity 2022.3.22f1 プロジェクトで検証済みです。
- **silent-failure 耐性のあるツールスキーマ** — レスポンスはどのフィールドが実際に適用されたかを正確に報告するため、エージェントは呼び出しが効いたかどうかを推測する必要がありません。