dsh-agents-md-settings:在设置里打开 AGENTS.md

前言

DeepSeek Harness(DSH)在每个新会话开始时都会读取用户目录下的 AGENTS.md,用来注入智能体规则与项目约定。文件在磁盘上,但官方界面长期缺少「直接打开编辑」的入口:改规则往往要自己在资源管理器或终端里找 ~/.dsh/AGENTS.md。社区插件 dsh-agents-md-settings(仓库 dongfangxy/dsh-agents-md-settings)在 设置 → 通用 底部增加一行,点选后用系统编辑器打开该文件,不改动 DSH 的读取逻辑,只补 UI 缺口。

这是什么

  • 定位:DeepSeek Harness 的 cordis bundle,同时包含宿主路由与客户端设置行。
  • 维护者:GitHub 用户 dongfangxy(package.json 作者为 Chengxi Zhang)。
  • 分类:客户端(在 DSH Web 设置 UI 中注册一行)。
  • 解决的问题:会话会读 AGENTS.md,但应用内没有打开该文件的按钮;本插件只负责「打开编辑」,不上传、不遥测、不自动改文件内容。

核心功能

设置里的一行入口

安装并重启后,在 Settings → General(设置 → 通用) 底部会出现一行,文案为 用记事本打开 / Open in editor。点击后,宿主在本地解析路径 os.homedir()/.dsh/AGENTS.md(即 ~/.dsh/AGENTS.md),并交给系统编辑器打开。

行为边界

  • 客户端仅向本地 origin 发起 POST /agents-md/open,请求体为空,也不接受调用方传入路径;能打开的文件固定为当前用户自己的 AGENTS.md。
  • 无网络请求、无遥测;路由不是通用「执行任意命令」接口。
  • Windows:直接启动 Notepad;若记事本窗口被最小化或尺寸异常,宿主会尝试还原窗口、设为约 900×640 并提到前台(避免「点了没反应」)。
  • macOS / Linux:宿主使用 open / xdg-open,README 标明尚未充分测试;当前主要验证环境为 Windows 11 桌面版。

实现结构(便于排查)

文件 作用
cordis.patch.yml 向 profile 插入名为 agents-md-settings 的行
index.js 宿主:注册 POST /agents-md/open,解析路径并启动编辑器
client.js 客户端:在 settings.general.item 槽位注册设置行
package.json 声明 dsh.bundle.patch 与 dsh.client

安装与启用

本仓库是 bundle,不是 npm 公开发行的独立包名插件;应通过 DSH 的 profile 依赖安装,不要把文件夹手动拷进 node_modules——下次 profile 里执行 pnpm install 可能清掉未登记依赖,而 cordis.patch.yml 里的 insert 行仍指向旧路径,表现为「设置行还在、插件不见了」。

实际使用的 profile 路径以运行中应用的 DSH_PROFILE_DIR 为准;Windows 桌面版默认常见为 %ProgramData%\dsh-data\profiles\desktop。

推荐:作为插件包安装

在终端或应用内 设置 → 插件 → Add plugin 使用同一安装源:

dsh plugin add github:dongfangxy/dsh-agents-md-settings

安装器会把依赖写入 <profile>/package.json,并应用 bundle 自带的 patch。完成后 重启 DeepSeek Harness,新行出现在 设置 → 通用 底部。若重启后没有该行,说明 patch 未生效,需检查包是否解析成功、cordis.patch.yml 是否仍有 YAML 语法错误(整层 patch 可能因此无法加载)。

改源码时,在 <profile>/package.json 增加:

"dependencies": {
  "@local/agents-md-settings": "link:<本仓库绝对路径>"
}

然后在 profile 目录执行:

pnpm install --dir <profile>

并在 <profile>/cordis.patch.yml 中按现有缩进添加:

- insert:
    - id: agents-md-settings
      name: "@local/agents-md-settings"

重启应用后生效。若环境暴露 plugin_manager 工具的 install_bundle,可对 checkout 绝对路径调用以自动完成上述步骤。

卸载

在 设置 → 插件 中移除;或手动删除 package.json 中的依赖与 cordis.patch.yml 中的 agents-md-settings insert 行,再 pnpm install --dir <profile> 并重启。

典型用法

  1. 按上文命令安装插件并重启 DSH。
  2. 打开 设置 → 通用,滚动到底部,点击 用记事本打开 / Open in editor。
  3. 在系统编辑器中修改 AGENTS.md 并保存。
  4. 新开一个 DSH 会话 后,Harness 才会再次读取该文件;当前会话不会监视外部文件变更,改完不会即时重载。

适用场景与注意

适合谁:经常在 DSH 里依赖 AGENTS.md 写规则、却又不想每次手动找路径的智能体开发者;尤其是 Windows 桌面用户。

权限与安全:插件以当前 DSH 进程的用户权限运行,只打开固定路径下的 AGENTS.md;安装前仍建议浏览 GitHub 仓库 源码与 MIT 许可证,确认符合你的环境策略。

局限(来自官方 README):

  • 编辑内容仅在 下一个会话 生效。
  • 非 Windows 平台行为未充分验证。
  • 若设置行缺失,优先检查 profile 依赖与 cordis.patch.yml 解析是否正常。

链接

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

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

小夜