Releases: leolee9086/dsh-session-title-refresh
Releases · leolee9086/dsh-session-title-refresh
Release list
v0.2.0 — 会话菜单内重新总结会话标题
本次发布
会话标题重新总结插件 0.2.0:只在侧边栏会话原有的「⋯」菜单中提供一个入口,文案为「重新总结会话标题」。
主要变更
- 只保留会话菜单入口:移除旧版的顶部按钮、输入框下方按钮和设置页附加项,不再注入全局样式。
- 修正“点击后标题没有变化”:旧逻辑调用
sessionTitle.refresh(),但默认标题 provider 即使手动刷新也只取第一条人类消息,因此经常“成功但结果几乎不变”。现改为按人类文字消息生成,优先保留最近内容,空间允许时保留首条。 - 支持历史会话:旧逻辑只在 live session 表查找,未加载的会话必然失败;现通过公开的 agent lookup 加载目标会话并使用其服务作用域。
- 并发保护:生成期间的手动改名或更新的总结请求不会被旧结果覆盖;插件卸载会中止未完成的生成。
- 零运行时依赖:不再 import 任何 DSH 包,仓库内不出现 DSH 源码路径,标题生成与流组装通过运行时的服务契约完成。
安装
# 在 DSH Web profile 目录(默认 ~/.dsh/profiles/web)
pnpm add 'github:leolee9086/dsh-session-title-refresh#v0.2.0'下载本页附带的 dsh-session-title-refresh-0.2.0.tgz 后也可以直接安装:
pnpm add ./dsh-session-title-refresh-0.2.0.tgz随后在 profile 的 cordis.patch.yml 追加:
- insert:
- id: session-title-refresh
name: dsh-session-title-refresh兼容性
需要 Node.js 22.19.0 或更高版本。仓库与压缩包都包含构建好的 lib/,安装不需要克隆或修改 DSH 源码。运行时零依赖,唯一的开发依赖是测试用 jsdom。
包内已带 cordis.patch.yml,可作为 bundle 直接挂载。
验证
pnpm test — 18 项测试全部通过,覆盖菜单注入与会话定位、鉴权、请求体上限、字节预算与 Unicode 截断、失败保留原标题、并发改名保护、取消与卸载,以及标题请求的流组装与日志事件。