前言¶
在 DeepSeek Harness(DSH)里做智能体开发,全局规则写在 AGENTS.md,斜杠命令来自各插件,技能装在 skills/ 目录。分散编辑时容易漏改、难备份,自定义快捷指令也往往要手改 JSON。dsh-rules-manager 把规则维护、/rules 操作入口、设置页里的可视化面板、用户自定义命令和技能启停删收拢到一处;规则改动会先备份再写入,并与 DSH 热加载衔接。下面按定位、能力、安装与用法说明。
这是什么¶
dsh-rules-manager 是维护者 jilian-dsh 发布的 DSH 工作流类插件(当前版本 1.7.0,MIT 许可)。它面向「规则 + 命令 + 技能」三件套的本地管理:提供聊天框 /rules 斜杠命令,以及在 DSH 设置中的 「规则、命令与技能」 面板(1.7.0 起设置页 client 已并入本包,不再需要单独的 dsh-rules-manager-client)。
规则正文保存在 $DSH_HOME/AGENTS.md(Windows 下 $DSH_HOME 一般为 %USERPROFILE%\.dsh)。README 说明任何经本插件或 /rules 的修改会实时生效(DSH 自动热加载),且在每次修改前会自动备份,并支持一键恢复到历史备份时刻。
核心功能¶
规则(AGENTS.md)¶
| 能力 | 入口 |
|---|---|
| 列出 / 查看 / 新增 / 修改 / 删除 / 禁用 / 恢复 | /rules 或 设置 → 规则、命令与技能 →「规则」 |
规则按分区组织,可在面板中全文可视化编辑。删除后编号不复用,避免引用错乱。
执行等级¶
每条规则标题可带执行等级(如 (执行等级:A+D)),决定规则引擎对工具调用的强制程度:A 硬拦违规调用,B 审计与提醒,C 按事件顺序拒绝,D 自证说明,M 元规则;可组合。新增规则时若标题未写等级,会自动补 (执行等级:D)(仅自证、不硬拦);需要硬拦应在标题中写明含 A 的等级。与 dsh-rule-engine 联动时,仅标题带等级且含 A/C/M 的规则会在工具层硬拦。
自由区域(Free Zone)¶
AGENTS.md 中由 <!-- free-zone:start --> / <!-- free-zone:end --> 框住的区段:模型可读、正常生效,但规则引擎不解析、不强制。区内条目格式为 ### [规则 F<n>]。/rules add 会自动插入到 free-zone 标记之前,不会把普通规则加进自由区;新增自由区条目需手动编辑文件(若装有 rule-engine,需先 /guard unlock)。
命令清单与自定义命令¶
- 命令:只读展示当前环境可用斜杠命令(名称 / 说明 / 用法)。
- 自定义命令:在设置页定义名字与预设内容;聊天框输入
/名字即将预设发给 AI。支持禁用 / 启用(禁用后斜杠不可用、内容保留)。命令名须匹配/^[a-z][a-z0-9_-]*$/,且不能与系统命令同名。
带参数时三条规则(README 迭代③):
- 预设含
{input}→ 参数替换每一处{input};无参数时提示用法、不发送残缺内容。 - 无
{input}且有参数 → 参数追加到预设末尾(换行分隔)。 - 无
{input}且无参数 → 只发预设本身。
示例:预设 请用一句话总结:{input},输入 /summarize 本周工作进展,则发送「请用一句话总结:本周工作进展」。
技能管理¶
在「技能」中查看已安装技能(名称、简介、全文),可禁用(移出技能目录、内容保留)、启用(搬回)、删除(移入 ~/.dsh/.backups/trash-<时间戳>/,可恢复)。README 注明禁用 / 删除后需重启 DSH 才能完全生效。
备份与恢复¶
每次修改 AGENTS.md 前备份到 $DSH_HOME/.backups/AGENTS.md-<时间戳>.bak;默认保留最近 5 份,超额备份在打开「备份与恢复」页时移入回收站。恢复前会再备份当前文件(双保险)。
技能使用统计与上下文注入¶
插件记录各技能使用次数(能力参考社区插件 dsh-skill-scoreboard,MIT)。设置页技能卡片显示「用过 N 次」;count 为按会话去重,loads 为每次成功加载计数。可通过配置 injectEnabled(默认开)、injectTopN(默认 25)、injectMaxChars(默认 4000)控制对话开始前向 agent 注入「技能名 → 路径」摘要(每 agent 仅注入一次)。只读接口:GET /api/rules-manager/skill-usage。
安装与启用¶
运行环境:Node >= 22;package.json 声明 dsh 兼容 >=0.1.0-rc.3 <0.3.0-0。
推荐方式为一键 bundle 安装(web profile):
dsh plugin --profile web add dsh-rules-manager
安装后 DSH 会加载包内 cordis.patch.yml,挂载 host 命令与 Remote 服务;重启 DSH 后设置页出现「规则、命令与技能」,聊天框可用 /rules。
卸载:
dsh plugin --profile web remove dsh-rules-manager
也可在 $DSH_HOME/profiles/web 下 npm install dsh-rules-manager 并手动改 cordis.patch.yml,或按仓库 README 拷贝源码装配;与 bundle 方式二选一即可。
典型用法¶
聊天框维护规则(| 或全角 | 分隔标题与正文):
/rules 列出全部规则
/rules show 2 查看规则 2 全文
/rules add 我的规则|这是正文 新增规则
/rules edit 2 新正文 修改规则 2 正文
/rules delete 3 删除规则 3
/rules health 规则体检(条数、分区、重复标题等)
自由区规则示例:/rules show F1、/rules edit F1 新正文、/rules delete F1(1.4.3 起支持字母编号)。
自定义命令:在设置页定义 hello = 请热情地欢迎我,聊天框 /hello 即可触发。
适用场景与注意¶
适合谁:需要长期维护 DSH 全局规则、想用 GUI 管理禁用项、希望自定义带 {input} 的快捷指令,或要在不删文件的前提下禁用 / 回收技能目录的开发者。
权限与边界(README 披露):本插件会读写 $DSH_HOME/AGENTS.md、commands.json、disabled-rules.json,并可能移动 $DSH_HOME/skills/ 下目录;不发起网络请求、不执行系统子进程、不读取 API Key 等凭据。自评权限等级为高,安装前建议阅读仓库「安全设计」并自行审查源码与 MIT 许可证。插件在当前 DSH 进程权限下运行,与社区目录 SkillHub 插件页 一样,属于社区生态收录,并非 DeepSeek / 幻方官方应用商店条目。
已知限制:技能使用统计仅从本插件开始采集后累积;换设备或清空数据目录会重头计数;上下文注入每个 agent 只在首次装载时执行一次。
结尾¶
dsh-rules-manager 把 AGENTS.md 规则、命令清单、自定义斜杠指令和技能目录操作集中到 /rules 与设置面板,并配上自动备份与恢复,适合作为 DSH 日常运维规则与工作流的第一站插件。