dsh-title-index
在终端中运行以下命令:
dsh plugin install gtaifu/dsh-title-index
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 终端中执行 dsh plugin install gtaifu/dsh-title-index 即可安装本插件,源码见 https://github.com/gtaifu/dsh-title-index 。
插件介绍
dsh Web 端输入框的 @ 会话候选在展示每个候选的最新标题时,需要对该会话的 session.jsonl.zstd 完整解压并逐行折叠。会话积累到几十上百份后,每次按键都要重新扫描全部日志,官方 LRU 仅缓存 5 条,实测 114 个会话下 top-50 标题读取耗时接近 10 秒,@ 菜单几乎不可用。
本插件通过 cordis.patch.yml 禁用官方 session-query-sqlite 行并插入继承同一引擎的子类,仅覆写 readTitleSnapshots:以 (sessionId, mtimeMs, size) 为失效键的磁盘索引缓存折叠结果,命中时毫秒级返回,未命中或日志追加时走官方折叠并写回索引;活动会话、官方读取失败、索引损坏均自动回退官方路径,其余方法(listSessions、搜索、lineage 等)全部保持官方实现不变。
适合会话量较大(数十到上百个持久化会话)、日常频繁使用 @ 引用功能的 dsh Web 端用户。插件对配置几乎零侵入,仅需在 profile 中添加一条依赖并按序声明 bundle 即可生效。
使用场景
- dsh Web 输入框 @ 会话候选标题加载超过数秒时的提速
- 持久化会话积累到数十上百份后 @ 菜单响应迟钝
- 标题折叠结果需跨查询复用而官方 LRU 容量不足
适合人员
- 管理数十至数百个持久化会话的 dsh Web 日常使用者
- 频繁使用 @ 引用并关注输入延迟的 dsh 重度用户
- 希望仅添加一条依赖即零配置生效的用户