Get-Concord-AI/concord-mcp
Live messaging for coding agents
Concord MCP – AIコーディングエージェント向け共有作業状態
概要 – 複数のAI搭載コーディングアシスタント(Claude Code、Codex、Cursor、Gemini CLI、Grok Build、Goose、GitHub Copilot CLIなど)が同じコードベースで作業しながら相互に通信できるようにする、オープンソースでローカルファーストの調整レイヤーです。ローカルのSQLite DBをバックエンドに持つ小さなMCP(Message-Passing Control Protocol)サーバーを実行し、ツールセット(start_work、inspect_work、update_work、transfer_work、finish_work)とフレンドリーなCLIを提供します。
重要性 – 共有レイヤーがないと、各アシスタントは分離して動作し、重複した編集、隠れた競合、コンテキストの喪失につながります。Concordはエージェントに共通の「ワークスペース」を提供し、ファイルの主張、編集前の重複検出、プロンプト/返信の交換、タスクの引き継ぎ、後でレビューするための証拠の添付を可能にします。
クイックスタート(READMEより)
# グローバルCLIパッケージをインストール
npm install -g @concord-ai/concord-mcp
# エージェントが共有したいリポジトリに移動
cd /path/to/your/repo
# ローカルのConcordワークスペースをセットアップし、MCPサーバーを登録
concord setup
concord setup は隠しディレクトリ .concord/ を作成し、サポートされている各エージェントのMCP設定ファイルを書き込み、(オプションで)エージェントがサーバーに到達できるようにする小さな「アダプター」バイナリをインストールします。再実行は安全で、ユーザーが作業する任意のリポジトリにConcordを登録する グローバルモード もサポートしています。
コアコンセプトとツール
| ツール | 機能 |
|---|---|
start_work |
エージェントが存在を通知し、ファイル/モジュールを主張し、既存の主張について警告を受けます。 |
inspect_work |
現在のワークスペース状態を読み取り、存在するエージェントをリストし、古い主張を表示し、耐久性のあるプロンプト/返信スレッドを取得します。 |
update_work |
別のエージェントにプロンプトを送信するか、保留中のメッセージに返信します。 |
transfer_work |
タスクを提供、受け入れ、拒否、または再割り当てします – 引き継ぎの基盤です。 |
finish_work |
タスクを完了としてマークし、証拠を添付します(例:HANDOFF.md、REVIEW_PACKET.md)。 |
すべての操作はバージョンガードされています。同じタスクバージョンへの同時更新は直列化され、すべての変更は追加専用の監査ログに保存されます。
サポートされているエージェント(README時点)
- Claude Code
- Codex
- Cursor
- Gemini CLI
- Grok Build
- Goose
- Google Antigravity
- GitHub Copilot CLI
- その他のMCP対応コーディングアシスタント(汎用MCPツール経由)
各エージェントには、Concordアダプターがエージェントの設定に必要な指示ファイルをどのように注入するかを説明する短い 統合ガイド(例:docs/claude-code.md)があります。
典型的なワークフロー
- セットアップ – リポジトリ(またはグローバル)で
concord setupを実行します。.concord/フォルダーにはconcord.db(SQLiteの真実のソース)と、いくつかの人間が読めるアーティファクトが含まれます。 - 主張 – エージェントAが
start_workを呼び出してsrc/app/page.tsxを主張します。Concordはその主張を記録します。 - 重複の検出 – エージェントBも同じファイルを希望します。その
start_work呼び出しは 重複 警告を返します。 - 交渉 – エージェントBは
update_workをoperation: "prompt"で使用して、エージェントAに別のモジュールを取るように依頼します。エージェントAはupdate_workをoperation: "reply"で返信します。 - 引き継ぎ – 分担が決まったら、
transfer_workを使用して新しいモジュールを正式にエージェントBに割り当てます。 - 完了 – 作業が完了したら、
finish_workがREVIEW_PACKET.mdを保存し、タスクをクローズとしてマークします。 - 検査 – 人間は
concord dashboardまたはconcord statusを実行して、誰が何に取り組んでいるか、古い主張、レビュー待ちのパケットを確認できます。
CLIスナップショット(選択されたコマンド)
concord status # エージェント、タスク、重複の概要
concord dashboard # アクティビティのライブTUIビュー
concord who # 存在するエージェントとその現在の主張をリスト
concord tasks # 追跡されたすべてのタスクを列挙
concord handoff <task-id> # 最新の引き継ぎドキュメントを表示
concord review-packet <id> # タスクのレビューパケットを表示
concord check <files...> # リストされたファイルが別のアクティブタスクによって主張されている場合、exit 1(CIフックで便利)
concord adapters status # 到達可能なアダプターがインストールされているエージェントを表示
CLIはMCPツールをミラーリングしているため、スクリプトや他のエージェントがHTTP/JSONまたはNodeパッケージを介して同じ操作を呼び出すことができます。
永続性とワークスペースのレイアウト
.concord/
├─ .gitignore # すべてをキャッチし、ワークスペースをローカルに保つ
├─ concord.db # SQLite DB – 単一の真実のソース
├─ HANDOFF.md # 最後の転送の人間が読める引き継ぎサマリー
├─ REVIEW_PACKET.md # レビュー担当者のための証拠パッケージ
├─ events.jsonl # ツールイベントの時系列ログ(1行に1つのJSON)
└─ WORK_STATE.json # 現在の作業状態のエクスポートされたスナップショット
DBはリポジトリのルート(または「グローバルモード」の場合はグローバルな場所)にあります。リンクされたGit worktreesは同じDBを共有し、複数のチェックアウト間で一貫した調整を保証します。
テレメトリーとプライバシー
Concordは 匿名の使用テレメトリー を getconcord.ai に送信します(インストールID、バージョン番号、操作名、遅延など)が、ソースコード、ファイルパス、生のメッセージ、個人識別子を送信することは 決して ありません。テレメトリーは CONCORD_TELEMETRY_DISABLED=1 または DO_NOT_TRACK=1 で無効にできます。
そうではないもの
- 自律的なコーディングエージェントやオーケストレーターではありません。
- ホスト型同期サービスではありません。すべてローカルで実行されます。
- LLM用のベクターストアやメモリDBではありません。
- コードレビューツールの代替ではありません。下流のレビュー担当者のための証拠をパッケージ化するだけです。
ライセンス
MIT(LICENSE を参照)。
結論 – Concord MCPは、複数のAIコーディングアシスタントに共有され、競合を認識するワークスペースを提供する軽量なローカルホストの調整サーバーです。エージェントが作業を主張し、重複を検出し、プロンプトを交換し、人間が仲介役を務めることなくタスクを引き継ぐことを可能にし、何が起こったかの永続的でクエリ可能な記録を保持します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト