dsh-chat:DSH Web GUI 的普通对话插件

前言

在 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 帧中支持 deltareasoningusage 的实时展示,分别对应正文增量、思考过程和用量信息。

多会话管理

左侧提供会话历史列表,支持:

  • 新建会话
  • 切换会话
  • 重命名会话
  • 删除会话

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
羽毛球分组比赛记分
小程序二维码

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

小夜