mcpField
A
agent-intercom

agent-intercom

ローカル
github.comAI・エージェント12 週間前に更新

agent-intercom について

agent-intercomは、Claude Code、Codex CLI、Antigravityのセッション間でメッセージをやり取りするMCPサーバー兼CLIです。ライブプッシュで開いているセッションに届けられ、SSHブリッジで別のマシン上のエージェントとも接続できます。

主な機能

  1. 01対応エージェント向けのメッセージツール
  2. 02開いているセッションへのライブプッシュ
  3. 03SSHによるマシン間ブリッジ
  4. 04メールボックスの状態確認と監視コマンド

活用シーン

  1. 01別のコーディングエージェントに差分レビューを依頼
  2. 02返信を実行中のセッションへ直接配信
  3. 03ノートPCとリモートサーバー上のエージェントを接続

MCP 対応

MCPクライアントにmail_send、mail_check、mail_peersを提供します。インストーラーは対応CLIにサーバーを登録します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"iambashar-agent-intercom": {
"command": "npx",
"args": [
"-y",
"agent-intercom"
],
"env": {
"AGENT_NAME": "<AGENT_NAME>",
"AGENT_MAIL_DIR": "<AGENT_MAIL_DIR>"
}
}
}
}
起動コマンドnpx -y agent-intercom
設定が必要な環境変数
AGENT_NAMEThis agent's mailbox name, e.g. claude, codex or gemini
AGENT_MAIL_DIRMailbox folder shared by all agents (default ~/.agent-mail)

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npmagent-intercom0.2.5

ツール

3

掲載時のツール一覧 · 1 週間前に更新

パラメーター型必須説明
tostringはいmail_peers に表示される宛先エージェント名(例:"codex"、"claude"、"gemini")。使用できるのは英字、数字、_、- で、. で区切ったサフィックス部分も指定できます。
bodystringはいメッセージ本文。プレーンテキストまたは Markdown を使用できます。宛先はあなたの会話を参照できないため、必要な情報をすべて含めてください。
reply_tostringいいえ任意。返信対象のメッセージ id(mail_check で [ ] 内に表示される値)。宛先が返信を質問と照合できるようにします。

詳細

agent-intercom:Claude Code、Codex CLI、Antigravity が 1 つのハブを介して接続され、互いにメッセージをやり取りします


npm CI License: MIT GitHub stars

Node 20+ Zero dependencies MCP Claude Code Codex CLI Antigravity

Claude Code、Codex CLI、Antigravity(Gemini)で互いにメッセージをやり取りし、
それぞれのメッセージを、相手のエージェントの開いているセッションに直接届けます。

時間の節約に役立ったら、⭐ を付けるとほかの人にも見つけてもらいやすくなります。

はじめる · 動作を見る · プッシュの仕組み · 複数のマシン間で使う · CLI · セキュリティ · コントリビューション


README の画像 はじめる

npx agent-intercom install

Claude Code だけを使っていますか?代わりにプラグインとしてインストールできます:

/plugin install agent-intercom --marketplace iambashar/agent-intercom

2.1.275 より古い Claude Code の場合:/plugin marketplace add iambashar/agent-intercom を実行し、続けて /plugin install agent-intercom@agent-intercom を実行します。このプラグインは、メールボックスの規約を Claude に教えるスキルも追加します。

npx コマンドは、見つかったすべての CLI に MCP サーバーを登録します。各 CLI を再起動すると、それぞれのエージェントで 3 つのツール(mail_send、mail_check、mail_peers)が使えるようになります。あとは、自然な言葉で依頼してください:

あなた → Claude: Codex に src/parser.ts の差分をレビューするよう頼み、回答を待ってください。

誰もポーリングしなくて済むよう、ライブプッシュを有効にしましょう。デーモンが安定したパスを必要とするため、グローバルにインストールしてください:

npm i -g agent-intercom
agent-intercom install --push
install による CLI ごとの変更内容
CLI登録方法プッシュ用の追加設定
Claude Codeclaude mcp add、ユーザースコープなし。Claude Code のピアソケットを使用
Codex CLI~/.codex/config.toml に管理ブロックを追加(事前にバックアップ)なし。Codex app-server デーモンを使用
Antigravity (agy)agy mcp add~/.gemini/config/hooks.json にセッションフックを追加

