dsh-constitution-seed:把工作區憲法有界注入每個新 DSH 會話

前言

在 DSH 裏做長期項目時,工作區裏往往會常駐幾份「憲法級」 Markdown:例如 SOUL.md、USER.md、IDENTITY.md,有時還有 AGENTS.md。新開會話時,模型需要知道這些文件存在、路徑在哪、以及開頭約定了什麼;但幾份文件合計體量很大(資料中提及約 2.4MB),不可能整份塞進上下文。

DeepSeek Harness 原生有 instructionFileCandidates 一類機制,渲染器按整份文件做預算:超預算會從頭丟棄候選,且往往只允許截斷最後一份。把 SOUL、USER、IDENTITY 與 AGENTS 一起塞進候選表時,在約 2.4MB 總量下可能出現丟掉 AGENTS/SOUL/USER、只留截斷 IDENTITY 的結果,與「每份常駐文件都要被看見開頭」的需求相反。社區插件 dsh-constitution-seed(倉庫 README 亦稱爲「火種注入器 / dsh-fire-seed」)專門負責另外三份文件的「每份都有、各自有界」摘錄;AGENTS.md 仍走原生通道,兩者並存。

下面介紹該插件的定位、行爲、配置與使用注意。DSH 生態主張「一切皆插件」;SkillHub 等社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係。

這是什麼

dsh-constitution-seed 由 xushilianzhuren 維護,在 SkillHub 分類爲記憶,當前目錄頁標註版本 v1.0.0,許可證 MIT(見倉庫 package.json)。

一句話:在每個新會話的早期,向會話插入一條帶界摘錄的 user 消息,讓模型開局即知道清單中的憲法文件存在、可對賬磁盤,並讀到每份文件開頭的規矩;完整原文仍在磁盤,需要時用 read / rg 按需拉取。

核心功能

注入內容與消息形態

每個會話的第一步,在用戶消息之後插入一條 source.kind = 'fire-seed-instructions' 的 user 消息(不是 system prompt),避免把工作區內容抬成系統級權威。消息內說明:這是背景指令、不是任務,摘錄不代表全文。

消息體包含:

  1. 清單:所列文件的字節數 + 全文 sha256 的前 12 位(便於與磁盤對賬);
  2. 摘錄:每份目標文件開頭不超過 perFileBytes(UTF-8 字節)的內容,附截斷說明與原文件絕對路徑。

與原生 instruction 的分工

  • AGENTS.md:繼續走 DSH 原生 instruction 通道。
  • SOUL.md、USER.md、IDENTITY.md(默認 files):由本插件各自截斷、分別注入,避免「整文件預算」把靠前的文件整份丟掉。

冪等與 resume

  • 進程內按文件指紋(size + mtime)判重,未改動則不重複推送;
  • 按正文 sha256 掃描會話歷史判重,會話 resume 後不重複注入;
  • 文件改動後會自動再推一次。

配置項

字段 默認 含義
root 會話工作目錄 憲法文件所在目錄;配置後爲固定根,跨工作區會話也會注入
files SOUL.md, USER.md, IDENTITY.md 需要摘錄的文件
manifest 四份全列 清單裏列出的文件(只列不摘錄的會標註原因)
perFileBytes 16384 單份摘錄上限(UTF-8 字節)
totalBytes 65536 本條消息總預算,含清單與框架
includeSubagents false 是否給子會話注入(默認關閉以省 token)
enabled true 總開關

關閉方式:在 plugin_manager 裏 disable 對應 fire-seed 行,或設置 config.enabled: false。

安裝與啓用

SkillHub 插件頁提供「發送給 DeepSeek Harness 安裝」的說明,核心表述爲安裝 xushilianzhuren/dsh-constitution-seed 插件;完整文案以目錄頁爲準:

  • 目錄頁:https://www.skillhub.cn/plugins/xushilianzhuren/dsh-constitution-seed

安裝前請自行閱讀 GitHub 倉庫源碼與 MIT 許可證。插件在當前 dsh 進程權限下運行,只安裝你信任的來源。

典型用法

  1. 在工作區根目錄(或 config.root 指定目錄)放置 SOUL.md、USER.md、IDENTITY.md 等文件,並保持 AGENTS.md 走原生通道。
  2. 啓用插件後,新開 DSH 會話:首條用戶消息之後應出現 fire-seed-instructions 類 user 消息,內含清單與每份文件開頭摘錄。
  3. 需要條款級細節時,不要假設摘錄等於讀過全文;用工具按路徑 read,或在磁盤上 rg 檢索。

默認 includeSubagents: false,子會話不會自動收到同一條注入;若子代理也要同一背景,可將該字段改爲 true(token 開銷會上升)。

適用場景與注意

適合:長期維護 SOUL/USER/IDENTITY 等工作區 charter、希望每個新會話「開局就知道文件在哪、開頭寫什麼」,又不能接受原生整文件預算把多份憲法擠沒的場景。

務必知曉的取捨(倉庫 README 明確寫出):

  • 摘錄 ≠ 讀過全文;只能注入開頭,細節回磁盤。
  • 注入是追加,不替代原生 AGENTS.md 通道。
  • 總預算 totalBytes 與單文件 perFileBytes 需要與真實文件大小、會話窗口一起權衡;過大仍可能被截斷或擠佔後續對話。

結尾

dsh-constitution-seed 用有界摘錄和可對賬清單,把「工作區憲法存在且開頭規矩是什麼」塞進每個新會話,同時把全文留在磁盤按需讀取;與原生 AGENTS 通道互補,並帶指紋與歷史 sha256 冪等。

  • SkillHub:https://www.skillhub.cn/plugins/xushilianzhuren/dsh-constitution-seed
  • GitHub:https://github.com/xushilianzhuren/dsh-constitution-seed
羽毛球分组比赛记分
小程序二维码

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

小夜