マルチエージェント自動dispatch アーキテクチャ
概要
親Antigravityから全エージェントにタスクを自動振り分け、完了報告をCDP逆注入で受け取る統一アーキテクチャ。
親 Antigravity ──dispatch_task──→ Agent Bus MCP (server.py)
├→ A-space (CLI起動 → CDP注入 → 実行 → CDP逆注入で報告)
├→ B-space (同上)
├→ C-space (同上)
├→ claude-code-desktop (CDP port 9333 → 実行 → CDP逆注入)
└→ claude-code / claude-code-cli (CLI自動起動 → 実行 → 報告)
エージェント一覧
| エージェント | dispatch target | 通信方式 | 報告ラベル |
|---|---|---|---|
| A-space | target="A-space" | CDP port 9222 | 🏢 【A-space→親Antigravity】 |
| B-space | target="B-space" | CDP port 9222 | 🏢 【B-space→親Antigravity】 |
| C-space | target="C-space" | CDP port 9222 | 🏢 【C-space→親Antigravity】 |
| 自動選択 | target="agent-manager" | (上記から自動選択) | (選ばれたWS名) |
| Claude Desktop | target="claude-code-desktop" | CDP port 9333 | 🖥️ [Claude Code → Antigravity] |
| Claude CLI | target="claude-code" | CLI auto-launch | ファイルベース報告 |
ワークスペース (A/B/C-space) フロー
sequenceDiagram participant P as 親 Antigravity participant Bus as Agent Bus MCP participant WS as B-space Window P->>Bus: dispatch_task(target='B-space') Bus->>Bus: inbox/B-space/ にタスク保存 alt ウィンドウ未起動 Bus->>Bus: antigravity --new-window C:\ai_work\workspaces\B-space end Bus->>WS: CDP: receive_task('B-space')... 注入 WS->>WS: タスク実行 WS->>Bus: submit_report(worker='B-space') Bus->>Bus: inbox から workspace_name 読取 → report に保存 Bus->>P: inject_to_antigravity() — CDP逆注入 Note over P: 🏢 【B-space→親Antigravity】
ワークスペース固有ルーティング
- 各ワークスペースは専用inbox:
09_AgentSync/inbox/A-space/,inbox/B-space/,inbox/C-space/ - 注入プロンプトにワークスペース名を含む:
receive_task('B-space'),submit_report(worker='B-space') - レースコンディションなし(共有キューを使わない)
自動起動
ウィンドウが開いていない場合: antigravity --new-window C:\ai_work\workspaces\{ws_name}
- ワークスペースフォルダ:
C:\ai_work\workspaces\{A,B,C}-space - CDPページ出現まで最大30秒待機
CDPレイヤー (chat_injector.py)
| 関数 | ポート | 方向 | ページ特定 |
|---|---|---|---|
inject_to_antigravity() | 9222 | →親 | obsidian valut をタイトルに含む(WS除外) |
inject_to_workspace(msg, ws_name) | 9222 | →WS | {ws_name} をタイトルに含む |
inject_to_claude_desktop() | 9333 | →Desktop | CDP or clipboard fallback |
親ページ特定の仕組み
inject_to_antigravity() は obsidian valut を含むページのみ選択。A-space/B-space/C-spaceのページは除外される。
ディレクトリ構造 (09_AgentSync/)
09_AgentSync/
├── inbox/
│ ├── A-space/ ← A-space専用タスク
│ ├── B-space/ ← B-space専用タスク
│ ├── C-space/ ← C-space専用タスク
│ ├── claude-code/ ← CLI版タスク
│ └── claude-code-desktop/ ← Desktop版タスク
├── reports/
│ ├── pending/ ← 未確認レポート
│ └── processed/ ← 確認済みレポート
├── status/ ← エージェントステータスJSON
└── shared_context/ ← 共有コンテキスト
関連ファイル
| ファイル | 説明 |
|---|---|
c:\ai_work\agent-bus-mcp\server.py | Agent Bus MCPサーバー(dispatch/report/status管理) |
c:\ai_work\agent-bus-mcp\chat_injector.py | CDP双方向注入エンジン |
C:\ai_work\workspaces\{A,B,C}-space\AGENTS.md | ワークスペース設定ファイル |