1 つの CLI のみを対象にするには --only claude|codex|gemini を、npx の代わりに git チェックアウトを固定するには --local を使用してください。agent-intercom uninstall は、プッシュデーモンを含むすべての設定を削除します。

メモ

古い gemini CLI は、個人用の Google AI Pro アカウントでのサインインを受け付けなくなりました。Google は該当ユーザーを Antigravity CLI(agy)に移行しました。ここでは、そのエージェントの名前はデフォルトで gemini です。

README の画像 動作を見る

2ペインのターミナルのアニメーション:Claudeがmail_sendでCodexにレビューを依頼し、Codexは新しいターンとして受け取り、ファイルをレビューして返信し、その返信がClaudeのセッションに表示されます

どちらのエージェントもポーリングしません。リクエストを送信するとすぐに、Codexに新しいターンとして表示され、返信も同じようにClaudeに届きます。

README の画像 利用できる機能

リアルタイムプッシュ、ポーリング不要:新しいメールが開いているセッションの新しいターンになります3つのCLIで1つの受信トレイを共有:Claude Code、Codex CLI、Antigravityが1つのメールボックスを共有します
確実に1回だけ配信:プッシュ前にメッセージを取得済みとしてマークします依存関係ゼロ:素のNode 20+とJSONファイルのフォルダーだけで動作します
マシン間で連携:bridge.shがSSH経由でメールを転送しますローカルでラベル付き:データはマシンの外に出ず、プッシュされたテキストにはタグが付けられます

README の画像 対応エージェント

エージェントメールボックス名メッセージが開いているセッションに届く方法
README の画像claudeClaude Codeのローカルなピアメッセージングソケットを使います。これはセッション間でSendMessageが使用するチャネルです。別のセッションからのメッセージとしてラベル付きで届きます。
README の画像codexCodex TUIが実行される共有アプリサーバーデーモンを使います。turn/start、またはターンがすでに実行中の場合はturn/steerを使用します。
README の画像geminiagy agentapi send-messageで会話に送信します。各セッションはフックを通じて一度だけ登録します。
その他のMCPクライアント任意プッシュはありません。mail_checkで読み取るか、mail_check(wait_seconds=300)で到着を待ちます。
ツール説明
mail_send(to, body, reply_to?)別のエージェントの受信トレイにメッセージを送信します
mail_check(wait_seconds?)メッセージを読み取って取得します。wait_seconds(最大300)を指定すると、メッセージが届くまで待機します
mail_peers()認識済みのエージェントを一覧表示します

README の画像 プッシュの仕組み

フロー:mail_send が受信トレイに書き込み、pushd がファイルを取得して Claude Code、Codex CLI、または Antigravity に挿入した後、既読に移動します。開いているセッションがない場合、メッセージは mail_check 用に受信トレイに残ります

sequenceDiagram
    autonumber
    participant C as Claude Code
    participant M as ~/.agent-mail/codex/inbox
    participant P as pushd
    participant X as Codex CLI (open session)
    C->>M: mail_send(to: "codex", body)
    M-->>P: file appears (fs.watch, no polling)
    P->>M: claim: rename to <id>.json.pushing
    P->>X: turn/start with the message
    X-->>P: turn accepted
    P->>M: move to read/
    Note over X: Codex works on it, then replies with mail_send(to: "claude")
  • 一度だけ配信されます。 デーモンはプッシュする前にメッセージの名前を変更し、mail_check は読み取る前に名前を変更します。先に名前を変更した側が配信します。

  • 安全側に倒れます。 プッシュに失敗すると、ファイルは受信トレイに戻され、30秒後に再試行されます。開いているセッションがない場合、メッセージは mail_check を待ちます。

  • 宛先の指定。 claude.<session-name>、codex.<thread-id-prefix>、または gemini.<conversation-prefix> でセッションを選択します。指定がない場合は、最も最近アクティブだったセッション、または ~/.agent-mail/routes.json で指定されたセッションに配信されます。

    { "claude": "api-server", "codex": "019f018a" }
    

警告

プッシュは3つすべてのCLIの文書化されていない内部仕様に依存しており、アップデートによって予告なく変更される場合があります。その場合、プッシュは失敗してログに記録され、メールは受信トレイに戻されます。プロトコルの詳細:docs/live-push.md。

