agent-theatre について
Agent Theatre は Claude Code のセッションをリポジトリのアニメーション舞台に変換し、作業をリアルタイムまたは録画で確認したい開発者向けです。ファイル操作、テスト、サブエージェントを舞台上に表し、イベントデータはローカルで処理します。
主な機能
- 01コーディングセッションのアニメーション表示
- 02過去の Claude Code セッションの再生
- 0320 種類のリポジトリ舞台レイアウト
- 04編集、テスト、失敗の視覚的な表示
- 05MCP ツールによる舞台の起動と確認
- 06ローカルでのイベント処理とテレメトリーなし
活用シーン
- 01Claude Code セッションのリアルタイム確認
- 02過去のセッションを再生して作業を確認
- 03テスト結果と変更対象ファイルの確認
- 04MCP クライアントからリポジトリの舞台を開く
MCP 対応
`agent-theatre serve` は、ライブ舞台の起動、セッション一覧と再生、舞台状態の確認、Claude Code フックのインストール用ツールを提供します。ローカルの stdio MCP サーバーとして動作します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
5掲載時のツール一覧 · 今日に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| cwd | string | いいえ | リポジトリフォルダーの絶対パス |
| set | string | いいえ | ステージセット ID。例:island、orbit、lanterns |
詳細
Agent Theatre
コーディングエージェントの作業を、ログではなく映画として見届けましょう。
Agent Theatre は Claude Code のセッションをアニメーションのシーンに変換します。あなたのリポジトリが舞台になります。 フォルダーは地区、ファイルは建物、テストファイルはビーコンです。エージェントは十二人のキャストのうちの一人として登場し、 読み取るファイルへ歩いていき、編集するファイルの上で作業し、ビーコンでテストを実行します。テストに失敗すると、バグの小鬼を追いかけます。サブエージェントは、キャストの別のメンバーとして波止場に到着します。リアルタイムでも、過去のセッションを再生しても楽しめます。
二十の舞台。 Agent Theatre は、あなたのリポジトリがどのようなものかを読み取ります。ウェブアプリ、バックエンド、CLI、データ作業、ゲーム、インフラストラクチャなどに応じて、ぴったりの舞台を提案します。Island、Orbit、Metropolis、 Harbour、Observatory、Greenhouse、Workshop、Arcade、Kingdom、Outpost、Snowfield、Canopy、 Lagoon、Volcano、Cloudtop、Reef、Bazaar、Monastery、Moonbase、Lanterns から選べます。または、おまかせを選んでください。
そして、ほかのビジュアライザーにはない正直な仕掛けがあります。エージェントが作業完了を告げても、最後の編集以降にテストが一度も成功していなければ、背後に小鬼が隠れています。

