dsh-habits:在 Web 设置中维护 user-global AGENTS.md

前言

在 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-instructions loader 将 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 仓库地址:

https://github.com/DimitriLIAN/dsh-habits

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

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

小夜