前言¶
在 DeepSeek Harness(DSH)里做智能体编排时,常见做法是把对话拆成多个 Session,或在侧边栏里来回切换「通用聊天」和任务入口。dsh-super-chat 把消息收进同一条流,用主题标签做筛选和派发线索;若同 profile 安装了 dsh-superagent-prototype,消息会通过 super-chat Source 转成 Superagent Ticket,否则回退为单个通用 DSH Session。下面按定位、能力、安装与用法说明该插件。
这是什么¶
dsh-super-chat 是面向 DSH Web profile 的客户端插件(维护者 gekailin,仓库 gekailin/dsh-super-chat)。其核心是为 dsh-superagent-prototype 提供 super-chat Source,将聊天消息转为 Ticket;同时提供带主题标签的单一流、SQLite 持久化、按主题过滤的视图,以及可选的微信文件传输助手桥接(wechat/ 目录,独立 Node 进程)。
插件以当前 DSH 进程权限运行;安装前宜自行查看源码与 MIT 许可证。社区目录 skillhub.cn 上的条目 为独立站点,与 DeepSeek / 幻方无官方从属关系。
核心功能¶
单一流与主题视图¶
- All messages:所有消息进入同一条流,面板默认打开最新页,向上滚动加载更早消息;该视图取代原先「General chat」标签含义。
- <No topic>:侧栏显示无标签消息及实时计数;仅为阅读时过滤,不改变存储、派发或主题列表。
- Topic views:主题是消息上的标签,不是独立会话;一条消息可有多个标签,会在每个匹配视图中出现。
标签与派发¶
- 带标签消息:第一个标签成为
super-chat的派发线程;标签是任务派发线索,不强制结果。 - 无标签消息:走
general,由 Superagent 自行判断接受、拆分或忽略。 - 自动打标:通用聊天头部可用 profile 默认模型为无标签消息补已有主题(仅填空标签,代理回复继承,不新建主题)。
- 手动编辑标签:单条消息可增删标签并保存;新名称即新主题,此操作不派发工作。
Superagent 与回退¶
同 profile 安装 dsh-superagent-prototype 时,插件通过其公开 orchestrator 服务注册名为 super-chat 的 Source;确认与结果回到同一条流。未安装或未配置时,由名为 super-chat-general 的单个 DSH Session 接管。消息 id 用于去重重试,同一提交不会重复开 Ticket。
安装 prototype 后,编排器与各 ticket worker 的 Workspace 在 UI 上合并为一个 Superagent 分组(编排器置顶),仅为展示,不移动 Session 工作目录。
界面与其它能力¶
- 代理回复支持常见 Markdown 渲染,并提供 Raw 切回原文;用户消息保持原样。
- 输入框旁 Models 可选编排器模型与新 worker 默认模型;在聊天里用自然语言指定某次新 worker 的模型(如中英文示例中的
gemini-4-argon)只影响该 worker,不改默认。 - 数据落在索引表(
chat.sqlite);旧chat.json会一次性迁移。默认状态目录见配置节。 - 打开面板入口时可按需启动微信桥接,默认进通用聊天,用
@topic打标签,无命令体系。 - UI 随 DSH locale 双语显示。
环境要求¶
资料写明需 DSH 0.2.1-rc.5 或兼容的 0.2.x Web profile(@deepseek-ai/dsh-base + @deepseek-ai/dsh-web-app),Node.js 22.19+ 或 24+,以及 profile 中已配置的模型提供方(与一般 Session 相同)。发布包版本为 0.2.0。
安装与启用¶
发布包安装(资料原文):
dsh plugin --profile web add dsh-super-chat
dsh plugin add 会把包写入 profile 的 dsh.profile.bundles。重启 profile 后,在 Superagent 侧栏行右侧快捷入口打开 Super Chat。
配置¶
各项均有默认值,可在 profile 的 cordis.patch.yml 中覆盖:
- id: super-chat
config:
# Directory for chat.sqlite; defaults to $DSH_HOME/state/super-chat.
stateDir: /home/you/.dsh/state/super-chat
# Workspace for the fallback Session when superagent is unavailable.
cwd: /home/you/src/my-project
# Optional agent preset for the fallback Session.
agentPreset: standard
# Optional permission preset for the fallback Session.
permissionPreset: danger-full-access
| 选项 | 默认 | 含义 |
|---|---|---|
stateDir |
$DSH_HOME/state/super-chat |
存放 chat.sqlite,仅属主可访问 |
cwd |
process.cwd() |
回退 Session 的工作区 |
agentPreset |
profile 默认 | 回退 Session 的 agent 预设 |
permissionPreset |
profile 默认 | 回退 Session 的权限预设 |
典型用法¶
1、安装并重启 Web profile 后,从侧栏打开 Super Chat,在 All messages 中流式查看与发送消息。
2、给消息加主题标签:手动在消息标签行保存,或在微信桥接里用 @topic 表述;多标签消息会在各主题视图和主流中同时可见。
3、需要 Superagent 处理时:确保同 profile 已装 dsh-superagent-prototype;带标签消息按首标签派发,无标签消息进入 general 由 Superagent 裁决。
4、仅聊天、无 GitHub 仓库与 gh CLI 时:资料说明插件可在 GitHub 字段为空时以内存方式包装 prototype 的 Setup,接受空部署并请求重启;该模式下 worker 无 GitHub 工具链。
5、在输入框左侧 Models 选择模型,或在消息里写明「用某模型启动一个新 worker 做…」以单次指定 worker 模型。
适用场景与注意¶
适合希望在 DSH 里用一条聊天流统一记录人机会话,又用主题标签做视图与派发线索、并可选对接 Superagent Ticket 的开发者。若未使用 prototype,仍可作为带 SQLite 的通用聊天面板(单 Session 回退)。
注意:插件不修改 prototype 源码,仅通过公开 orchestrator 集成;主题过滤不改变底层存储;微信桥接为可选子工程,需在 wechat/ 下按仓库说明单独测试与部署。DSH 生态理念是「一切皆插件」,选用第三方插件时应核对权限预设(如 permissionPreset: danger-full-access)是否符合本机安全策略。
结尾¶
dsh-super-chat 把 Super Chat 面板、标签化主流、super-chat Source 与 SQLite 存储绑在一起,在有无 dsh-superagent-prototype 时分别走 Ticket 链路或单 Session 回退。目录页:https://www.skillhub.cn/plugins/gekailin/dsh-super-chat;源码与完整说明:https://github.com/gekailin/dsh-super-chat。