grok-plugin-codex — 在 Codex 裏使用 Grok
- TypeScript
- Node.js
- MCP
- Codex Plugin
- Grok CLI
- Vitest
一個公開的 Codex plugin,讓 Codex 在不交出隱藏上下文的前提下,調用本機 Grok CLI 執行限定範圍的代碼任務、審查、故障診斷、對抗式檢查、工作階段檢視與背景工作。
項目概覽
角色 獨立開發者 — Codex plugin 打包、MCP tool surface、Grok CLI 編排、隱私邊界、背景任務、測試
場景
Grok 可以提供另一個工程視角,但手動切換工具會讓 scope、session history 與審查責任變得難控。這個項目的目標,是讓 Codex 能請 Grok 協助,同時仍由 Codex 掌握文件、測試、git 與最終判斷。
產品策略
我把 Grok CLI 包成 Codex 裡的 MCP 工具,加入能力檢查、受控 run / review / rescue 包裝、session 列表與匯出、背景任務 status / result / cancel,以及針對隱藏 context 與 private runtime paths 的明確保護。
成果與當前階段
公開 Codex plugin · 0.3.0,在 typed MCP 介面上報告 contract version 3,並帶 explicit workspace roots · Codex 內的 Grok review 與 rescue · 受控第二 agent 工作流
我的工作
- Codex plugin 暴露十三個 Grok MCP 工具:check、models、run、continue、finalize、rescue、review、adversarial review、sessions、export、status、result、cancel
- 受控 review 與 rescue helper,讓 Grok 可以作為第二雙眼睛,但不成為改動 owner
- Background Grok job 管理,包含 status / result / cancel,讓長時間 review 可先檢查再採信
- typed MCP contract 讓 session 列表與匯出可供檢查;目前的協作路徑以這些明確 evidence surfaces 為終點
- 0.3.0 在該基線上繼續:background dispatch 成為預設,grok_finalize 加入工具面,每個未完成結果都帶機器可讀的 recovery handle;prompt staging 也離開了 /dev/fd/3 — Linux 會經 /proc/self/fd 解析它,可能交給 Grok 一個已被消費的空流,因此 prompt 現在走一個私有目錄裡的 0600 FIFO,並在 Grok 讀取前就 unlink
技術證據
- TypeScript 編寫的 bundled stdio MCP server,打包為 Codex plugin,包含 plugin manifest、skill、MCP config、privacy policy、terms 與 security policy
- Grok CLI 發現、版本檢查、可選 model probing、foreground JSON run、streaming background run、job ledger,以及保守的 result completion 判定
- 按設計收窄隱私邊界:Grok 接收任務 prompt 與已批准文件;Codex hidden context、tool output、secrets 與 auth tokens 留在各自來源中,private runtime paths 則需要明確許可
- 驗證腳本覆蓋 build、typecheck、unit tests、MCP smoke checks、documentation drift checks,以及可選的 authenticated live Grok smoke
為什麼做它
實際用途是可控協作。Codex 可能已經深入一個 repo,需要另一個模型幫忙 review diff、診斷失敗或挑戰假設。這個 plugin 給 Grok 一個清楚任務包,但 scope、驗證與是否交付仍由 Codex 負責。
對非技術讀者來說,它提供的是一套更安全的第二意見流程:Grok 補充另一個工程視角,Codex 繼續主導,每項發現都經檢查後才進入代碼改動。
受控的 Grok 協作
流程先用 grok_check 確認本機 Grok CLI。grok_run 處理受控任務;grok_review、grok_rescue 與 grok_adversarial_review 返回聚焦的 findings 或 diagnosis,再由 Codex 驗證。
背景任務成功結束並返回最終文本後,結果才進入可用狀態;partial logs 則保留為可見的進度證據。