Skip to main content
Glama
README.md
# @claude-max-agent/hub-bus

**hub-bus MCP ブローカー** — claude-agent-hub から切り出した独立パッケージ。

agent-herd および claude-agent-hub の両プロジェクトが共有する MCP(Model Context Protocol)ブローカー。
Manager ↔ Lead 間のローカル通信路として機能する。

## アーキテクチャ

```
Manager (Claude Code)
  ├── hub-claude-transport.ts  ← MCP stdio サーバー (Claude 用)
  │       └── hub-bus-broker.ts  ← 独立 HTTP ブローカーデーモン (:9100)
  │               └── hub-core.ts  ← コアロジック (inbox / peer registry)
  └── hub-codex-transport.ts  ← Codex 向け pull 型 inbox

Lead (Claude Code)
  └── hub-claude-transport.ts  ← MCP stdio サーバー (:9101, :9102, ...)
```

## ファイル構成

| ファイル | 役割 |
|---------|------|
| `hub-bus.ts` | エントリーポイント(transport 分岐) |
| `hub-bus-broker.ts` | HTTP ブローカーデーモン(per-agent / central モード) |
| `hub-core.ts` | コアロジック・型定義・設定パーサー |
| `hub-claude-transport.ts` | Claude Code 向け MCP stdio サーバー |
| `hub-codex-transport.ts` | Codex 向け pull 型 inbox MCP サーバー |
| `hub-notification.ts` | Claude channel 通知ルーティング |

## 使い方

### bun 直接実行

```bash
bun hub-bus.ts
```

### MCP サーバーとして設定(.mcp.json)

```json
{
  "mcpServers": {
    "hub-bus": {
      "command": "bun",
      "args": ["/path/to/hub-bus.ts"],
      "env": {
        "HUB_BUS_PORT": "9100",
        "HUB_BUS_ROLE": "manager",
        "HUB_BUS_CENTRAL": "true",
        "HUB_BUS_BROKER_URL": "http://127.0.0.1:9100",
        "HUB_BUS_AGENT_ID": "manager"
      }
    }
  }
}
```

### パッケージとして依存追加

```bash
# bun の場合
bun add github:claude-max-agent/hub-bus
```

## 環境変数

| 変数 | 説明 | 既定値 |
|------|------|--------|
| `HUB_BUS_PORT` | ブローカーポート | `9100` |
| `HUB_BUS_ROLE` | エージェント役割 (`manager`/`lead`/`resident`) | `lead` |
| `HUB_BUS_TRANSPORT` | トランスポート種別 (`claude`/`codex`) | `claude` |
| `HUB_BUS_TEAM_ID` | Lead チーム識別子 | `` |
| `HUB_BUS_CENTRAL` | セントラルモード有効化 | `false` |
| `HUB_BUS_BROKER_URL` | セントラルブローカー URL | `` |
| `HUB_BUS_AGENT_ID` | エージェント識別子 | `` |
| `HUB_BUS_PEERS` | peer URL リスト(カンマ区切り) | `` |
| `HUB_BUS_EXTRA_SENDERS` | 追加送信者許可リスト | `` |
| `HUB_BUS_STATE_DIR` | 状態ファイル保存ディレクトリ | `~/.hub-bus` |

## テスト

```bash
bun test
```

## ライセンス

MIT