前言¶
DeepSeek Harness(DSH)會讀取 AGENTS.md 裏的規則,決定智能體在當前工作區裏怎麼執行命令、寫代碼、遵守約定。規則可以放在全局(對所有項目生效),也可以放在項目根目錄(只對該項目生效)。實際使用時,路徑不好記、換項目要反覆找文件、想讓項目「繼承全局再加幾條」只能手工複製粘貼,寫錯一次還可能把已有內容蓋掉。下面介紹社區插件 dsh-agents-md(維護者 Ytibu,GitHub:Ytibu/dsh-agents-md):在 DSH Web 設置裏提供 「AGENTS.md 管理」 入口,讀寫全局與項目級 AGENTS.md,並可用 AI 按「合併全局規則」或「直接覆蓋」生成項目規則。插件不改變 DSH 核心行爲,只是給這些文件加可視化編輯界面。
這是什麼¶
dsh-agents-md 是 DSH 客戶端類插件(package.json 中聲明 dsh.client,平臺爲 web)。當前版本 1.0.0,許可證 MIT,Node >=20。
開發與測試所依據的 DSH 版本爲 0.2.0-rc.2(對應 @deepseek-ai/dsh-desktop / @deepseek-ai/dsh-desktop-runtime 0.2.0-rc.2,分發渠道爲 nightly)。插件依賴 DSH 內部契約(非穩定公開 API),換版本後可能失效;換版後應在本機運行 node check-contracts.mjs 覈對兼容性。
社區目錄頁:skillhub.cn/plugins/Ytibu/dsh-agents-md。該目錄爲獨立社區站點,與 DeepSeek / 幻方無官方從屬關係;DSH 生態理念是「一切皆插件」,安裝第三方插件前請自行查看源碼與許可證。插件以當前 DSH 進程權限讀寫磁盤,寫入前會做備份,但仍建議在可信環境使用。
核心功能¶
1. 編輯全局規則¶
讀寫對所有項目生效的全局 AGENTS.md。
- 路徑解析與 DSH 一致:優先
$DSH_HOME/AGENTS.md,未設置$DSH_HOME時使用~/.dsh/AGENTS.md - 設置頁會展示解析到的真實路徑
- 文件不存在時,保存會自動創建
2. 編輯項目規則¶
讀寫指定工作區根目錄下的 AGENTS.md。
- 從下拉列表選擇工作區,編輯其根目錄的
AGENTS.md - 同樣支持自動創建與自動備份
3. 生成項目規則¶
用自然語言描述期望的規則,由插件調用 AI 生成規範的 AGENTS.md 內容。
| 生成方式 | 行爲 | 適用情況 |
|---|---|---|
| 合併全局規則 | 將輸入與全局 AGENTS.md 融合爲一份完整規則:保留仍有效的全局要求,重複項合併,衝突時以項目輸入爲準 |
項目既要遵守全局約定,又有額外要求 |
| 直接覆蓋 | 僅根據輸入生成,不參考全局規則 | 項目完全獨立,不繼承全局 |
全局規則不存在或爲空時,「合併全局規則」會直接使用你輸入的內容,不會報錯。
流程概要:
- 選擇一個工作區
- 寫下要求(示例):
這個項目必須用 pnpm,不要用 npm
提交信息用中文
改數據庫前先寫遷移腳本
- 選擇「合併全局規則」或「直接覆蓋」
- 先預覽,點「確認寫入」後才落盤——確認前磁盤不會有改動
寫入前會自動備份爲 AGENTS.md.bak-<時間戳>;同一毫秒內多次保存也不會互相覆蓋。
生效時機¶
保存之後:
- 新會話:立即生效
- 當前會話:在下一次文件操作後由 DSH 動態檢測感知新規則(插件本身不做熱重載)
安裝與啓用¶
DSH 0.2.0-rc.2 尚未隨附 dsh CLI,README 給出的方式是向任意 profile(目錄形如 $DSH_HOME/profiles/<名字>)手動安裝。
第一步:在該 profile 的 package.json 增加依賴,並在 profile 目錄執行 pnpm install:
"dsh-agents-md": "file:/絕對路徑/to/dsh-agents-md"
第二步:在同一 package.json 的 dsh.profile.bundles 數組中加入插件名(僅加 dependencies 不會裝載插件):
"dsh": {
"profile": {
"bundles": [
"@deepseek-ai/dsh-base",
"@deepseek-ai/dsh-web-app",
"dsh-agents-md"
]
}
}
完成後重啓 dsh web,打開 設置 → 「AGENTS.md 管理」。
README 說明:等 CLI 隨版本發佈後,也可使用 dsh plugin --profile web add Ytibu/dsh-agents-md;該插件的 package.json 已聲明 dsh.bundle.patch 與 dsh.client。
典型用法¶
只改全局約定:進入「AGENTS.md 管理」,編輯全局規則並保存;新開會話即按新全局規則運行。
爲某個倉庫單獨加規則:在下拉框選中對應工作區,直接編輯項目 AGENTS.md,或切換到生成功能,用大白話寫要求,選「合併全局規則」預覽滿意後再確認寫入。
401 / 會話未通過鑑權:接口受 DSH 鑑權保護,非瀏覽器會話會被拒絕;刷新頁面重新登錄即可。
設置裏看不到入口:常見原因是隻加了 dependencies、未加入 bundles,或未重啓 dsh web 並刷新頁面。
適用場景與注意¶
適合已經在用 DSH 0.2.0-rc.2、且需要頻繁維護全局或項目級 AGENTS.md 的開發者。不適合未安裝或未運行對應 nightly 版本的環境;其他 DSH 版本請先跑 node check-contracts.mjs,以其結論爲準。
Host 側通過 ctx.connection.fetch.register 註冊讀寫與生成相關 API(如 /api/agents-md/global、/api/agents-md/project、/api/agents-md/compose 等),走 Connection 的 /api 通道與瀏覽器鑑權。提 issue 時 README 建議附上 DSH 版本與 node check-contracts.mjs 完整輸出,便於區分版本不兼容與代碼問題。
結尾¶
dsh-agents-md 把 AGENTS.md 的查找、編輯、合併生成和備份收進 DSH 設置面板,減少手工維護規則文件的成本。目錄頁:https://www.skillhub.cn/plugins/Ytibu/dsh-agents-md;源碼與詳細說明:https://github.com/Ytibu/dsh-agents-md。