前言¶
DSH Web 提供了构建智能体的工作流环境。在开发过程中,维护一套清晰的上下文规则(如角色定义、工具使用说明)至关重要。该插件在聊天输入框上方提供 Dock 控件,允许用户按全局或工作区维护可勾选的上下文规则,并实时注入到会话的系统提示中。
核心功能¶
输入框上方 Dock 常驻「动态AGENTS.md」下拉按钮,始终可见并显示已勾选数量徽标。面板分为「全局」与「当前工作区」两组,支持勾选、全选/取消全选、新增、删除(二次确认)、查看完整内容。
规则库分为两级管理:
- 全局规则库:位于 ~/.dsh/dynamic-agents.json,所有工作区共享规则定义,不含勾选状态。
- 工作区规则库:位于 <工作区>/.dsh/dynamic-agents.json,存储该工作区的规则、勾选状态与会话解锁状态。
全局规则的勾选状态由工作区文件控制(全局规则 ID 带 g- 前缀),不同工作区可各自勾选不同的全局规则。新增规则需填写名称与内容,保存后即注入会话系统提示,无需重启。勾选内容按「全局在前、工作区在后」顺序合并注入,格式为 ## 规则名 + 规则内容。
会话已有聊天记录后,控件进入锁定态,勾选、新增、删除均不可操作,解锁需二次确认以保持会话系统提示缓存命中率。
安装与启用¶
前置要求:本机需安装 dsh 与 pnpm。
安装插件:
dsh plugin --profile web add "git+https://github.com/hw-cola/dsh-dynamic-agents.git"
安装后请重启 dsh web(让插件的 cordis 补丁层生效)并刷新浏览器页面。
使用示例¶
- 管理上下文:在输入框上方 Dock 的「动态AGENTS.md」下拉按钮中选择或取消勾选上下文规则,面板会显示当前已勾选数量。
- 新增规则:点击新增按钮,填写规则名称与内容后保存,规则立即生效。
- 快速管理:在面板中使用全选/取消全选功能快速管理规则。
- 查看详情:点击查看完整内容可查看所有可用规则。
- 锁定与解锁:会话首个回合开始前会等待配置加载完成。会话开始后控件锁定,需解锁才能修改配置。
注意事项与兼容性¶
- 数据清理:卸载不会自动删除数据文件(全局规则库与工作区规则库需手动清理)。
- 版本兼容:插件在 DSH
0.1.7-rc.1上开发测试,大版本升级后需检查适配版本。 - 加载时机:会话首个回合开始前会等待配置加载完成,避免首回合漏注入。
- 运行环境:插件在手机端同样可用,面板支持自适应定位。
结语¶
该插件通过可视化的方式解决了 DSH Web 中上下文规则管理的繁琐问题,实现了全局与工作区的规则隔离与灵活注入。更多细节可参考 GitHub 仓库。