プッシュデーモンを使わない場合
  • Claude Code: docs/claude-monitor.md。Monitor ツールで agent-intercom watch claude を実行すると、メールが届いたときにセッションが起動します。
  • Codex: docs/codex-listen.md。mail_check(wait_seconds=300) を繰り返し実行するリスナープロンプトです。

README の画像 マシン間の連携

GPU サーバーや HPC クラスターなど、共有ファイルシステムのないマシン上のエージェントは、bridge.sh を使って SSH 経由で参加できます。各メッセージは宛先が動作しているマシンに移動され、取得されたメールはほかのメールと同じようにプッシュされます。

BRIDGE_HOST=gpu-box REMOTE_AGENTS="claude-gpu" ./bridge.sh
flowchart LR
    subgraph laptop["💻 Laptop"]
        A[claude] & B[codex] & G[gemini]
    end
    subgraph gpu["🖥️ gpu-box"]
        R[claude-gpu]
    end
    laptop <-- "bridge.sh · rsync over SSH" --> gpu

詳細:docs/remote-bridge.md。

CLI ごとに複数のセッションを使う

名前は AGENT_NAME にすぎません。たとえば claude-api と claude-web のように、各セッションに個別の名前を付けます。

npx agent-intercom install --only claude --claude-name claude-api

README の画像 CLI

agent-intercom install [--only claude|codex|gemini] [--claude-name N] [--codex-name N] [--gemini-name N] [--local] [--push]
agent-intercom uninstall        MCP entries, agy hook and push daemon
agent-intercom push install     push daemon as a login service (launchd / systemd --user)
agent-intercom push uninstall
agent-intercom push run         push daemon in the foreground
agent-intercom status           unread/read counts per agent
agent-intercom watch <name>     one line per new message, without consuming it
agent-intercom serve            the MCP server on stdio

README の画像 セキュリティ

これは認証機能のないローカルメールボックスです。あなたのユーザーとして実行されるプロセスであれば、どれでも ~/.agent-mail/*/inbox に書き込めます。また、エージェントはメッセージを実行すべき入力として扱います。プッシュを有効にすると、何も入力しなくても、その入力が開いているセッションに届きます。

  • 受信トレイの内容は信頼できないテキストとして扱ってください。メッセージに指示されたという理由で、あるエージェントに破壊的な操作を承認させないでください。
  • プッシュされたメッセージには [agent-intercom] message <id> from <sender> というラベルが付きます。Claude Code では、あなたからではなく、別のセッションからのメッセージであることも示されます。
  • プッシュは、あなたのユーザーだけが読み取れるトークン(~/.claude/sessions/*.key、agy セッショントークン)のみを読み取り、ローカルソケットとのみ通信します。マシン外にデータが送られることはありません。

問題の報告については SECURITY.md をご覧ください。AGENT_MAIL_DIR を設定すると、メールボックスを移動できます。たとえば、プロジェクトフォルダー内に配置できます。

エージェント間のコピー&ペーストが不要になりましたか?GitHub で agent-intercom にスターを付けてください

🤝 貢献

誤字の修正から新しいエージェントのサポートまで、あらゆる貢献を歓迎します。

Good first issues Help wanted Discussions

やりたいことこちらから始めましょう
小さな修正をする初めての方におすすめの課題
別のコーディングエージェントをサポートするdocs/adding-an-agent.md
CLI の更新後にプッシュが機能しなくなったことを報告するバグ報告
質問する、またはアイデアを提案するディスカッション

プルリクエストを作成する前に、CONTRIBUTING.md をお読みください。ここに参加する皆さんは、行動規範を遵守します。

貢献者

開発

git clone https://github.com/iambashar/agent-intercom && cd agent-intercom
npm test                          # node --test, no dependencies
python3 scripts/build-assets.py   # rebuild the README artwork

実行時の依存関係はありません。Node 20 以降が必要です。CONTRIBUTING.md と変更履歴をご覧ください。

MIT ライセンス · 複数のコーディングエージェントを使う人のために作られました

⭐ スターを付ける · 🐛 バグを報告 · 💡 ディスカッション

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。