dsh-cot-summerization:DeepSeek Harness 的思维链摘要插件

前言

DSH 的插件生态允许把处理逻辑挂到 harness 的请求链路上。dsh-cot-summerization 关注的是 reasoning 显示:它不直接展示原始思维链,而是在 llm/stream 拦截层吞掉原始 reasoning 增量,再由 Chat Completions 兼容的小模型生成一条缩略思维链,以 reasoning 块形式流入 UI 的 Think 行。

与直接展示原始思维链相比,该插件把界面显示改为小模型生成的摘要。原始思维链仍可在模型可见历史中恢复,避免 Agent Loop 多轮推理受摘要影响。

插件定位

  • 维护者:MeowLynxSea
  • 类别:extension
  • 许可证:MIT
  • 定位:DSH 插件,用于隐藏原始思维链的界面显示,并展示由小模型生成的摘要思维链。
  • 隐藏机制:开源、可审计、可关闭。

核心能力

  1. llm/stream 拦截层吞掉原始 reasoning 增量,使 UI、流式 chunk 与落地 transcript 不保留原文。
  2. 由小模型改写出一条缩略思维链,以 reasoning 块形式流入 UI 的 Think 行。
  3. 支持流式分段摘要,可按 chunkCharschunkIntervalMs 触发,并支持 adaptiveChunk 动态分块。
  4. 支持近重复消除,使用 bigram Dice 相似度阈值 0.65,并用最长公共子串检测核心复述。
  5. 支持 Nekomimi 边界协议,对以喵、~、〜、~结尾的子句做边界识别与归一化比对。
  6. 可配置 DSH 自身 LLM 通道的 provider 与 model;留空时跟随当前请求。
  7. 支持 hidepass-throughdrop 错误处理策略,并对短思维链原文放行。
  8. 在模型可见历史中恢复原始思维链,避免 Agent Loop 多轮推理受摘要影响。

成本与数据路径

  • 额外成本为 +1 次小模型调用。
  • 原始思维链会发送到 DSH 已配置的提供方/模型。
  • 若需要避免出网,可将 DSH 提供方指向本地模型。
  • 主调用中止时,摘要请求同步中止,并受 timeoutMs 约束。
  • 开启 typewriter 时,流为串行,回复正文与落库会在打字机后排队。

安装与启用

安装插件:

dsh plugin add github:MeowLynxSea/dsh-cot-summerization

如果从本地目录安装:

cd ~/.dsh/profiles/web
pnpm add file:/path/to/dsh-cot-summerization

停用插件时,在 profile 的 cordis.patch.yml 中把 cot-summarizer 条目 patch 掉即可。

Web Client 配置

Web Client → Settings → cot-summarizer 中调整以下配置项:

enabled
style
language
minReasoningChars
maxSummaryChars
timeoutMs
incremental
chunkChars
streamReasoningBlock

其中:

  • enabled 控制总开关。
  • stylelanguage 影响摘要输出。
  • minReasoningChars 为短思维链原文放行阈值,默认 32 字。
  • maxSummaryChars 限制摘要长度。
  • timeoutMs 约束摘要等待时间。
  • incrementalchunkCharsstreamReasoningBlock 影响流式分段摘要与 Think 行显示。

适用场景与注意

适合以下场景:

  • 希望 UI 中不直接显示原始思维链。
  • 希望由小模型生成一条更接近“正在思考”的摘要。
  • 需要保持模型侧历史中的原始思维链。

注意:

  • 该插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
  • 原始思维链会经过 DSH 已配置的 LLM 通道,先确认 provider/model 是否符合出网要求。
  • 已核实资料未给出星标数与完整目录页 URL,本文不引用。

链接

https://github.com/MeowLynxSea/dsh-cot-summerization
羽毛球分组比赛记分
小程序二维码

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

小夜