DeepSeek Harness (DSH) 在管理长对话会话时,往往依赖首词作为标题,或者需要开发者手动维护。dsh-auto-chat-titles 插件通过替换 DSH 内置的 session-title-llm 策略,提供基于语义的自动标题生成能力。它继承了 DSH 的核心服务行为(如持久化、取消、归一化等),同时允许在设置中动态调整生成参数。
核心功能¶
该插件主要解决对话标题语义化与可配置性不足的问题:
- 语义化标题生成:不再依赖首词回退,而是利用 LLM 根据对话内容生成更准确的标题。
- 模型选择:在 Settings → Plugins 中提供独立的标题模型选择器,可继承当前对话路由或从宿主机目录中选择模型。
- 手动重生成:在对话头部提供「Regenerate title」按钮,点击后显式调用持久化服务。手动重生成会取消标题的 Pinning 状态并替换标题;手动重命名则继续保留 Pinning。
- 上下文重生成:支持从最近的若干条用户消息中提取上下文进行标题重写。
- 实时配置:支持实时调整标题长度、重生成上下文窗口、输入字节数限制、输出 Token 数及超时设置。
- 核心行为兼容:完整保留 DSH 的取消机制、归一化、持久化、来源追踪、固定标题 和投影 等现有行为。
安装与启用¶
在具备 Web Profile 的 DSH 环境中执行以下命令进行安装:
dsh plugin --profile web add github:leonardoxr/dsh-auto-chat-titles
安装完成后,插件会自动生效。宿主机的输出内容支持热重载。如果需要修改浏览器端代码,需重新构建客户端产物并刷新页面。
典型用法¶
- 打开 Settings → Plugins → Automatic chat titles。
- 在 Title model 中选择具体的模型,例如继承当前对话路由或从宿主机目录中选择。
- 根据语言需求调整 Title length(非 CJK 语言通常为目标单词数)。
- 设置 Regeneration context,指定手动重生成时包含的最近用户消息数量。
- 在 Advanced generation limits 中调整 CJK 长度、输入字节数、输出 Token 数及超时时间。
- 在对话界面点击「Regenerate title」按钮,或在输入框中输入
/regenerate-title命令来触发重生成。
系统要求¶
- DeepSeek Harness:需要 0.1.1-rc.2 或更新版本的 0.1.x 预发布版本。
- Node.js:需要 22 或更高版本。
- Web Profile:需要安装标准的 session-title、settings、commands 和客户端运行时捆绑包。
注意事项¶
- DSH 目前仅支持同时启用一个异步标题提供者。
- 插件设置会持久化到
$DSH_HOME/settings.yaml下的auto-chat-titles配置项中。 - 安装前请检查源码与许可证(MIT)。
生态背景¶
DeepSeek Harness 采用「一切皆插件」的理念,dsh-auto-chat-titles 是社区维护的插件,与 DeepSeek 官方无官方从属关系。更多插件信息与源码,请参考社区目录或 GitHub 仓库。