前言¶
在做 DSH 自動化時,常見的問題不是“有沒有工具”,而是“這個能力現在到底能不能用”。同一個任務,可能底層已有官方 DSH 工具,但它未必在當前 profile 中掛載、未必對 Agent 可見、也未必滿足 provider 條件。
cyanseek/dsh-native-playbook 是一個面向 DeepSeek Harness 的社區插件。它提供一個 native_capability 工具,將任務路由到官方 DSH 工具,檢查完整能力是否 operational,並在可能時安全激活已審覈的 native path。
它適合在安裝另一個插件之前,先檢查 DSH 是否已經有可用的原生路徑。
這是什麼¶
dsh-native-playbook 是一個 task-aware native capability manager。它圍繞 DSH profile 做能力檢查、激活規劃和驗證。
維護者是 cyanseek,許可證爲 MIT。項目要求 Node.js 22 或 24,以及 DeepSeek Harness。它明確標註爲社區擴展,未與 DeepSeek 關聯或獲得其認可。
當前支持的 DSH 安裝路徑是 GitHub 命令;npm 包名保留給後續發佈。
核心功能¶
將任務路由到官方 DSH 工具¶
插件提供 native_capability 工具。它的重點是先判斷任務是否應走 DSH 自帶能力,而不是直接新增一套外部工具。
檢查能力是否 operational¶
它會檢查完整能力是否 operational,並報告以下生命週期事實:
shippedmountedvisibleproviderReadyoperational
這些事實用於區分“目錄裏有”“profile 裏掛了”“Agent 當前能看到”“provider 條件滿足”和“現在可用”。
覆蓋常見任務路徑¶
它支持以下常見任務路徑:
- 後臺命令
- 符號導航
- 先前會話搜索
- 委派調查
- 固定多步工作
安全激活已審覈 native path¶
在可能時,它會安全激活已審覈的 native path。激活面較窄:
- 只限本倉庫中已審覈配方
- 需通過顯式 DSH 版本兼容門
- 當前已驗證激活目標爲 DSH
0.1.0-rc.6 - 變更需通過 DSH 檢查且可逆
- 驗證失敗會保留原 profile
- 停用會恢復保存內容,並拒絕覆蓋後續用戶編輯
提供 CLI 和 Node API¶
它提供 dsh-native CLI 命令,包括:
lookup
status
list
explain
doctor
install
plan
activate
deactivate
verify
它也提供 Node API,例如:
inspectDshProfilelookupNativeCapabilityplanNativeActivation
提供 Agent Skill 安裝方式¶
除了 DSH 插件安裝,它還提供 Agent Skill 安裝方式,用於把相同的原生優先指引接入 agent 工作流。
安裝與啓用¶
將插件安裝到 DSH profile:
dsh plugin --profile web add github:cyanseek/dsh-native-playbook
如果你需要以 Agent Skill 方式安裝:
npx skills@latest add cyanseek/dsh-native-playbook --skill dsh-native-playbook --agent codex --yes
移除插件:
dsh plugin --profile web remove dsh-native-playbook
典型用法¶
下面以 web profile 爲例。
查詢某個任務應該走哪條 native path:
dsh-native lookup "<task>" [--profile <name>] [--json]
查看某個 profile 的狀態:
dsh-native status --profile web --json
爲 session_search 生成激活計劃:
dsh-native plan session_search --profile web --json
在 Node 代碼中,也可以先檢查 profile,再查詢能力和生成計劃:
import {
inspectDshProfile,
lookupNativeCapability,
planNativeActivation,
} from 'dsh-native-playbook'
const profile = await inspectDshProfile({ profile: 'web' })
const result = await lookupNativeCapability('run a long test in background', { profile })
const plan = await planNativeActivation('session_search', { profile: 'web' })
經過上面的步驟,你可以先拿到“當前是否可用”和“準備激活什麼”的事實,再決定是否執行 activate 或 verify。
適用場景與注意¶
適合:
- 想在添加另一個插件前,先確認 DSH 是否已有可用能力
- 需要把
shipped、mounted、visible、providerReady、operational分開檢查 - 需要對
session_search等已審覈路徑做plan、activate、deactivate、verify - 希望以 JSON 輸出進行自動化檢查
需要注意:
- 它要求 Node.js 22 或 24 以及 DeepSeek Harness
- 靜態查找可以不需要 DSH;即時就緒檢查需要已有 DSH profile
- 它不收集遙測;API 不訪問憑據存儲或私有會話內容
- 激活只限已審覈配方,並受顯式 DSH 版本兼容門約束
- 插件以當前 DSH 進程權限運行,安裝前應檢查源碼、許可證和已審覈配方
- 它是社區擴展,未與 DeepSeek 關聯或獲得其認可
結尾¶
dsh-native-playbook 的價值,是把“能不能用、要不要啓用、如何回退”拆成可檢查的步驟:先 lookup,再 status,再 plan,然後在版本兼容、可驗證、可回退的前提下 activate。
項目 GitHub:https://github.com/cyanseek/dsh-native-playbook
目錄頁線索:https://www.skillhub.cn/plugins/cyanseek/dsh-native-playbook