前言¶
DSH 的核心理念是“一切皆插件”。在開發插件時,開發者常面臨權限邊界不清的問題:哪些數據通道是官方支持的,哪些是未文檔化的繞行方案,哪些操作在物理上是不可行的。dsh-plugin-boundary 插件通過打包這些邊界規則,幫助開發者在編寫代碼前做出權衡決策。
插件定位¶
這是 DeepSeek Harness (DSH) 的插件開發邊界技能插件,由 KoanJan 維護。它將平臺的邊界能力規範打包成一個可加載的技能,明確回答開發過程中“能做什麼”和“不能做什麼”的問題。
核心功能¶
插件通過 ctx.skills.registerProvider 註冊一個技能:dsh-plugin-boundary。
該技能提供以下邊界信息:
- 數據通道格局:客戶端與主機之間的數據交互邊界。
- 文件系統限制:官方 API 對文件系統的操作範圍。
- 生命週期差異:動態插件與 bundle 插件的生命週期區別。
- 硬性規則:關於安裝、效果調試的強制性規則。
一個技能由兩部分組成:SKILL.md(說明目的、加載時機、使用要點)和 rules/*.md(規則正文)。
安裝與啓用¶
安裝前需確保已安裝 pnpm(DSH 插件官方依賴)。
安裝步驟¶
1. 從本地目錄安裝
dsh plugin --profile web add file:/path/to/dsh-plugin-boundary
2. 從 npm 倉庫安裝
dsh plugin --profile web add @koanjan/dsh-plugin-boundary
3. 啓用
安裝完成後,重啓 DSH。在新的會話中,dsh-plugin-boundary 技能應出現在技能目錄中。
開發與配置¶
插件的核心目錄結構如下:
dsh-plugin-boundary/
├── package.json # 包清單,dsh.bundle.patch 聲明其爲 bundle 層
├── cordis.patch.yml # 補丁層:將插件行插入配置
├── lib/index.js # 插件主體:skills.registerProvider 提供技能
└── skills/ # 技能資源(純 Markdown)
└── dsh-plugin-boundary/
├── SKILL.md
└── rules/
修改技能內容¶
直接編輯 skills/dsh-plugin-boundary/SKILL.md 和 rules/*.md,然後執行重新安裝(先 remove 再 add)並重啓 DSH。
修改插件邏輯¶
直接編輯 lib/index.js,然後執行重新安裝並重啓 DSH。
注意事項¶
- 版本驗證:邊界結論基於 DSH 0.1.0-rc.6 驗證。在 DSH 升級後,需重新驗證關鍵規則。
- 運行權限:插件以當前 DSH 進程的權限運行。
- 許可證:使用前請檢查源碼與許可證(MIT)。