dsh-agents-section:把 AGENTS.md 放進 system prompt 獨立區塊

前言

在 DeepSeek Harness(DSH)裏,項目說明文件 AGENTS.md 常見做法是注入到用戶消息裏,模型會在 user turn 裏讀到這些指令。對需要長期、穩定遵守倉庫規範的場景,把同一套文字和用戶對話混在一起,既占上下文,也和「系統級約束」的語義不太一致。

維護者 YukimuraSol 的插件 dsh-agents-section 換了一條路:把 AGENTS.md 註冊成 system prompt 裏的獨立 section,每次組裝 prompt 時從磁盤重新讀取,而不是當作 user message 粘貼進去。下面介紹它的行爲、安裝方式和配置要點。

這是什麼

dsh-agents-section 是面向 DeepSeek Harness 的社區插件,在 SkillHub 目錄中歸類爲「模型推理」。當前 GitHub 倉庫版本爲 0.1.1,許可證 MIT。

一句話定位:在已掛載 dsh-system-prompt 的 DSH profile 上,把配置中的說明文件渲染爲具名 system section,並按 session 工作目錄解析路徑。

核心功能

獨立 section,而非 user 注入

說明文本出現在 system prompt 下單獨的名稱與 order 位置,不嵌在用戶輪次裏。默認 section 名爲 agents:instructions,默認排序 400(數值越小越靠前)。

每次組裝都重讀磁盤

section 正文由函數提供,因此每次 prompt 組裝都會重新讀文件。改完 AGENTS.md 後下一輪對話即可生效,無需重啓實例,也無需手動清緩存。

按 session 解析相對路徑

同一份插件配置可服務多個工作區。絕對路徑條目對所有 session 生效,適合機器級通用規則。bare 文件名(如 AGENTS.md)相對該 session 的工作目錄解析:從工作目錄向上走到含 .git 的目錄(視爲項目根),再沿路徑向下,可能在多個層級各渲染一份文件。例如在 repo/packages/api 下會話時,可能同時得到 repo/AGENTS.md 與 repo/packages/api/AGENTS.md;在兄弟目錄的另一個工作區則不會誤讀本倉庫文件。

無 .git 的工作區仍可用:查找鏈退化爲僅當前 session 目錄。缺失、不可讀或空文件會被靜默跳過;每個成功渲染的塊會帶上路徑前綴,便於模型區分多文件內容。若當前 session 沒有適用的配置文件,該 section 爲空,不額外佔位。

安裝與啓用

插件 Host 部分在實例啓動時加載,安裝後需要重啓 DSH 實例。

Web UI:Settings → Plugins → Add plugin,粘貼:

https://github.com/YukimuraSol/dsh-agents-section

CLI:

dsh plugin --profile <your-profile> add https://github.com/YukimuraSol/dsh-agents-section

將 <your-profile> 換成實際 profile 名稱。

配置

在 Settings → Plugins 中可 live-edit。插件對應配置行 id 爲 agents-section,README 給出的示例:

- insert:
    - id: agents-section
      name: dsh-agents-section
      config:
        order: 400
        sectionName: agents:instructions
        files:
          - AGENTS.md
選項 默認值 含義
order 400 section 在組裝後 system prompt 中的位置,越小越靠前
sectionName agents:instructions 註冊到 system prompt 下的 section 名稱
files [] 要渲染的說明文件列表,按順序處理

files 中每一項可以是絕對路徑(全 session 共享),或 bare 文件名(按上文規則 per-session 解析)。

典型用法

  1. 確認 profile 已掛載 dsh-system-prompt(插件 peer 依賴 @deepseek-ai/dsh-system-prompt)。
  2. 按上文命令安裝插件並重啓實例。
  3. 在倉庫根或子目錄放置 AGENTS.md,在配置裏把 files 設爲 - AGENTS.md(或按需加入絕對路徑的全局說明文件)。
  4. 若完全依賴本 section 承載項目指令,應關閉 DSH 內置的 user-message 注入,避免重複:將 agent-instructions 相關行的 maxBytes 設爲 0(README Notes 中的說明)。

環境要求:Node 20+;@deepseek-ai/* 由 DSH 安裝提供,插件聲明爲 optional peer,不會重複安裝第二份。

適用場景與注意

適合:已在 DSH 中使用 AGENTS.md 或同類說明文件,希望指令以 system section 形式穩定呈現、且改文件即生效的開發者。

注意:

  • 插件與 DSH 進程同權限運行;安裝前請自行查看 GitHub 源碼 與 MIT 許可證。
  • 項目根判定目前僅認 .git 目錄; monorepo 子路徑行爲取決於自根到 cwd 的路徑鏈,需結合自己的目錄結構驗證。
  • 社區目錄 SkillHub 插件頁 與 DeepSeek / 幻方無官方從屬關係,DSH 生態以「一切皆插件」爲思路,本插件是其中一條可選能力。

結尾

dsh-agents-section 解決的是「項目指令進 user 消息」與「希望指令在 system 層、且隨磁盤更新」之間的落差:獨立 section、每次組裝重讀、按 session 解析相對路徑。需要細節與 issue 時見倉庫 README。

  • 目錄頁:https://www.skillhub.cn/plugins/YukimuraSol/dsh-agents-section
  • GitHub:https://github.com/YukimuraSol/dsh-agents-section
羽毛球分组比赛记分
小程序二维码

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

小夜