前言¶
在 DSH 的日常使用里,有些任务其实不需要工作区,也不需要工具调用:问一个概念、查一段资料、写一小段文案,或者把一段话润色得更自然。这些“普通对话”如果每次都要另外打开一个聊天应用,体验上会有点碎。
下面介绍的是 dsh-chat。它由 MarkJun236 维护,当前版本为 0.1.0,许可证为 MIT。这个插件给 DSH Web GUI 增加一个侧边栏「对话」入口:不绑工作区、不带工具,直接复用 DSH 已导入的 provider / model,支持流式输出和多会话管理。
它的目标很具体:把不需要复杂上下文的普通对话留在 DSH Web GUI 里,减少为一次简单问答单独打开另一个 App 的步骤。
这是什么¶
dsh-chat 是 DSH Web GUI 的普通对话插件。它在侧边栏提供一个独立的「对话」面板,用于完成简单的问答、写作和文本整理。
它不引入新的模型适配层,不要求重新配置模型 key,而是复用 DSH 的 ctx.llm 模型路由。也就是说,DSH 中已经导入的 provider / model,可以在这个对话面板里切换使用。
它通过 profile 的 cordis.patch.yml 和 node_modules 软链挂载,不修改 DSH 源码。
核心功能¶
侧边栏独立「对话」入口¶
dsh-chat 会在 DSH Web GUI 侧边栏提供「对话」入口。进入后是一个独立的对话面板,不占用工作区界面,也不要求绑定具体工作区。
复用 DSH 模型路由¶
该插件直接复用 DSH 的 ctx.llm 模型路由,支持切换已导入的 provider / model。
顶部可以选择模型;默认会记住上次选择。
流式输出¶
对话采用流式输出。NDJSON 帧中支持 delta、reasoning、usage 的实时展示,分别对应正文增量、思考过程和用量信息。
多会话管理¶
左侧提供会话历史列表,支持:
- 新建会话
- 切换会话
- 重命名会话
- 删除会话
AI 自动标题¶
插件可以根据对话内容生成会话标题。
这个能力可以关闭,也可以为标题生成单独指定模型。
Markdown 渲染¶
支持 Markdown GFM 子集渲染,包括:
- 代码块
- 行内代码
- 表格
- 引用
- 列表
- 链接
- 图片
渲染策略采用 escape-first 和协议白名单。
跟随 DSH 主题¶
界面会跟随 DSH 的明暗主题。
热插拔挂载¶
插件通过 profile 的 cordis.patch.yml 和 node_modules 软链挂载,不修改 DSH 源码。
安装与启用¶
已核实资料中未给出可直接复制的官方安装命令。下面是资料中给出的 profile bundle 启用方式。
1、将 dsh-chat 装进 DSH 的 node_modules,或其软链目录。
2、在目标 profile 的 dsh.profile.bundles 中列出本包,或在 profile 自己的 cordis.patch.yml 中插入插件行。
配置示例如下:
- insert:
- id: chat
name: 'dsh-chat'
3、启动 DSH Web 后,在侧边栏查看「对话」入口。
典型用法¶
1、点击侧边栏「对话」进入面板。
2、顶部选择 provider / model。默认会记住上次选择;模型选择保存在浏览器 localStorage。
3、输入内容后使用 Enter 发送,Shift+Enter 换行。
4、通过左侧历史列表管理多个会话,可以新建、切换、重命名或删除。
5、通过齿轮按钮打开设置。设置中可以关闭 AI 自动标题,也可以为标题生成单独指定模型。
数据与本地存储¶
会话历史保存在本机:
~/.dsh/dsh-chat.json
相关文件权限为 0600,并采用原子写入。
模型选择和标题模型选择保存在浏览器 localStorage。
如果存储文件损坏,插件会将其改名为 .corrupt-<时间戳>,然后从空会话开始,不会静默覆盖原数据。
安全与注意¶
以下行为来自已核实资料:
- 所有
/api/dsh-chat/*路由仅限本机回环访问。 - Markdown 渲染采用 escape-first 和协议白名单。
- 客户端断连会自动 abort 模型调用。
- 会话历史只保存在本机
~/.dsh/dsh-chat.json。
从运行位置看,它随 DSH Web GUI 的宿主端工作,会直接调用 DSH 的 ctx.llm 模型路由,并读写本机会话文件。安装前建议检查源码、依赖和 MIT 许可证,确认它符合当前 DSH 进程的运行环境和你对本机模型凭据的使用边界。
链接¶
- GitHub:https://github.com/MarkJun236/DSH-chat
- 目录线索(未列入已核实抓取资料):https://www.skillhub.cn/plugins/MarkJun236/DSH-chat