マルチエージェント自動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-spacetarget="A-space"CDP port 9222🏢 【A-space→親Antigravity】
B-spacetarget="B-space"CDP port 9222🏢 【B-space→親Antigravity】
C-spacetarget="C-space"CDP port 9222🏢 【C-space→親Antigravity】
自動選択target="agent-manager"(上記から自動選択)(選ばれたWS名)
Claude Desktoptarget="claude-code-desktop"CDP port 9333🖥️ [Claude Code → Antigravity]
Claude CLItarget="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→DesktopCDP 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.pyAgent Bus MCPサーバー(dispatch/report/status管理)
c:\ai_work\agent-bus-mcp\chat_injector.pyCDP双方向注入エンジン
C:\ai_work\workspaces\{A,B,C}-space\AGENTS.mdワークスペース設定ファイル

実装日: 2026-03-08

テスト結果: A-space ✅ B-space ✅ C-space ✅ (並列実行確認済み)