dsh-ai-pm:把 pm-scaffold 的 PRD 工作流接入 DeepSeek Harness

前言

在 DSH「一切皆插件」的思路下,讓 agent 起草一份 PRD 並不難,難的是起草之後的環節:AI 的推斷容易混進事實、沒有人明確拍板、上游需求一變下游產物無從感知。常見的做法是讓模型一次性輸出完整文檔,寫完即交付,中間沒有狀態記錄,也沒有確認動作。下面介紹的 dsh-ai-pm 針對的就是這個問題:它把上游 pm-scaffold 的 PRD 工作流接入 DeepSeek Harness,agent 負責起草,確認權留給真實評審人。

這是什麼

dsh-ai-pm 由 konwait12 維護,MIT 許可,package.json 版本 0.1.0。一句話定位:把 pm-scaffold 的 PRD 工作流接入 DeepSeek Harness——agent 側提供 ai_pm_* 模型工具(init/status/entry/gate/reflow/skill/artifact),GUI 側(設置 → 插件 → AI-PM)提供需求看板與不可繞過的人工確認閘門。

插件對上游的改動集中在殼層:殼只包含 package.json、cordis.patch.yml 和 lib/,上游 pm-scaffold 的 src/、skills/、docs/、test/、AGENTS.md 原樣保留,升級上游時直接替換即可。它是一個 web 平臺客戶端(package.json 中 dsh.client.platform 爲 web),通過 cordis.patch.yml 打補丁接入。

核心功能

Agent 側:ai_pm_* 模型工具

安裝後,agent 獲得 init、status、entry、gate、reflow、skill、artifact 七個 ai_pm_* 模型工具,覆蓋初始化、狀態查看、入口判定、機器閘門、變更迴流等動作,對應命令見下文典型用法。review 不在這組工具裏——確認動作不暴露給模型。

GUI 側:需求看板與人工確認閘門

GUI 入口在設置 → 插件 → AI-PM,提供需求看板。閘門規則是硬性的:機器閘門只能產出 ready_for_human_review,confirmed 只能由 GUI 中真實評審人產生,AI 不得產生 confirmed。

來自上游 pm-scaffold 的工作流機制

插件原樣接入上游的幾項核心機制:

  • 六態知識標註:每條聲明標註 FACT(事實)/ DECISION(人類拍板)/ ASSUMPTION(假設)/ AI_INFERENCE(AI 推斷)/ UNKNOWN(未知)/ CONFLICT(衝突)。
  • 雙向可追溯與變更閉環:reflow 在上游變更時級聯失效下游並回流重跑。
  • B3 每階段強制收口與入口探索:entry 按材料內容做 L0-L4 判定。
  • 19 個 Skill(5 主 + 9 子 + 4 分支產物 + 1 能力),每個工作項走 8 步循環:Preflight → Intake → Think → Clarify → Generate → Audit → Human Gate → Commit/Reflow。

安裝與啓用

環境要求:Node >= 20.18(package.json 的 engines 字段),peerDependencies 爲 @deepseek-ai/dsh-tools ^0.1.0-rc.6;上游核心腳本要求 Python 3.10+,僅依賴標準庫。

先從 GitHub 倉庫取下源碼到本地,再執行官方安裝命令(它接收本地目錄路徑):

dsh plugin --profile web add ./ai-pm

備選方式是把插件複製到 ~/.dsh/profiles/web/node_modules/。兩種方式裝完後,重啓 dsh web,或點 dsh-quick-refresh ⟳ 熱應用。

典型用法

從骨架到人工確認

先做初始化,再逐級推進:init 建需求骨架,原始材料放進 00-input/,之後用 status 看進度、entry 做入口判定、gate 跑機器閘門,最後由真實評審人執行 review。

# 初始化需求骨架
python3 src/scripts/pipeline.py init REQ-NNN-my-feature

# 查看狀態
python3 src/scripts/pipeline.py requirements/REQ-NNN-my-feature status

# 入口判定(L0-L4)
python3 src/scripts/pipeline.py requirements/REQ-NNN-my-feature entry

# 機器閘門
python3 src/scripts/pipeline.py requirements/REQ-NNN-my-feature gate --work-item project-background-goal

# 人工確認(review 不暴露爲模型工具,由真實評審人執行)
python3 src/scripts/pipeline.py requirements/REQ-NNN-my-feature review \
  --work-item project-background-goal --decision approve \
  --reviewer "評審人姓名" --reviewer-id "飛書或組織穩定用戶ID" \
  --reviewer-role "business_owner"

review 的 –reviewer、–reviewer-id、–reviewer-role 缺一不可,且必須與 00-input/authorized-reviewers.json 裏的登記逐項匹配。機器閘門到 ready_for_human_review 爲止,confirmed 只能由這一步產生。

變更迴流

上游材料變化後,先跑 reflow 做預演,確認影響範圍再加 –apply 執行級聯失效迴流:

python3 src/scripts/pipeline.py requirements/REQ-NNN-my-feature reflow

加 –apply 後才真正寫入,失效的下游產物會迴流重跑。

入門材料與迴歸驗證

open src/toolkit/visualization/scaffold-flow.html
bash run_tests_mac.sh

第一條打開上游的可視化駕駛艙,作爲項目入門材料;第二條做全量回歸驗證,適合在接入或改動後跑一遍。

適用場景與注意

適合在 DSH web profile 上做產品需求工作的開發者或產品團隊,尤其是需要「AI 起草、人拍板」有硬約束、PRD 條目可追溯、上游變更能級聯處理的場景。

幾點注意:

1、插件以當前 dsh 進程的權限運行,安裝前應自行檢查源碼與許可證(本項目爲 MIT)。
2、requirements/ 目錄運行時生成且被 gitignore——每個用戶的需求是自己的,用 init 隨時重建。
3、agent 側工具命名存在兩處表述:README 稱 ai_pm_* 模型工具,package.json 描述稱 pipeline 模型工具,以實際實現爲準。
4、人工閘門是有意設計:agent 無法代替評審人完成確認,接入前先在 00-input/authorized-reviewers.json 登記評審人。

小結

dsh-ai-pm 做的事情不復雜:把一套帶六態標註、人工閘門與變更迴流的 PRD 工作流裝進 DSH,agent 負責起草與檢查,確認權留在真實評審人手裏。如果你的 PRD 流程同樣需要這層約束,建議先讀源碼再決定是否接入。

  • 插件目錄頁:https://www.skillhub.cn/plugins/konwait12/dsh-ai-pm (第三方社區目錄,與 DeepSeek / 幻方無官方從屬關係,目錄將其歸入「工作流」分類)
  • GitHub 倉庫:https://github.com/konwait12/dsh-ai-pm
羽毛球分组比赛记分
小程序二维码

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

小夜