前言¶
DeepSeek Harness (DSH) 默认的 session-title-first-prompt-llm 插件在生成标题时,常输出完整的句子。例如,用户询问“解释一下 JavaScript 闭包到底是什么”,侧边栏显示的标题往往是这句话的完整复制。这导致标题冗长,难以快速扫描和检索。
造成这一现象的根本原因在于官方提示词的约束力不足。它仅要求“目标约 5 个单词”,且“简洁”的定义模糊。本插件通过优化系统提示词,将“简洁”转化为可执行的规则,在保留原有逻辑的基础上,仅修改提示词部分,从而解决标题过长的问题。
插件定位¶
这是 DeepSeek Harness (DSH) 的一个会话标题插件,旨在将长句输入压缩为单字或单词,提高会话标题的可记忆性。该插件由 Relethe 维护,采用 MIT 许可证。
核心功能¶
该插件提供以下能力:
- 零侵入:逻辑完全复用官方
first-prompt-llm流程(首条用户消息触发、流式生成、失败回退),仅修改了系统提示词。 - 自动接管:与官方插件互斥。加载时会关闭官方插件并注册自身,确保同一时间只有一个标题生成器处于激活状态。
- 容错机制:当模型报错、超时或输出为空时,会自动回退到官方的确定性回退标题。
- 可配置:支持调整输入字节数上限、输出 Token 数上限以及请求超时时间。
安装与启用¶
该插件以 dsh bundle 形式提供,无需手动编辑配置文件。执行以下命令安装:
dsh plugin --profile web add github:Relethe/dsh-brief-session-title
安装完成后,重启 DSH,新会话的标题生成将生效。
配置¶
插件提供以下可调参数,默认值如下:
| Key | Default | Meaning |
|---|---|---|
maxInputBytes |
4096 | 输入内容的 UTF-8 字节数上限,超过则请求失败 |
maxOutputTokens |
64 | 标题生成的最大 Token 数 |
timeoutMs |
60000 | 每次请求的超时时间(毫秒) |
provider / model |
omitted | 若需指定,需同时提供两者;留空则复用当前会话的主请求路由 |
典型用法¶
通过优化后的提示词规则,插件能产出更精炼的标题。以下为示例:
- 解释一下 JavaScript 闭包到底是什么 ->
JS闭包浅说 - 用英语表达中国近代半文言文文法 ->
半文言文法表达 - 中式微恐 2.5D 沙盒生存游戏系统 PRD ->
游戏PRD - Fixing Memory Leak in Node ->
Node memory leak - Database Schema Design Review ->
Schema review
注意事项¶
- 仅限新会话:已存在的会话标题保持原样,仅新会话受此插件影响。
- 手动重命名锁定:用户手动重命名的标题不会被自动生成覆盖,遵循官方 DSH 行为。
- 卸载方式:如需恢复默认行为,执行移除命令,官方标题插件将自动恢复:
dsh plugin --profile web remove dsh-brief-session-title
结尾¶
dsh-brief-session-title 通过修正提示词约束,将原本冗长的会话标题收敛为关键信息点。适合希望精简侧边栏、提升检索效率的开发者。更多细节可参考插件目录或源码仓库。