![]() | ![]() | ![]() |
![]() | ![]() | ![]() |
同じセッションでも、舞台と主役を変えて楽しめます。選択画面はリポジトリを読み取り、三つの候補を提案します。
同梱の六つのエピソードでは、それぞれ異なるリポジトリで異なる種類の作業が展開されます。すべて合成データをもとに手書きしたもので、実際のセッションを記録したものではありません。
| エピソード | 種類 | 内容 |
|---|---|---|
| ログインのタイムアウト | バグ修正 | 二つのテストが失敗し、猶予時間を設け、テストが成功します。そして証拠チップが表示されます |
| 調査概要 | 調査 | フィールドノート、データファイル、二つのウェブ検索、作成した概要。テストの実施はありません |
| エクスポートエンドポイント | 新機能 | 二つの新しい建物が立ち上がり、ルートが接続され、初回でテストスイートが成功します |
| 名前変更 | リファクタリング | 六つのファイルに変更を加え、一つのテストがミスを検出し、五十八件が成功します |
| 1.4.0 をリリース | デプロイ | シェル作業はすべて forge で実行します。ビルド、計画、タイムアウト、再試行、ロールアウト、タグ付け |
| 監査 | ヘルパー | 二人のヘルパーが波止場に到着して別々に作業する間、リードは作業を続けます |
agenttheatre.dev で見るか、ローカル環境で ?demo=research、?demo=feature、?demo=refactor、?demo=deploy、?demo=subagents を指定してご覧ください。
ステータス
v1.0.0 — npm で agent-theatre として公開中です。VS Code 拡張機能は各
リリースで公開され、六つのエピソードを
agenttheatre.dev でプレイできます。実際のリポジトリで、フックを使ったライブ表示と、実セッションの再生の両方をエンドツーエンドで検証済みです。設計メモは docs/design.md をご覧ください。
インストール
使い方に合った方法を選んでください。どの方法でも同じローカルステージが動作し、マシンの外にデータが送られることはありません。
| 場所 | 方法 | 備考 |
|---|---|---|
| npm(CLI) | npx agent-theatre | Node 22 以降。過去のセッションを再生するには npx agent-theatre replay |
| Claude Code プラグイン | /plugin install agent-theatre --marketplace shreyassaw5394/agent-theatre | Claude Code 2.1.275 以降ならワンステップで導入できます。フック、/theatre コマンド、スキルが追加されます |
| Homebrew | brew install shreyassaw5394/tap/agent-theatre | タップ: shreyassaw5394/homebrew-tap |
| VS Code | 拡張機能で Agent Theatre を検索するか、Marketplace を利用 | コマンド:ステージを開く(ライブ)、セッションを再生…、フォルダーを切り替え。.vsix は各リリースにもあります |
| Cursor / Windsurf / VSCodium | 最新リリースから agent-theatre.vsix を入手 → 拡張機能 → ⋯ → VSIX からインストール… | 同じ拡張機能です。Open VSX への掲載は近日予定 |
| MCP サーバー(Cursor、Windsurf、Claude Desktop、Codex、Gemini CLI、VS Code Copilot) | npx agent-theatre init | お使いのマシン上のすべてのエージェントに agent-theatre serve を登録します。チーム向けには --repo を指定すると .mcp.json / .cursor/mcp.json / .vscode/mcp.json を書き込みます。ワンクリック: |
| 見るだけ | agenttheatre.dev | インストール不要の合成エピソードが6本 |
初回起動(CLI):
cd your-repo
npx agent-theatre hooks install # once — skip if you installed the Claude Code plugin, it brings the hooks
npx agent-theatre # opens the stage for this repo; run Claude Code in another terminal
npx agent-theatre replay # pick any past Claude Code session of this repo and watch it
npx agent-theatre hooks uninstall # reverses the install byte-for-byte
フラグ:--port <n>、--no-open、--set <stage-id>。replay --latest を指定すると選択画面を省略します。グローバルインストールする場合:npm i -g agent-theatre。
ステージ内: 何にでもカーソルを合わせると、それが何か、そしてこのセッション中に何が起きたかを確認できます。ライブステージでは端に Live と表示され、過去に戻っていると Go live ボタンが表示されます。リポジトリ全体を選ぶと、すべての建物に戻ります(ホイールでズーム)。全画面(または F)にすると、ステージとトランスポートバーだけが表示されます。クリップをエクスポートすると、見ている映像と音声を mp4/webm に記録し、共有シート(ダウンロード、システム共有、X、LinkedIn)を表示します。エージェントがあなたを必要とすると、ステージにその旨が表示され、Claude Code に戻るよう促されます(VS Code では Claude Code の入力欄にフォーカスします)。返答はステージ上ではなく、Claude Code で行います。エージェントが処理を止めると、ステージにその旨が表示されます。約20秒後に「考え中…」と表示され、90秒後には客電が暗くなり、主演が座り、環境音が薄れ、バナーが沈黙時間を表示します。イベントが届くと、すべて元に戻ります。セッションが終了すると、バナーにその旨が表示されます。ステージは起動したフォルダーを監視します。複数のステージ(ブラウザー、VS Code、別のリポジトリ)を同時に起動しても、すべてイベントを受け取ります。
MCP ツール
agent-theatre serve は MCP サーバー(stdio)です。どの MCP クライアントからでも、次の操作ができます。
| ツール | 説明 |
|---|---|
open_stage | フォルダーのライブステージを起動(または再利用)→ URL |
list_sessions | フォルダーの過去の Claude Code セッション:ID、タイトル、時刻 |
replay_session | 1つのセッションのリプレイを開く(デフォルトは最新)→ URL |
stage_status | イベント/ビートの件数と直近のイベント種別を表示。内容は表示しません |
install_hooks | Claude Code のフックをインストール(プラグインを使う場合は不要) |
MCP Registry に io.github.shreyassaw5394/agent-theatre として登録されています。
仕組み
Claude Code ──hooks──▶ agent-theatre (local) ──WebSocket──▶ browser / VS Code webview
│ │
└─ JSONL transcript ─────┘ (replay)
- イベント。 フックのペイロード(ライブ)またはトランスクリプトの行(リプレイ)を、製品に依存しない小さな
AgentEventスキーマに正規化します:read_file、edit_file (+n −m)、run_command (intent)、test_result、subagent_start/stop、waiting_for_user、turn_end、… - ステージ。 リポジトリのファイルツリーを、決定的な配置に変換します。リポジトリとステージに応じて、6 種類のレイアウト archetype(リング、グリッド、ストリップ、スキャッター、テラス、スパイン)から 1 つが選ばれます。そのため、同じプロジェクトでも、あるセットではリング状の島、別のセットでは段々状のスパインになり、同じセット内では常に同じ配置になります。関連度に基づいて建物は約 60 棟までに制限されますが、セッションで触れたファイルは必ず配置されます。
- ディレクター。 イベントを、ムード(好奇心、集中、迷子、喜び)を伴うシーンのビートに変換します:
walk_to、build、run_tests、spawn_gremlin、chase、celebrate、unverified_claim。 - レンダラー。 PixiJS、アイソメトリック、柔らかな照明、随所にイージングを採用しています。コードベースにリニアなトゥイーンは存在せず、それをテストで確認しています。カメラはアクションを捉え、ステージ全体が表示されるのは開始時、祝福時、終了時だけなので、画面がごちゃつきません。キーライトは 1 つで、長く柔らかなキャストシャドウ、アンビエントオクルージョンとリムライトを施したグラデーションの面、遠方の列にかかる空気遠近、ランプと明かりの灯った窓だけにかかるブルーム、地面を流れる雲の影を表現します。
prefers-reduced-motionに対応しています。20 種類のステージはそれぞれ独自のシルエットを持ちます。切妻屋根の港町の家、パゴダの段、タマネギ型ドーム、月面基地のカプセル、市場のテントなど、同じジオメトリを使い、12 種類のキャラクターを 1 つのプロシージャルなルーチンから作り出します。 - サウンド。 すべてのビートにサウンドがあり、すべて Web Audio API を使って実行時に合成されます。音声ファイルはなく、ライセンスを気にする必要もありません。各ステージには独自の音色(波形、ピッチ、減衰、足元の地面)と独自の環境音があります。ざわめきやパッドに加え、カモメ、鐘、泡、風、市場のざわめきなどが不規則なタイマーで時折鳴るため、何もループしません。 効果音と背景の環境音は個別に切り替えられます。 「許可が必要です」というチャイムは、きっと気づくでしょう。
プライバシー
すべてのデータはお使いのマシン上にとどまります。イベントストリームにコード、プロンプト、コマンドのテキスト、検索クエリが含まれることはありません。含まれるのは、リポジトリ相対パス、件数、コマンドの最初の単語、分類された意図だけです。これはテストで確認済みの不変条件です(packages/core/tests/privacy.test.ts では、フィクスチャのセッションに秘密情報を埋め込み、ストリームに漏れないことを検証しています)。
| 読み取り | 表示 | マシンから外部に送信 | |
|---|---|---|---|
| ファイルパス | はい | リポジトリ相対 | なし |
| ファイルの内容 | 件数のみ(±行数) | なし | なし |
| プロンプト | 末尾は読み取らず、保存もしません | なし | なし |
| エージェントの終了メッセージ | 最後の段落を 240 文字に切り詰めます(turn_end.note) | はい。「あなたの番」とともに表示し、何を求められたかが分かります | なし |
| コマンドのテキスト | 最初の単語 + 分類された意図 + リダイレクト先 | なし | なし |
| テスト出力 | 要約した件数のみ | 成功/失敗 | なし |
| テレメトリ | — | — | 一切ありません |
| 音声 | — | 合成音声。ファイルはありません | なし |
サーバーは 127.0.0.1 のみにバインドします。フックは終了コード 0 で終了し、エージェントをブロックしたり遅くしたりすることはありません。
リポジトリの構成
packages/core(スキーマ、アダプター、アイランド、ディレクター — DOM、fs なし) ·
packages/cli · packages/web · packages/vscode · fixtures/(合成セッション)。
コミュニティ
質問、紹介したいステージ、v2 のアイデアはこちら:Agent Theatre Discord。すべてのスイート(LastSearch、Debug Anything、Agent Theatre)は、同じサーバーも共有しています。
サイト
agenttheatre.dev — ストーリー、プレイ可能なエピソード 1、20 種類すべてのステージ、キャスト、プライバシーシート、インストール手順を掲載しています。agenttheatre.com からは、こちらにリダイレクトされます。このリポジトリの site/ がサイトのソースで、main から Vercel にデプロイされます。プレイ可能なデモは、実際の Web バンドルを /theatre/ で配信しています。
ライセンス
MIT © 2026 Shreyas Sawant and Agent Theatre contributors.
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。





