前言¶
DeepSeek Harness (DSH) 原生支持插件扩展,但在管理本地 Markdown 提示词模板和跨设备同步方面存在空白。dsh-prompt-switcher 是一个 Web 插件,旨在解决这些问题。它允许用户通过 / 快捷指令快速选择本地 .md 模板,支持全局提示词、环境变量替换以及 WebDAV 同步。
核心功能¶
- 本地模板选择:通过
/菜单选择本地目录下的.md文件。选中后,模板对整个对话持续生效,约束力等同于AGENTS.md。 - 全局提示词:设置对所有新对话生效的提示词。在用
/选择模板时,模板会追加在全局提示词之后,两者同时生效。 - 环境变量:支持在模板中使用
{{env:变量名}}语法,在发送给模型前替换为对应的值。 - WebDAV 同步:支持将模板和环境变量同步到 WebDAV 服务器,实现跨设备管理。
- 会话删除:支持彻底删除对话(需 DSH 0.2.0-rc.1 及以上版本)。
安装与启用¶
- 确保环境满足要求:DSH >= 0.1.7-alpha.1,Node >= 22.19。
- 执行安装命令:
dsh plugin --profile web add github:mikulo/dsh-prompt-switcher
- 安装完成后,重启
dsh web并刷新页面。
典型用法¶
1. 配置模板目录¶
打开 设置 → 提示词模板,点击「选择文件夹」选中存放 .md 模板的目录。插件会读取该目录第一层的 .md 文件。新目录中的模板默认全部关闭,需手动开启。
2. 选择模板¶
新建对话时,在输入框输入 /,已激活的模板会出现在菜单中。选中模板并发送第一条消息后,该模板会对后续每一轮对话生效。
3. 使用环境变量¶
在模板中使用 {{env:变量名}} 引用环境变量。例如变量名为 api_key,值为 123456,模板中写 {{env:api_key}},发送时会变为 123456。
4. WebDAV 同步¶
在 设置 → 提示词模板 中切换到「WebDAV 云同步」标签页。配置服务器地址、用户名和密码(密码仅保存在本机),点击「测试连接」验证配置。保存后可进行「同步到本地」或「同步到云端」。
适用场景与注意¶
- 权限要求:插件以当前 DSH 进程的权限运行,需确保进程有权限读写
~/.dsh/目录。 - 数据安全:环境变量值会以明文出现在发送给模型的内容和会话记录中,请勿在变量中存储敏感信息。
- 版本依赖:删除对话功能依赖 DSH 0.2.0-rc.1 的会话存储结构。
- 热更新限制:插件的 Host 半代码修改后必须重启
dsh web才能生效,Browser 半支持热更新。
结语¶
该插件通过标准 DSH bundle 实现,Host 和 Browser 均为纯 ESM,无运行时依赖。适合需要在 DSH 中统一管理本地 Prompt 模板并希望实现云端同步的用户。