DeepSeek Harness 插件 dsh-ulw-plan:omo explore → plan → execute 工作流

前言

智能體在處理複雜任務時,常常需要在“探索信息”“規劃步驟”和“執行落地”之間反覆切換。omo(oh-my-openagent)提出了 explore → plan → execute 的三段式工作流,但它的實現與 DeepSeek Harness 的架構差異較大,直接移植會破壞 Host 的運行時契約。

dsh-ulw-plan 把 omo 的這套流程封裝爲一個 DeepSeek Harness 插件,保留了探索、規劃與執行的核心能力,同時適配 DSH 的插件機制、工具面與 guard 邏輯。

這是什麼

dsh-ulw-plan 是一個工作流插件,爲 DSH 提供 omo 的 explore → plan → execute 流程。插件把 omo 的規劃、評審與執行能力映射到 DSH 的指令、只讀助手與產物目錄中,並提供一個 plan-mode 的寫入門禁,避免在規劃階段誤改產品文件。

維護者爲 beiyanpiki。插件採用零依賴、零構建的 ESM bundle,通過 cordis.patch.yml 掛載到 Host 平面。

核心功能

插件提供兩個指令和四個只讀助手,以及一套產物目錄與 guard 機制。

兩個指令

  • /ulw-plan <請求>:進入 plan 模式,助手進行只讀探索,產出 decision-complete 的 plan。產物寫入 .dsh/ulw/ 下的 drafts 與 plans。
  • /ulw-execute [plan-name]:進入 execute 模式,按 plan 的 checkbox 派發實現者(task(category="…")),用 Boulder / ledger 記錄狀態。

四個只讀助手

助手 用途 工具面
explore 代碼庫定位、調用點、結構 只讀:read / glob / grep + bash
librarian 外部文檔、遠程倉庫、官方鏈接 上述 + web_search / web_fetch
plan-consultant(別名 metis) 規劃前諮詢:隱藏意圖、歧義、AI 失敗點 只讀
plan-reviewer(別名 momus / oracle) 嚴格 plan 評審:只找 blocker 只讀

四個助手以 preset 形式註冊在 Web 的預設選擇器裏,名字前綴 omo。它們沒有 write / edit 工具,只讀是工具面事實。

產物目錄

  • .dsh/ulw/drafts/<slug>.md
  • .dsh/ulw/plans/<slug>.md
  • .dsh/ulw/boulder.json
  • .dsh/ulw/ulw-execute/ledger.jsonl

路徑與 omo 的 .omo/ 同構,只做了目錄改名。

plan-mode 寫入門禁

規劃期(mode = plan)拒絕 write / edit 寫入產品文件,只放行 .dsh/ulw/ 產物;產品文件寫入會被 guard 拒絕,並提示退出方式。

顯式模式切換

/ulw-mode off|plan|execute 是 omo 沒有的逃生口,可以顯式切換本會話的 ulw 模式。Web 輸入 / 也能看到 /ulw-plan 與 /ulw-execute 的菜單項。

安裝與啓用

插件是零依賴、零構建的 ESM bundle,通過 npm 分發。

從 npm 安裝

在 Web GUI 的 Plugins 頁安裝 dsh-ulw-plan,或通過 Host 的 plugin_manager:

plugin_manager { "action": "install_bundle", "target": "dsh-ulw-plan" }
plugin_manager { "action": "set_bundle", "target": "dsh-ulw-plan", enabled: true }

也可以從 tarball、GitHub 或本地目錄安裝:把 target 換成 /絕對路徑/dsh-ulw-plan-0.1.0.tgz、github:<owner>/dsh-ulw-plan#<ref> 或(開發時)本倉庫的檢出目錄。

安裝後,profile 的 package.json 會把 dsh-ulw-plan 放進 dsh.profile.bundles,cordis.patch.yml 的 insert 行把 dsh-ulw-plan 掛到 Host 平面。不要手動修改 profile 的 package.json / cordis.patch.yml,也不要在 profile 目錄跑 pnpm。

完整發布流程見 docs/publishing.md。

典型用法

進入 plan 模式

在一個普通會話裏鍵入 /ulw-plan,技能正文被注入,會話進入 plan 模式。首行必須出現 ULW-PLAN MODE ENABLED!。助手只做只讀探索(explore / librarian,以及規劃期的 plan-consultant / plan-reviewer),產物只寫 .dsh/ulw/。

進入 execute 模式

鍵入 /ulw-execute [plan-name],技能正文被注入,會話進入 execute 模式。系統按 plan 的 checkbox 派發實現者(task(category="…")),並用 Boulder / ledger 記錄狀態。

顯式切換模式

在任意會話中鍵入 /ulw-mode off|plan|execute 可以顯式切換 ulw 模式。也可以直接敲 /ulw-plan 或 /ulw-execute 自然進入對應模式。

安裝後檢查清單

安裝完成後,可以通過以下命令確認插件已正確掛載:

  1. dsh --profile web --dump-config | grep dsh-ulw-plan —— 至少一行。
  2. cordis_inspect_query Config.listConfigs name=dsh-ulw-plan —— 出現該行且爲 active。
  3. cordis_inspect_query Tool.listTools —— 含 task。
  4. skills/list —— 含 ulw-plan、ulw-execute,且 invocation.userInvocable === true。
  5. agentPresets.list() —— 含四個 omo 前綴 preset,均無 broken 字段。
  6. Web 輸入 / —— 菜單裏能看到 /ulw-plan 與 /ulw-execute。

與 omo 的差異

插件與 omo 的行爲差異在 docs/fidelity.md 中有完整清單,要點如下:

  1. task 一律內聯;不實現後臺投遞。
  2. 沒有 task_output / task_send / task_cancel;用 DSH 的 send_message / interrupt_agent / 結算通知。
  3. 沒有 continuation hook;用 create_goal 承擔續跑。
  4. category 不選模型。
  5. plan-gate 的“本會話觸碰過 plan”簡化爲“mode=plan 且產物存在”。
  6. 新增 /ulw-mode。
  7. guard 不管 bash(與 omo 的 prometheus-md-only 一致,否則 scaffold-plan.mjs 無法產出文件)。
  8. 模型用 skill 工具自行加載 ulw-plan 不會切換模式;進入 plan 模式請用 /ulw-plan 或 /ulw-mode plan。

適用場景與注意

適合需要結構化規劃與執行落地的 DSH 用戶,尤其是希望複用 omo 工作流但又希望在 DSH 平臺上運行的場景。

插件以當前 dsh 進程權限運行,安裝前建議檢查源碼與許可證。不要手動修改 profile 的配置文件或目錄。

結尾

dsh-ulw-plan 把 omo 的 explore → plan → execute 工作流適配到 DeepSeek Harness,提供了一套可落地的規劃與執行機制。如果你在 DSH 上需要更清晰的任務拆解與執行記錄,可以嘗試這個插件。

目錄頁:https://www.skillhub.cn/plugins/beiyanpiki/dsh-ulw-plan
GitHub:https://github.com/beiyanpiki/dsh-ulw-plan

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