前言¶
DeepSeek Harness(DSH)支持通過 ~/.dsh/AGENTS.md 配置全局規則,讓每次會話都繼承同一套指令。這條路徑對熟悉終端的開發者不難,但在 Web 端使用時,改規則往往要切回編輯器或終端,打斷當前工作流。
dsh-global-rules 把這件事收進 DSH Web 的「設置」面板:打開標籤頁即可讀取、編輯並保存 AGENTS.md,不必離開瀏覽器。下面介紹它的定位、能力與安裝用法。
這是什麼¶
dsh-global-rules 是 DSH 社區插件,由 badai147 維護,分類爲客戶端插件。它在 DeepSeek Harness Web 設置面板中新增「全局規則」頁面,直接讀寫 ~/.dsh/AGENTS.md。
插件本身不實現規則熱重載邏輯,而是依賴 DSH 內置的 dsh-agent-instructions 插件對 user-global scope 做動態檢測。保存後,新會話立即按新內容執行;當前會話在下次文件系統工具調用後感知變更。
核心功能¶
根據 GitHub README 與 package.json,已覈實的能力如下:
- 設置頁新增「全局規則」標籤:打開即加載
~/.dsh/AGENTS.md當前內容 - 編輯並保存,即時生效:新會話首次步驟直接讀取新內容;當前會話在下次文件操作後,DSH 注入
Updated instructions from: ~/.dsh/AGENTS.md,模型按新規則執行 - 文件不存在時自動創建:首次保存會創建
~/.dsh/AGENTS.md - 零構建:Client 端爲手寫
__ModuleLoader__bundle,Host 端爲純 Node ESM
工作原理¶
插件分 Host 與 Client 兩層:
- Host(
lib/index.js):註冊GET /global-rules(讀文件)與POST /global-rules(寫文件,含同源校驗與 256 KiB 上限)兩個 HTTP 路由 - Client(
lib/client.js):通過window.__ModuleLoader__.loadbundle,在settings.section註冊「全局規則」頁面 - 生效機制:由 DSH 內置
dsh-agent-instructions覆蓋user-globalscope 的動態檢測,插件無需自行熱重載
目錄結構:
dsh-global-rules/
├── cordis.patch.yml # bundle patch:插入 global-rules 層
├── lib/
│ ├── index.js # Host:HTTP 路由(Node ESM)
│ └── client.js # Client:設置頁 UI(__ModuleLoader__ bundle)
└── package.json
安裝與啓用¶
先做插件安裝,再重啓 Web 服務。
從 DSH 插件目錄安裝:
dsh plugin --profile web add dsh-global-rules
從 GitHub 源安裝(備選):
dsh plugin --profile web add github:badai147/dsh-global-rules
安裝完成後重啓 dsh web,在界面中打開 設置 → 全局規則 即可使用。
典型用法¶
- 打開 設置 → 全局規則
- 編輯規則內容(Markdown 格式,與
AGENTS.md語法一致) - 點擊「保存」
保存後的生效方式:
- 新會話:首次步驟直接讀取新內容,立即生效
- 當前會話:下一次文件系統工具調用後,DSH 檢測到文件變化並注入更新提示,模型按新規則執行
適用場景與注意¶
適合誰
- 主要用 DSH Web 界面、希望集中管理全局指令的開發者
- 需要爲所有會話統一編碼風格、回覆語言或項目約束,且不想頻繁切終端編輯
AGENTS.md的用戶
使用前注意
- 插件以當前
dsh進程權限讀寫~/.dsh/AGENTS.md;安裝前建議查看 源碼 與 MIT 許可證 - 寫入有 256 KiB 上限;規則內容應保持精簡
- 本插件來自 DSH 社區目錄 SkillHub,與 DeepSeek / 幻方無官方從屬關係
結尾¶
dsh-global-rules 把全局規則編輯收進 Web 設置面板,配合 DSH 內置的動態檢測,讓 AGENTS.md 的維護與 Web 工作流對齊。若你已在用 DSH Web,可按上文命令安裝,在設置裏直接管理全局規則。