前言¶
在 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),避免把工作區內容抬成系統級權威。消息內說明:這是背景指令、不是任務,摘錄不代表全文。
消息體包含:
- 清單:所列文件的字節數 + 全文 sha256 的前 12 位(便於與磁盤對賬);
- 摘錄:每份目標文件開頭不超過
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 進程權限下運行,只安裝你信任的來源。
典型用法¶
- 在工作區根目錄(或
config.root指定目錄)放置SOUL.md、USER.md、IDENTITY.md等文件,並保持AGENTS.md走原生通道。 - 啓用插件後,新開 DSH 會話:首條用戶消息之後應出現
fire-seed-instructions類 user 消息,內含清單與每份文件開頭摘錄。 - 需要條款級細節時,不要假設摘錄等於讀過全文;用工具按路徑
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