DeepSeek Harness 会话标题插件介绍

在 DeepSeek Harness (DSH) 中,新会话默认使用时间戳编号,导致长时间运行的会话列表难以快速浏览。现有的方案要么只等待空闲再生成(用户等待时无标题),要么每次轮次都调用模型(成本高昂)。该插件将这两个概念拆分为互补的阶段:即时关键词标题和空闲预算模型优化。

核心功能

  1. 两阶段管道:用户消息到达时立即生成关键词标题(零成本,毫秒级);会话进入空闲状态后,调用预算模型进行优化,标题随会话演变。
  2. 成本控制:预算路由自动从注册模型目录中按名称模式筛选最便宜的模型,并在模型拓扑结构变化时自动失效缓存。
  3. 原始关键词算法:包含去噪(代码块/URL/Markdown)、脚本检测(拉丁/中日韩)、停用词和功能词过滤,以及保持顺序的字符预算截断,支持中文、英文、日文和韩文。
  4. 标题去重:相同标题不会重复写入;跨会话重复的标题会自动添加数字后缀(如 Fix Login Bug (2))。
  5. 摘要集成:优化阶段同时生成一行会话摘要,通过 session/caption-note 事件写入会话日志,供列表 UI 和导出工具使用。
  6. 尊重手动标题:手动重命名后自动生成完全停止,绝不覆盖(即使重命名正在进行中的优化调用,也不会写回)。
  7. 零配置启动:默认配置即可工作,所有行为均可调整。

安装与启用

通过命令行安装最新版本到指定 profile:

dsh plugin --profile demo add github:JohnXu22786/session-titler

移除插件:

dsh plugin --profile demo remove dsh-session-caption

也可以从本地目录或 tarball 安装:

# 从本地目录
dsh plugin --profile demo add /path/to/dsh-session-caption

# 从本地 tarball (需先 npm pack)
dsh plugin --profile demo add ./dsh-session-caption-0.1.0.tgz

安装后需重启 DSH 进程才能生效。安装成功后,dsh --profile demo --dump-config 输出中应包含 session-caption 配置行。

配置说明

插件支持零配置启动,所有行为可调。配置文件位于 $DSH_HOME/cordis.patch.yml。以下是关键配置项:

- id: session-caption
  config:
    instant:
      enabled: true        # 开启 Phase 1 关键词提取
      maxCjkChars: 14      # 中日韩标题最大字符数
      maxWords: 6          # 拉丁语标题最大单词数
    refine:
      enabled: true        # 开启 Phase 2 优化
      timeoutMs: 60000     # 单次调用超时时间
    model:
      provider: ''         # 显式指定 Phase 2 使用的模型提供商
      model: ''            # 显式指定 Phase 2 使用的模型名称
    dedup:
      enabled: true        # 开启标题去重
      suffix: '({n})'      # 重复后缀模板

技术实现

该插件是一个标准的 DSH Bundle(配置层 + 插件代码),通过 package.json 中的 dsh.bundle 字段指向 cordis.patch.yml。启动时,它会禁用内置的 session-title-llm(因为 session-title 服务设计为单提供者),并注册自身的 session-caption 提供者。

  • Phase 1:直接对用户消息进行关键词提取,不调用大模型。
  • Phase 2:仅在会话空闲窗口触发。模型选择优先级为:显式配置 > 预算模式(筛选便宜模型)> 会话自身路由。

注意事项

  1. 重启生效:安装后必须重启 DSH 进程,配置才会加载。
  2. 单提供者冲突:session-title 服务设计为单提供者。如果另一个插件也注册了标题提供者,两者会互相替换。该插件的 bundle 层默认会禁用内置的 session-title-llm。
  3. 空闲窗口:若关闭 instant.enabled,Phase 1 不再生成标题,但 Phase 2 仍仅在空闲窗口运行,不会在繁忙时段生成。

参考

  • GitHub: https://github.com/JohnXu22786/session-titler
  • 目录页: https://www.skillhub.cn/plugins/JohnXu22786/session-titler
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