前言¶
在 DeepSeek Harness(DSH)裏做單次「委託」時,常見做法是主代理自己拆解任務,再交給 Codex 或 Claude Code 之一去執行。分析和執行綁在同一條鏈路上,要麼規劃深度不夠,要麼執行端拿到的上下文過於籠統。若你已經在本機分別配置了 Codex 與 Claude Code,又希望會話主代理只做調度、不做讀寫,社區插件 dsh-codex-claude-pipeline(維護者 lidaqi001)提供了一種 Agent preset:由 Codex 子代理只讀分析與拆工作項,再由 Claude Code 子代理逐項落地,主代理負責傳話、覈對與彙報。下文介紹其定位、安裝方式與使用時的注意點;事實依據爲 GitHub 倉庫 README 與包清單 1.0.1。
這是什麼¶
dsh-codex-claude-pipeline 是 DSH 的 Agent preset 插件,分類上屬於工作流。新建會話時選擇模式「Codex 規劃 + Claude Code 執行」後,主代理不再親自改文件或跑命令,而是:
你 → 主代理(調度器)
├─ 1. subagent_codex ──────→ Codex(只讀分析、拆工作項)
└─ 2. subagent_claude_code ─→ Claude Code(逐項改文件、跑命令、自驗證)
← 主代理覈對、補派、彙報
與 DSH 裏另外兩種委託模式的對比如下(README 原文表格):
| 模式 | 誰負責分析和拆解 | 誰負責執行 |
|---|---|---|
| Codex 委託 | 主代理 | Codex |
| Claude Code 委託 | 主代理 | Claude Code |
| 本模式 | Codex | Claude Code |
插件通過 cordis.patch.yml 註冊專用 provider(codex-planner、claude-code-executor),並聲明依賴 @deepseek-ai/dsh-subagent-codex 與 @deepseek-ai/dsh-subagent-claude-code;dsh plugin add 會一併安裝,一般不需要再單獨啓用官方 Codex / Claude Code bundle。許可證爲 MIT;當前包要求 DSH 版本滿足 engines.dsh:>=0.2.1 <0.3.0-0。
核心功能¶
固定工作流¶
preset 的系統提示詞(complete: true)把主代理定義爲調度器,流程概括爲:
- 判斷請求類型;寒暄或對已有結果的追問直接回答,有歧義先用
ask_user_question澄清。 - 派
subagent_codex做只讀分析,輸出固定結構「結論 / 工作項 / 不確定處」;工作項宜小到一次能執行完,並標出依賴與可並行項。 - 收到規劃完成通知後再派執行;把 Codex 工作項原文完整轉交(執行子代理看不到會話歷史與規劃全文)。
- 一次只派一個工作項,無依賴的可同輪並行;對照驗收標準覈對,失敗則補派修正任務,計劃不可行則交回 Codex 重規劃。
- 彙報時區分「子代理報告完成」與「已驗證」,不聲稱主代理自己執行過命令或改過文件。
暴露的工具¶
| 工具 | 作用 |
|---|---|
subagent_codex |
規劃入口,專用 provider codex-planner |
subagent_claude_code |
執行入口,專用 provider claude-code-executor |
ask_user_question |
關鍵歧義時向用戶提問 |
todo_write |
多工作項進度(寫會話日誌) |
compaction |
長會話壓縮,避免上下文溢出 |
profile 級全局工具(如 working_directory、MCP、插件管理)對該 preset 的 Agent 仍可見;本插件目前主要靠 persona 約束主代理不去使用它們。若要硬隔離,需要額外的 Agent 級 ctx.tools.restrict() 類 gate 插件。
子代理權限¶
| provider | 默認 permissionMode | 說明 |
|---|---|---|
codex-planner |
never |
規劃側只讀;沙箱行爲以 Codex 原生配置爲準 |
claude-code-executor |
auto |
執行側由 Claude Code 分類器逐項裁決 |
兩個子代理均爲外部一次性會話:無父會話歷史、不可追加消息、結束後不可恢復,故主代理下發的任務說明必須自包含。
安裝與前置條件¶
安裝命令¶
registry 發佈後:
dsh plugin --profile <profile> add dsh-codex-claude-pipeline
本地開發時可直接指向目錄(profile 使用 link: 依賴,改完 patch 立即生效;勿移動或刪除該目錄):
dsh plugin --profile <profile> add /abs/path/to/dsh-codex-claude-pipeline
也可在 Web/Desktop 的插件頁面安裝(plugin_manager 的 install_bundle,target 爲包名或本地目錄)。安裝後須新建會話,在模式列表選擇 Codex 規劃 + Claude Code 執行;已有會話不會自動切換。
前置條件¶
- 本機 Codex 已安裝並登錄(認證與
~/.codex/config.toml以 Codex 爲準)。 - 本機 Claude Code 已登錄(
settings.json/~/.claude.json爲準;本插件不代爲登錄或改寫這些文件)。 - DSH 版本滿足上述
engines.dsh範圍。
插件以當前 DSH 進程及你所配置子代理的權限運行;安裝前建議在 GitHub 閱讀源碼與 MIT 許可證,並確認本機 Codex / Claude Code 的登錄與網絡策略符合你的安全要求。
配置¶
在 profile 的 cordis.patch.yml 中按行 id 覆蓋即可,無需改插件倉庫內文件。示例(README 原文):
- id: subagent-codex-planner
name: '@deepseek-ai/dsh-subagent-codex'
config:
providerName: codex-planner
permissionMode: never
- id: subagent-claude-code-executor
name: '@deepseek-ai/dsh-subagent-claude-code'
config:
providerName: claude-code-executor
permissionMode: auto
providerName 若修改,須與 preset 內聲明保持一致。Codex 可選 never | approve-for-me | dangerously-bypass-approvals-and-sandbox;Claude Code 可選 dontAsk | acceptEdits | auto | plan | bypassPermissions。修改後重啓 DSH,或依賴 profile 的 HMR 熱重載;preset 變更僅影響之後新建的會話。
第三方網關與 auto 模式¶
經第三方 Anthropic 網關時,Claude Code 2.1.318 起可在服務端檢查無效時回退到獨立分類器請求;更早版本可能報錯 The server-side auto mode classifier gave no verdict,導致執行子代理無法跑 Bash/Write。舊版 DSH 可在 profile 的 pnpm-workspace.yaml 中 override @anthropic-ai/claude-agent-sdk 至 0.3.318 後執行 pnpm install 並重啓;或臨時改用 bypassPermissions / acceptEdits(風險自擔)。
典型用法與驗證¶
建議的第一條任務¶
新建會話並選中本模式後,可用小任務自檢流水線,例如:要求在臨時文件中增加一行並讀回。預期行爲是:主代理先僅調用 subagent_codex;規劃結果到達後纔出現 subagent_claude_code;最終彙報寫明改動文件與驗證結果。
三層自檢(README 順序)¶
- 行激活:
plugin_manager→list_plugins,確認subagent-codex-planner、subagent-claude-code-executor、preset-codex-claude均爲enabled: true、fiberPhase: active。 - preset 已註冊:
cordis_inspect_query→Config.listConfigs(過濾@deepseek-ai/dsh-agent-preset),應能看到preset-codex-claude。 - 真實流水線:按上節小任務跑通規劃 → 執行 → 彙報。
常見故障見 README 表格(模式未出現、工具不可用、Codex 未登錄、Claude auto 與網關不兼容、規劃後未派執行等);逐項對照 list_plugins 與子代理登錄狀態排查即可。
適用場景與限制¶
適合:你已同時使用 Codex 做只讀規劃、Claude Code 做倉庫內改動與命令驗證,希望 DSH 主會話保持「調度器」角色,並把「想清楚」與「動手做」拆到兩個擅長領域的外部代理。
需注意:
- 僅有提示詞級約束時,全局工具仍可見;高安全環境需考慮 gate 插件。
- 主代理不能獨立跑測試驗收,只能依據子代理報告覈對。
- 純分析類請求可只走 Codex、不派執行;委派異步返回,persona 要求等待完成通知,不輪詢、不重複派單。
- Codex / Claude Code 的模型與網絡不由本插件管理。
卸載:
dsh plugin --profile <profile> remove dsh-codex-claude-pipeline
結尾¶
dsh-codex-claude-pipeline 把 DSH 會話收成一條可復現的雙子代理流水線:Codex 出計劃,Claude Code 按工作項執行,主代理只做傳遞與驗收敘述。DSH 生態奉行「一切皆插件」;社區目錄站 SkillHub 插件頁 與 GitHub 倉庫 爲獨立收錄,與 DeepSeek / 幻方無官方從屬關係。若你的工作流裏規劃與執行常由不同工具承擔,可按上文步驟安裝並在新會話中選用該 preset 試用。