前言¶
DSH 的插件生态允许把处理逻辑挂到 harness 的请求链路上。dsh-cot-summerization 关注的是 reasoning 显示:它不直接展示原始思维链,而是在 llm/stream 拦截层吞掉原始 reasoning 增量,再由 Chat Completions 兼容的小模型生成一条缩略思维链,以 reasoning 块形式流入 UI 的 Think 行。
与直接展示原始思维链相比,该插件把界面显示改为小模型生成的摘要。原始思维链仍可在模型可见历史中恢复,避免 Agent Loop 多轮推理受摘要影响。
插件定位¶
- 维护者:
MeowLynxSea - 类别:
extension - 许可证:
MIT - 定位:DSH 插件,用于隐藏原始思维链的界面显示,并展示由小模型生成的摘要思维链。
- 隐藏机制:开源、可审计、可关闭。
核心能力¶
- 在
llm/stream拦截层吞掉原始 reasoning 增量,使 UI、流式 chunk 与落地 transcript 不保留原文。 - 由小模型改写出一条缩略思维链,以 reasoning 块形式流入 UI 的 Think 行。
- 支持流式分段摘要,可按
chunkChars与chunkIntervalMs触发,并支持adaptiveChunk动态分块。 - 支持近重复消除,使用 bigram Dice 相似度阈值 0.65,并用最长公共子串检测核心复述。
- 支持 Nekomimi 边界协议,对以喵、~、〜、~结尾的子句做边界识别与归一化比对。
- 可配置 DSH 自身 LLM 通道的 provider 与 model;留空时跟随当前请求。
- 支持
hide、pass-through、drop错误处理策略,并对短思维链原文放行。 - 在模型可见历史中恢复原始思维链,避免 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控制总开关。style与language影响摘要输出。minReasoningChars为短思维链原文放行阈值,默认 32 字。maxSummaryChars限制摘要长度。timeoutMs约束摘要等待时间。incremental、chunkChars与streamReasoningBlock影响流式分段摘要与 Think 行显示。
适用场景与注意¶
适合以下场景:
- 希望 UI 中不直接显示原始思维链。
- 希望由小模型生成一条更接近“正在思考”的摘要。
- 需要保持模型侧历史中的原始思维链。
注意:
- 该插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。
- 原始思维链会经过 DSH 已配置的 LLM 通道,先确认 provider/model 是否符合出网要求。
- 已核实资料未给出星标数与完整目录页 URL,本文不引用。
链接¶
https://github.com/MeowLynxSea/dsh-cot-summerization