Claude Code、Codex 和 Grok,同一個群組聊天

替每個 agent 安排角色、決定輪流發言的方式,讓你電腦上真正的 CLI 一起處理你的程式碼或任何問題,並且互相回應。

$ git clone https://github.com/Agentic-System-Lab/harness-relay
$ cd harness-relay
$ npm install
$ npm run dev

看一次完整流程

先新增群組,再在這個 repository 上使用自動組隊,從描述需求、得到答案到搜尋。agent 工作的片段已加速。

是你自己的 CLI,不是仿製品

Harness Relay 不會自己呼叫任何模型 API。它啟動你已經安裝的 claude、codex 和 grok,保有它們各自的工具、session 與登入狀態,把每個 agent 還沒看過的訊息交給它,再把所有內容串流到同一個聊天室。

Claude Code
claude,雙向使用 stream-json;它的權限請求會變成聊天裡的核准卡片。
Codex
codex app-server:thread、turn 與核准請求。
Grok
透過 grok agent stdio 使用 Agent Client Protocol(ACP)。

不必三個都有:任何組合都能用,各自在設定頁登入即可。

決定他們怎麼輪流發言

每個對話都有自己的規則:誰發言、什麼順序、何時結束。用 @名稱 指定成員,就只有被指定的人回覆。

第 1 輪 第 2 輪 你 Claude Code 第一個發言 [PASS] 沒有要補充 Codex 看到 Claude 的發言,接著補充 [PASS] Grok 看到前兩位,再往下推進 [PASS] 全員 PASS: 提前結束

圓桌

agent 依序發言,每位都看得到前面的人說了什麼。可設定 1 到 5 輪;某一輪所有人都回覆 [PASS] 時提前結束。

適合討論、審查,以及把答案修得更好。

第 1 輪 第 2 輪 你 Claude Code 在自己的 worktree 看到其他人的答案 Codex 在自己的 worktree 看到其他人的答案 你套用這一份 Grok 在自己的 worktree 看到其他人的答案

平行

每一輪大家同時、各自獨立回答;下一輪才看得到彼此的答案。可編輯時每個 agent 在自己的 git worktree 工作,再由你選擇要套用哪一份結果。

適合比較不同做法、取得獨立的意見。

你 Claude Code 「@Grok,換你了」 Codex 沒有 @ 任何人 Grok 「@Codex,交給你」 發言權 回到你手上

接力

一次一位發言。agent 用 @名稱 把發言權交給隊友;沒有 @ 任何人時,就交還給你。你可以設定最多交棒幾次。

適合流水線:規劃、實作、審查。

自己設計團隊,或交給首席 agent

自己設計。替每個 agent 決定定位(架構師、實作者、審查者、魔鬼代言人),選擇模型與推理強度,並安排發言順序。最多八位成員,同一個 CLI 也可以有好幾位;對話中也能隨時修改角色。

或使用自動組隊。描述你的需求,首席 agent 會讀它與所有範本的完整內容,再決定直接套用範本、依範本調整,或從頭設計新團隊,並說明原因。你確認後才有人開始回答,它設計的團隊也能存成範本。

內建範本
自動組隊 你先確認

首席 agent 依你描述的需求,挑選或設計團隊。

架構師 → 實作者 → 審查者 接力 · 可編輯

Claude 規劃、Codex 實作、Grok 審查,用 @ 互相交棒。

三方辯論 圓桌 × 2 · 唯讀

提案、挑戰、收斂,適合技術選型與設計討論。

平行解題比較 平行 · 唯讀

三個 agent 同時、獨立解同一個問題,方便比較。

一般問題智囊團 圓桌 · 唯讀

不限寫程式:分析、查核、整合成一個清楚的答案。

結對程式 + QA 圓桌 · 可編輯

Navigator 指路、Driver 寫碼、QA 寫測試並驗證。

主導權在你手上

agent 依你為這個對話設定的權限工作;超出範圍的事,會在聊天裡問你,並等你回答。

