dsh-agents-md:在 DSH 設置面板裏編輯與生成 AGENTS.md

前言

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 融合爲一份完整規則:保留仍有效的全局要求,重複項合併,衝突時以項目輸入爲準 項目既要遵守全局約定,又有額外要求
直接覆蓋 僅根據輸入生成,不參考全局規則 項目完全獨立,不繼承全局

全局規則不存在或爲空時,「合併全局規則」會直接使用你輸入的內容,不會報錯。

流程概要:

  1. 選擇一個工作區
  2. 寫下要求(示例):
這個項目必須用 pnpm,不要用 npm
提交信息用中文
改數據庫前先寫遷移腳本
  1. 選擇「合併全局規則」或「直接覆蓋」
  2. 先預覽,點「確認寫入」後才落盤——確認前磁盤不會有改動

寫入前會自動備份爲 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。

羽毛球分组比赛记分
小程序二维码

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

小夜