前言¶
在 DeepSeek Harness(DSH)裏,如果希望模型持續遵循某些偏好、約束或習慣,一個常見落點是 user-global instruction document:$DSH_HOME/AGENTS.md。沒有輔助工具時,這個文件通常只能手動編輯;編輯完成後,還需要依賴 DSH 的 instructions 加載機制將其帶入會話。
dsh-habits 把這件事放進 Web settings 的 General 區:在瀏覽器裏編輯一份文本,保存後寫入 $DSH_HOME/AGENTS.md,再由 DSH 內置的 instructions loader 注入到後續會話。
插件定位¶
dsh-habits 是一個 DSH 插件,由 DimitriLIAN 維護,許可證爲 MIT。
它的核心價值是一句話:
在 Web settings 裏維護 My Habits 文本,並把它落到 user-global
AGENTS.md,供每個 DSH session 使用。
它不替代 DSH 的 instructions 機制,而是爲 $DSH_HOME/AGENTS.md 增加一個瀏覽器編輯入口。
核心機制¶
編輯器位置¶
插件在 Web settings 的 General 區添加 My Habits editor。
用戶打開:
Settings → General → My habits
然後寫入內容並保存。
保存目標¶
保存後的文本寫入:
$DSH_HOME/AGENTS.md
如果該文件缺失,讀取時視爲空白文檔,不報錯。
會話注入¶
寫入的文檔由 DSH 內置的 dsh-agent-instructions loader 注入到 session。
這裏的關鍵是:插件負責編輯入口和文件保存,真正的會話注入依賴 DSH 已有的 instructions loader。
REST surface¶
插件在 ctx.webServer 註冊兩個 REST 接口:
/api2/habits/describe
/api2/habits/update
瀏覽器端通過 fetch 調用這些接口完成讀取和更新。
設置項註冊¶
插件在 settings.general.item 槽位註冊瀏覽器設置行,槽位 id 爲:
habits
這樣 My Habits 編輯器會出現在 Web settings 的 General 區域。
寫入約束¶
寫入使用:
65536-byte budget
併發編輯通過 SHA-1 expectedRevision conflict refusal 仲裁,不做合併。
也就是說,如果一個編輯器持有文檔狀態,另一個編輯者在狀態不一致時寫入,會被拒絕,而不是自動合併。
安裝與啓用¶
先安裝插件。已覈實資料給出的安裝命令如下:
dsh plugin add --profile web github:<owner>/dsh-habits
這裏保持資料中的命令形式。插件倉庫地址見文末 GitHub 鏈接。
安裝後,需要重啓 web profile,讓 bundle layer 加載:
dsh --profile web
然後進入 Web settings:
Settings → General → My habits
寫入內容並保存。
典型用法¶
下面是一個可復現的使用流程。
1、安裝插件:
dsh plugin add --profile web github:<owner>/dsh-habits
2、重啓 web profile:
dsh --profile web
3、打開設置:
Settings → General → My habits
4、寫入你的 habits 或 instructions 文本,然後保存。
保存後:
- 新會話會立即使用該內容;
- 已運行會話不會立即改寫;
- 已運行會話會在下一次 file touch 或 resume 時刷新。
如果本地需要構建插件,可以執行:
pnpm install
pnpm run build
這裏的 build 用於生成 host 和 client 的構建產物。
適用場景與注意¶
適合以下場景:
- 希望把常用偏好、約束、工作習慣集中維護在
$DSH_HOME/AGENTS.md; - 希望從 DSH Web settings 裏直接編輯,而不是頻繁打開終端修改文件;
- 希望利用 DSH 已有的
dsh-agent-instructionsloader 將 user-global instructions 帶入會話。
需要注意:
1、該插件會讀寫 $DSH_HOME/AGENTS.md,並運行在當前 DSH 進程權限下。安裝前應檢查源碼、行爲和許可證。
2、已運行會話不會立即改寫。中途保存後,已運行會話通常要等下一次 file touch 或 resume 才刷新。
3、併發編輯不合並。多個編輯器狀態不一致時,依賴 expectedRevision conflict refusal 拒絕衝突寫入。
4、文檔有 65536-byte budget。超過預算的內容不應直接寫入。
5、插件聲明的 peer dependency 爲:
@deepseek-ai/cordis ^4.0.1
結尾¶
dsh-habits 的價值比較具體:它把 user-global AGENTS.md 的編輯入口搬進 DSH Web settings,讓習慣和偏好可以通過瀏覽器維護,並繼續由 DSH 內置 loader 注入 session。
已覈實資料未提供目錄頁 URL。GitHub 倉庫地址: