前言¶
在 DeepSeek Harness(DSH)裏做多角色協作,常見做法是主控加若干子 Agent,各自用同一套模型與工具。若你還本機安裝了 Codex、Gemini CLI、Claude Code 等編程 CLI,往往會遇到另一層問題:專業分工(Oracle、Explorer、Fixer 等)和「用哪條 CLI 執行」被拆成兩個插件或兩套配置,交接靠複製粘貼,會話也難以按項目與 Lane 續接。
Oh My CoHarness(OMC)由社區維護者 PengYangchao0808 發佈,歸類爲工作流插件。它把 Orchestrator 與專業角色保留在一個 Bundle、一個默認 Preset 裏,同時讓每個角色通過 role.execution 選擇 DSH 原生子 Agent 或已安裝的外部 Harness。下文介紹其定位、已覈實能力、安裝方式與典型用法。
這是什麼¶
OMC 當前倉庫版本爲 0.5.0-alpha.2-practice.5(package.json 中 private: true,屬 0.X 內部驗證階段,首次 npm 公開發布規劃在 1.X)。一句話定位:Install once and let the AI coding CLIs you already use work together inside DeepSeek Harness——裝一個插件,在 DSH 內統一編排;外部 CLI 由 OMC Provider 發現與派發,並配合 Doctor 做可覈對診斷。
合併後用戶只需安裝 oh-my-coharness,不再需要同時掛載 oh-my-dsh-slim 與 oh-my-coharness。未配置外部 CLI 時,原生角色行爲與 OMD v0.8.6 一致。
架構與設計原則¶
DSH Desktop / Web / CLI 加載插件後,主控 Orchestrator 調度 Oracle、Explorer、Fixer、Designer、Librarian 及 Council(alpha / beta / gamma + 原生 synthesizer)。每個角色可選:
- DSH Native:spawn / fork,受 DSH 權限與子 Agent 生命週期約束;
- External:
omc:<harness>,Provider 固定只讀(Designer 外部爲 patch 模式,產出 diff 由原生 Fixer 落地)。
六條原則在 README 中寫得很清楚:Runtime 歸 DSH;只有一個 Orchestrator;角色與 Harness 解耦;交接一律經主控、無 Agent 消息總線;前端仍是一套設置卡,只增加執行後端選擇。
核心功能(資料已覈實部分)¶
角色與執行後端¶
| 角色 | 默認後端 | 可切外部 CLI | 說明 |
|---|---|---|---|
| oracle / explorer | native | 是 | 只讀分析與偵察 |
| fixer / librarian / council 合成器 | native | 否 | 寫入或 MCP 依賴須留在 DSH |
| designer | native | 是(patch) | 外部只返回 unified diff |
| councillor-* | native(默認關) | 是 | Council 獨立席位 |
backend 僅 native 與 omc;harness 爲 CLI id(如 codex、gemini、antigravity、opencode、kimi、claude、glm)。fallback 默認 fail,Provider 缺失時工具顯式失敗,不靜默回退 native。
外部只讀分 enforced、advisory、unsupported 三檔;advisory 需配置 allowAdvisory: true 纔可用於只讀角色。
v0.5:任務交接、會話與效率¶
- Handoff:委派 Brief 攜帶
taskId、projectId、laneId、變更文件與驗收條件,不含完整對話;帶進程內 HMAC,防止僞造續接。 - Session Registry:會話鍵保存在
~/.dsh/oh-my-coharness-sessions.json,由 project、Lane、角色、Harness、模型、工作區、端點等共同決定;/coharness sessions查看引用,--clear僅清除 OMC 引用。 - practice.5 增量(2026-11-03):跨進程請求預算閘門、原生子 Agent 綁定工作圖節點、會話續接/排隊/壓縮策略日誌;外部 CLI 按 dispatch 入賬,到額在啓動 CLI 前拒絕;設置卡可編輯
efficiency(模式、請求/任務/費用上限與強制執行)。practice.5爲實踐增量,非完整 alpha.2 發佈閘門。
原生多模型 Demo(不接外部 CLI)¶
重啓 DSH 後可用(插件每宿主進程只加載一次):
/coharness fleet # 預覽角色 → provider/model
/coharness fleet --apply # 寫入配置(先備份)
/coharness demo # 應用 fleet + 生成 demo 工作區 + 打印 prompt
/coharness status # 覈對 native 角色釘住的模型與腳註(閘門、預算等)
診斷與遷移¶
/coharness doctor # 不聯網、不調模型;CLI 發現、Provider、只讀等級、是否仍掛舊 OMD
/coharness status # 角色 → 後端映射
/coharness migrate # 預覽舊配置遷移
coharness 工具還提供 tasks/result/cancel、持久化編排(graph、send/inbox 等),契約見倉庫 docs/。
安裝與啓用¶
要求:Node ≥ 20,DSH >=0.2.1-rc.2 且 <0.3.0-0(見 package.json 的 engines.dsh)。
| 場景 | 做法 |
|---|---|
| DSH Desktop | Plugins 界面安裝 oh-my-coharness,或本地安裝插件目錄 |
有 dsh CLI |
見下方命令 |
| 本地開發 | 通過 plugin_manager 的 install_bundle,target 爲倉庫絕對路徑 |
CLI 安裝命令(摘自 GitHub README「安裝」一節):
dsh plugin --profile add oh-my-coharness@0.5.0-alpha.2-practice.1
裝完後必須重啓 DSH。升級前應先卸載舊版 oh-my-dsh-slim,避免兩套角色入口同時掛載;v0.4 Doctor 會報告 legacy preset: oh-my-dsh-slim is STILL mounted。
典型配置¶
配置文件路徑:~/.dsh/oh-my-coharness.json,或在 設置 → Oh My CoHarness 編輯(保存走 OMD 原有 revision 衝突保護)。
角色 execution 示例:
{
"roles": {
"oracle": {
"execution": { "backend": "omc", "harness": "codex", "fallback": "fail" }
},
"explorer": {
"execution": { "backend": "native" }
},
"fixer": {
"execution": { "backend": "native" }
}
}
}
會話策略示例(同 README):
{
"sessions": {
"enabled": true,
"resumePolicy": "auto",
"maxTurns": 24,
"idleTtlMs": 604800000,
"allowUnverified": false
}
}
第一次使用建議先執行 /coharness doctor,再按需改角色後端或跑 /coharness fleet 原生演示。
適用場景與注意¶
適合誰: 已在 DSH 中使用或計劃使用 OMD 式多角色工作流,並希望在同一 Preset 裏把部分只讀角色交給本機 AI 編程 CLI,同時保留 Fixer 等在 DSH 內寫入;需要 Lane 級會話續接與 Handoff,而不是手工拷貝上下文。
務必知曉:
- 插件以當前 DSH 進程權限運行;外部 CLI 不在 DSH sandbox/approval 之內,
enforced只讀依賴 CLI 自身沙箱,advisory僅爲約定。 - 安裝前應閱讀倉庫源碼與 MIT 許可證(
LICENSE),以及docs/DSH-CONTRACT-LIMITS.zh-CN.md中的宿主契約限制。 - 0.X 爲內部技術驗證路線,能力以 README 與
docs/REMAINING-AUDIT.zh-CN.md爲準,路線圖不構成未實現能力的承諾。 - 社區目錄 SkillHub 插件頁 與 GitHub 無 DeepSeek / 幻方官方從屬關係;DSH 生態遵循「一切皆插件」理念。
結尾¶
經過上面的步驟,可以把「誰來做」(Orchestrator 與專業角色)和「在哪做」(DSH Native 或 omc:* CLI)收攏到一個插件裏,並用 Doctor、status 與預算閘門做可覈對的運行態。
- 目錄頁:https://www.skillhub.cn/plugins/PengYangchao0808/oh-my-coharness
- 源碼與文檔:https://github.com/PengYangchao0808/oh-my-coharness