前言¶
在 DeepSeek Harness(DSH)里,侧边栏会话标题影响检索和回顾。默认策略是 first-prompt:只用首条用户消息生成一次标题,之后不再更新。官方的实验性 bundle 走 all-prompts:每条消息都尝试刷新,但 prompt、语言、长度写死在代码里,也难控制调用频率。
下面介绍社区插件 会话标题工坊(Session Title Studio,idealclover/dsh-session-title-studio)。它在 DSH 自带的 session/title 与 ctx.sessionTitle 之上,提供可配置的生成配方、可编排的刷新策略,以及不额外调模型的本地话题漂移检测;维护者为 idealclover,许可证为 MIT,npm 包当前公开版本为 0.8.1。
这是什么¶
会话标题工坊是 DSH 的第三方插件,npm 包名为 @idealclover/dsh-session-title-studio。一句话定位:给会话标题加上可配置的生成配方和可编排的刷新策略,并自带可视化设置页。
它要解决的核心矛盾是:默认标题「只生一次、日久失真」,实验性方案「每条都刷、成本和格式不可控」。本插件在「首次自动生成」之上,用策略决定何时再调模型,并支持手动刷新与手改标题保护;刷新失败时保留旧标题,没有新消息时不调用模型。
底层复用 DSH 自己的标题日志与服务,标题在回放、恢复、分页后仍存在,且不会进入主对话模型的上下文。
核心功能¶
Recipe(生成配方)¶
可自定义用于生成标题的 prompt、输出语言、长度上限、命名风格、确定性前后缀,以及模型路由。格式与前后缀在默认策略与官方实验 bundle 中均不可配,这里是主要差异之一。
Policy(刷新策略)¶
支持空闲一段时间后刷新、每 N 轮对话刷新、定时扫描、手动刷新,并带一整套护栏(README 称可与新消息、间隔、日预算等成本控制配合;具体字段见仓库内 docs/configuration.zh.md)。
| 能力 | 默认 first-prompt | 官方 all-prompts | 会话标题工坊 |
|---|---|---|---|
| 生成时机 | 仅首条消息 | 每条消息 | 首次自动 + 策略决定 |
| 刷新时机可配 | 否 | 否 | 是 |
| prompt 可配 | 否 | 否 | 是 |
| 格式/前后缀 | 否 | 否 | 是 |
| 语言/长度 | 硬编码 | 硬编码 | 可配 |
| 手动刷新 | 无 | 无 | /title refresh 等 |
| 手改标题保护 | 是 | 是 | 是(可强制) |
Drift(话题漂移)¶
用本地 n-gram 比较最近消息与当前标题依据,判断话题是否偏离;不额外调用模型,可作为是否触发刷新的参考之一。
Settings(设置入口)¶
- Settings → 会话标题工坊(独立设置页);
- 插件 → 会话标题工坊 → 设置(插件详情页内)。
批量改配置或批量重建标题前,应先阅读仓库中的详细配置参考,避免覆盖用户手改标题。
安装与启用¶
插件已收录于 Awesome DSH Plugin 社区目录(公开索引含 0.8.1)。在使用该社区索引的插件市场中刷新后,可搜索 dsh-session-title-studio;社区收录不代表官方认证。
DSH 自定义插件索引地址:
https://cdn.jsdelivr.net/npm/dsh-plugin-catalog/index.json
1、打开 DSH Web/Desktop 的 插件 → 添加插件 → 安装第三方插件,填入 npm 包名:
@idealclover/dsh-session-title-studio@0.8.1
也可以使用 Git 来源:
git+https://github.com/idealclover/dsh-session-title-studio.git
如需本地开发,可将克隆后仓库的绝对路径填入插件安装器;项目为纯 JavaScript,README 写明不需要额外构建。
2、启用 会话标题工坊。若 DSH 提示需要重启,按提示重启。
3、若此前启用了官方的 「随对话更新的标题」(dsh-experimental-session-titles-bundle),请先关闭。全局只有一个标题提供方槽位,两个同时启用会导致其中一个注册失败。
package.json 中声明的宿主要求包括:dsh 版本 >=0.2.1-rc.1 <0.3.0-0,Node ^22.19.0 || >=24.0.0。
典型用法¶
安装并启用后:
- 在输入框输入
/title使用插件命令;也可使用/title refresh手动刷新(README 表格与用法说明中均有提及)。 - 点击侧栏某条会话的 「⋯ → 重新生成标题」,可直接为该会话更新标题,无需先打开对话。
改配方与策略:进入 Settings → 会话标题工坊 或插件详情页内的设置 UI。AI 助手代用户改配置时,仓库 README 要求先读 docs/configuration.zh.md,不要仅凭 README 猜测嵌套结构与默认值。
适用场景与注意¶
适合谁: 长时间、多轮会话较多,希望标题随话题演进但又不想「每条消息都调一次模型」的 DSH 用户;需要固定前后缀、指定语言/长度或单独路由标题模型的团队。
运行与安全:
- 第三方插件在当前 DSH 进程权限下运行;安装前应自行查看 GitHub 源码 与 MIT 许可证,确认符合你的安全策略。
- 标题生成仍会走 DSH 的标题 LLM 能力(配方中的模型路由);漂移检测为本地逻辑,不额外占模型配额。
- 与官方实验性标题 bundle 互斥,部署前只保留一个标题提供方。
插件在 GitHub 上公开,截至资料抓取时仓库星标为 1;功能说明以 README 与 0.8.1 发行信息为准。
结尾¶
会话标题工坊把 DSH 会话标题从「一次定格」或「每条硬刷」两种极端,收成「配方 + 策略 + 漂移护栏」的可配置方案,并保留手动刷新与手改保护。进一步了解可访问 SkillHub 目录页 idealclover/dsh-session-title-studio 与项目仓库 github.com/idealclover/dsh-session-title-studio。