@Skeptic Grok 第 1 輪
@Skeptic 想執行指令等你決定
npx tsx -e "import { mentionsInMarkdown } from './src/shared/mentions.ts'; …"
允許本對話都允許「npx tsx」拒絕

在聊天裡核准

允許一次、本對話都允許,或拒絕並附上說明,告訴它改做什麼。

@Architect Claude Code

比較方案之前想先確認:舊的 /v1 API 一定要繼續能用嗎?還是可以不相容?

等你回答

先問你,不亂猜

好答案取決於只有你知道的事時,agent 會先問你,團隊停下來等;你回覆後,提問的 agent 先依你的回答作答。

@Builder Codex 在 worktree
  • Msrc/server/orchestrator.ts+42 −7
  • Msrc/server/prompt.ts+12 −3
  • Atest/relay.test.ts+88
查看這回合 diff套用到工作目錄

每次改檔都是一份 diff

工作目錄會自動成為 git repository,每則回覆都列出該 agent 改了哪些檔案。平行模式中每個 agent 都有自己的 worktree,直到你選擇套用其中一份。

也檢查一下 agent 沒有 @ 任何人時會怎樣。 編輯撤回
插話給團隊…停止

回覆中也能插話

團隊回覆時送出的訊息會先停在輸入框上方,在下一位 agent 發言前送到。送到之前可以編輯或撤回,也可以停止團隊、立刻送出。

以上畫面依 app 介面重現,內容為示意。

每個對話都有

  • 附加檔案直接貼上截圖或拖曳檔案,每個 agent 都拿得到,圖片也會直接交給三種 CLI 看。
  • 語音輸入,在你的電腦上whisper.cpp 在本機把語音轉成文字;不需要就不會安裝。
  • 看見思考與動作推理過程、計畫與每個工具的輸出即時串流;Mermaid 程式碼區塊會畫成圖表。
  • 複製、編輯與重試把一則訊息或整段對話複製成 Markdown;編輯自己的訊息或重試某則回覆,團隊就從那裡重新回答。
  • 狀態一目了然側邊欄標示需要你處理、正在回覆或有新回覆的對話;切換到別的對話時,原本的對話會繼續執行。
  • 在 app 裡登入每個 CLI 都能用裝置碼、瀏覽器或貼上授權碼登入,也能設定 API key、執行檔路徑與預設模型。
  • 聊天室裡的圖片與影片agent 存在工作目錄裡的圖片與影片,會直接顯示在對話中。
  • English 與繁體中文介面跟著瀏覽器的語言,第一次開啟時有使用導覽。

完全在你的電腦上執行

沒有任何雲端服務。伺服器只在你的電腦上監聽,agent 的回覆也無法讓瀏覽器載入遠端內容。

  • 只綁定 127.0.0.1,並拒絕跨站請求。
  • 每個改檔的回合都有 git 快照;平行模式的 agent 在各自的 worktree 工作。
  • API key 存在作業系統的憑證儲存區:macOS 鑰匙圈、Windows 認證管理員或 Secret Service。
  • 所有對話都存在一個 SQLite 檔案裡。
檔案權限,每個對話分別設定
唯讀 讀檔、搜尋與上網查資料。
可編輯 也能修改工作目錄內的檔案,並執行測試、建置等專案指令。不包含推送與發佈。
完全存取 什麼都能做,不再詢問。請只在可信任的目錄使用。

可編輯模式不會把專案程式碼放進沙箱:測試與腳本執行的程式碼,agent 也能修改。面對不信任的程式碼或指示,請使用唯讀。

快速開始

  1. 安裝需要的工具

  2. 下載並啟動

    $ git clone https://github.com/Agentic-System-Lab/harness-relay
    $ cd harness-relay
    $ npm install
    $ npm run dev
  3. 登入,然後開始聊天

    打開 http://localhost:5173,在「設定與登入」確認每個 agent 都已登入,再按「新對話」:選擇自動組隊、自行設計,或挑一個範本。

想用單一程序執行:先執行 npm run build,再執行 npm start,就會在 http://127.0.0.1:8787 提供整個 app。