DeepSeek Harness 插件套件:質量門控、上下文豐富與 Markdown 工具集

前言

在 DeepSeek Harness (DSH) 的開發中,管理智能體運行的知識庫健康度、上下文注入以及導航邏輯往往需要編寫大量重複的鉤子邏輯。直接在各個插件中抓取原始 hook 容易造成依賴混亂和狀態管理困難。

@catheadowl/dsh-extras 是一套 DSH 插件套件,旨在通過封裝常用的 DSH 鉤子提供可組合的基礎框架,並附帶 Markdown 工具和路由功能,解決文檔維護和上下文管理的問題。

這是什麼

這是一套由 CatheadOwl 維護的 DSH 插件集合,通過 dsh plugin add 命令一次性安裝。它將兩個常用鉤子封裝爲服務接口(ctx.gates 和 ctx.enrichment),而不是讓每個插件都直接抓取底層 hook,從而提供結構化的質量門控、上下文豐富、Markdown 文件重命名以及知識庫路由能力。

核心功能

該套件包含四個獨立可切換的模塊:

  • 質量門控框架 (gates):在回合結束時自動運行。開發者通過 ctx.gates 接口註冊門控邏輯。模塊 ID 爲 gates。
  • 上下文豐富框架 (enrichment):在 agent/pre-step 階段運行。它是一個提供者註冊表,將路徑提及轉換爲有預算限制的相關上下文。模塊 ID 爲 enrichment。
  • Markdown 工具 (markdown):提供 md_rename 工具(移動 Markdown 文件並重寫所有內部鏈接)以及 doc-link 門控,並內置了鏈接事務庫。模塊 ID 爲 markdown。
  • 知識路由工具 (routes):提供 any_nav 工具(在 Markdown 知識庫上創建路由視圖)以及麪包屑相關提供者。模塊 ID 爲 routes。

安裝與啓用

安裝需要 dsh CLI,所有運行時依賴由 DSH 主機提供。

dsh plugin add @catheadowl/dsh-extras

安裝後,所有模塊作爲一個組合行(composition row)出現。你可以通過禁用特定行來獨立控制模塊,而無需影響其他模塊。

配置與使用

禁用模塊

通過配置層禁用特定模塊:

- id: gates
  disabled: true

配置 Enrichment 超時

enrichment 模塊支持配置超時參數:

- id: enrichment
  config:
    providerTimeoutMs: 2000
    totalTimeoutMs: 5000
    renderBudgetChars: 4000

Gates 安全閥配置

gates 模塊包含一個安全閥配置項 maxConsecutiveBlocks(默認值爲 3)。當連續塊數耗盡時,門控會降級爲通過,這僅作爲安全閥,而非正確性保證。

開發與測試

若需進行二次開發或驗證代碼,可使用以下命令:

# 從倉庫根目錄運行
pnpm run build                  # 構建四個模塊庫及客戶端包
pnpm run test:gates             # 運行門控模塊的單元測試
pnpm run verify:package-face    # 驗證導出接口

注意事項

  1. 運行環境:該插件依賴 DSH CLI,且所有運行時依賴由主機提供。
  2. 狀態隔離:各模塊之間無共享狀態,可以獨立禁用,互不影響。
  3. Web 配置限制:Web 配置頁面目前僅支持 gates 和 enrichment 模塊。
  4. 文檔語言:項目根 README 爲雙語(英語 + 中文),模塊文檔和深度文檔以中文優先。
  5. 版本管理:模塊的增刪通過包版本升級和 dsh plugin update 實現。
羽毛球分组比赛记分
小程序二维码

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

小夜