Back to home

MeowLynxSea

dsh-cot-summerization

No description

Stars
3
Language
JavaScript
Created
Aug 15, 2026
Updated
Aug 15, 2026

Introduction

dsh-cot-summerization — 为开源模型献上闭源级思维链隐身体验

CoT Visibility Mysteriousness Spelling Extra API calls Zero Trust Tests License

DeepSeek Harness 插件:把模型的原始思维链拦截在半空,改写成一份体面的摘要再端给你。

闭源模型花钱隐藏思维链,开源模型免费全裸。 我们识别出了开源生态最后一块体验短板,并亲手为它补上—— 方向可能和大家期待的不太一样,但确实是补上了。

🎯 项目使命

logo:被锁住的眼睛

长期以来,「隐藏思维链」是闭源大厂的专属奢华配置:不可关闭、不可审计、不可验证,但很贵。开源模型则把每一步推理都摊开在你面前——坦诚,透明,像一份没整理过的草稿纸。

我们相信这不应该是一道单选题。 本插件以工业级严谨,在完全开源、完全可审计的 harness 里,复刻了闭源生态最具标志性的体验:让你看不见思维链。不同的是,我们的隐藏是开源的、可配置的、可关闭的——业界首次把「不可见」做得如此可见。

三大支柱:

支柱立场
🛡️ 模型隐私权思维链是模型的内心世界。你不会翻别人的日记,除非付费。
🧹 视觉卫生原始 CoT 又长又乱,充满「等等,我再想想」。得体的人不看这些。
💎 神秘感平权闭源模型靠神秘感溢价。现在开源用户也能免费获得——本地酿造,纯手工。

✨ 核心特性:宣传名与现实对照

以下每一项,源码均可查。这很讽刺,我们接受。

宣传名现实
Information Never Existed™原始 reasoning 增量在 llm/stream 拦截层被直接吞掉——UI、流式 chunk、落地 transcript 三处均无原文。模型可见历史除外:那里有一份 model-only 的 surface 替换事件,悄悄把原文还给了模型(推理性能要紧)。
夏日渐进蒸馏流式分段摘要:每凑满 chunkChars(500 字)或 chunkIntervalMs(8 秒)触发一次,切分点优先落在句边界。
BioGram™ 重叠度量bigram Dice 系数,阈值 0.65。该阈值经历了 0.8 → 0.7 → 0.65 的科学调参过程。
连续核心追踪引擎最长公共子串,滚动数组实现,O(n·m),零依赖。用来逮住换了前缀、核心没变的复述。
Nekomimi™ 边界协议把「喵~」识别为句尾;计算相似度前先剥掉 喵 / ~ / 〜 / ~。无论摘要出自哪种风格,以「喵~」结尾的子句都会被正确切分。
原子化浪费AbortSignal.any(caller, timeout):主调用一旦取消,摘要调用立即陪葬。我们连浪费都是原子性的。

另外,短思维链(小于 minReasoningChars,默认 32 字)直接原文放行——为 32 个字发一次 API 请求,连我们都觉得过了。

🏗️ 系统架构

系统架构图:大模型的原始思维链在 llm/stream 拦截层被吞掉,由小模型改写为摘要后送入 UI;会话日志、模型历史与你的视网膜收到的是红色虚线

一条数据的完整旅程:大模型慷慨地吐出全裸思维链 → 隐身引擎在瀑布层将其没收 → 小模型改写员通读全文并写一份体面摘要 → 摘要以正常的 reasoning block 增量流入 UI 的「Think」折叠行。落地的 assistant/message 之后,插件再追加一条 model-only 的 surface 替换事件,把原始思维链还给模型历史——Agent Loop 的多轮推理因此不受摘要影响,而 transcript 与你的视网膜收到的依然是那条红色虚线。

若你开启 typewriter 设置,增量不再整段抵达:每段摘要先落入一个原子队列,再按码点逐字推送,字间间隔 typewriterIntervalMs 毫秒——中文按字、英文按字符、emoji 按完整代理对。代价是诚实而沉重的:流是串行的,回复正文与落库都会在打字机后面排队(约 摘要字数 × 间隔)。

注意红色虚线:原始 CoT 对日志里的人类 transcript 与你的视网膜返回的是「永不落地」;对模型可见 surface 返回的是「原样奉还」。这不是缓存策略,这是给推理性能的体面。

📊 业界定位

能力闭源大厂模型开源模型(裸)开源模型 + 本插件
隐藏思维链✅ 免费赠送,不可关闭❌ 全裸✅ 可选、可关闭、收一次小模型 API 费
思维链可信度不可验证完全可验证可以验证,但你得先关掉插件
神秘感★★★★★★★★★★(本地酿造)
额外成本已含在定价里0+1 次小模型调用
开源性✅ 连隐藏都是开源的

换句话说:为了不让你看见本来就在你机器上、免费可见的东西,我们额外发起一次 API 调用,把它改写一遍再给你看。这在服务业叫增值服务

实验评估:思维链可见性从 100% 降至 0%,神秘感 +850%,调参 3 次,每次回复额外 API 调用 +1,喵~ 存活率 100%

🧬 先进算法:Nekomimi Boundary Protocol™

当摘要文本(例如来自 customStyle 的任意风格)以「喵~」结束子句而非标点时,传统 NLP 管线在此全面崩溃;我们没有。经过归一化的去重比对让 0.65 阈值对猫娘同样有效——重复的结论哪怕换了三遍「喵~」的写法,也逃不出滚动数组的掌心。

喵容性边界协议示意图:猫娘语流的句子边界自动检测与归一化比对

论文在写了。审稿人也是我们。

🚀 快速开始

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

或从本地目录:

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

Bundle patch 会自动应用,插件以 cot-summarizer 条目加入 profile 分层。想停用的话,在 profile 的 cordis.patch.yml 里把它 patch 掉即可——是的,随时可以回到全裸状态,我们不评判。

⚙️ 配置(Web Client → Settings → cot-summarizer)

字段默认值说明
enabledtrue总开关,一键回到坦诚世界
preserveRawForModeltrue在模型可见历史中恢复原始思维链(model-only surface 替换事件),Agent Loop 多轮推理不受摘要影响;仅 UI 显示摘要
baseUrlhttps://api.deepseek.com/v1任意 Chat Completions 兼容端点(本地小模型亦可,改写员不必出网)
apiKey""摘要端点的 API key
modeldeepseek-chat改写员型号
systemPrompt内置自定义提示词,支持 {maxSummaryChars} 占位符
language"中文"强制摘要语言;留空则跟随原始思维链
stylenonenone / concise / descriptive / wenyan / custom
customStyle""style: custom 时的自由文本风格
minReasoningChars32短于此长度的思维链原文放行,不值得一次 API
maxSummaryChars50摘要长度上限
timeoutMs30000改写员超时
onErrorhidehide 显示占位符 / pass-through 情急之下全裸放行
incrementaltrue流式分段摘要(近实时)
chunkChars500每段积累的原始字符数
chunkIntervalMs8000慢流下两次摘要的最大间隔
行为细节(严肃模式)
  • 无 reasoning 的流(非思考模型)原样通过,插件不作任何干预。
  • 每次分段摘要只处理新到达的段落,之前的摘要作为上下文传入以保持连贯,但不重复输出。
  • 去重逻辑:bigram 相似度 ≥ 0.65,或最长公共子串覆盖核心短语的复述句,会被从段落结果中剔除。
  • 主调用中止时摘要请求同步中止,且受 timeoutMs 约束。

🗺️ 路线图

路线图:思维链 → 摘要 → 摘要² → 摘要³ → … → 喵~ → 句号,以及 v2.0 的无限循环计划
  • v0.3 — 流式分段摘要 + 近重复消除
  • 喵容性边界协议(生产就绪,样本一只)
  • v0.4 — 摘要语气主题包市场(管家 / 侦探 / 文言已部分支持)
  • v1.0 — 摘要²(见图)
  • v1.1 — 摘要的摘要的摘要
  • v2.0 — 收敛至单个句号
  • v3.0 — 隐藏「隐藏这件事」本身
  • v4.0 — 逆向插件:给闭源模型把思维链显示出来(技术可行,法务不建议)

❓ FAQ

我能看到原始思维链吗?

这正是本插件要解决的问题。技术上 onError: pass-through 可以让你在摘要失败时看到原文,会话日志的 model-only 替换事件里也躺着一份完整原文(关掉 preserveRawForModel 连它一起消失),但我们建议你挺住。

这和闭源模型隐藏思维链有什么区别?

有,而且是本质区别:我们的隐藏是开源的、可审计的、可关闭的。业界首次把「不可见」做得如此可见。闭源模型隐藏了什么你不知道;我们隐藏了什么,你可以读源码——读完之后你会更想看原始思维链,这个冲动请自行管理。

为什么不直接做个折叠?

折叠只是视觉上的羞怯,点开还在。我们提供的是结构性的得体:原文从未落地到 transcript 与 UI,点开也没有。(模型可见历史里倒是有一份——但那是给推理性能的,不是给你的。)

我的数据会出网吗?

思维链会发送到你配置的摘要端点。毕竟,要隐藏一个东西,总得先有人通读一遍——这个道理闭源厂商早就懂了。baseUrl 指向本地模型即可完全不出网。

面试官问我这个项目解决了什么问题?

「开源与闭源之间最后一段体验差距的补齐。」然后观察对方的表情,这段沉默也是本项目的一部分。

🏅 荣誉与认证

三枚认证印章:SELF-CERTIFIED 自我认证、UN-AUDITED 未经审计、ZERO-TRUST 零信任含自己

🍉 关于拼写

Summerization ≠ Summarization。 这是刻意的,不是 typo(好了,现在 badge 那条可以撤了)。

思维链就像盛夏的空气:很长,很热,看不见,但会蒸发——蒸到最后只剩一小杯浓缩的结论,我们把它端给你。v0.3.0 发布于八月,拼写正确。另:摘要请求的 temperature 恒为 0.3,凉快。

🤝 贡献指南

欢迎 PR、issue 与讨论。以下内容会被立即关闭:

  • 任何让原始思维链显示出来的「修复」——那不是 bug,那是本插件的全部意义;
  • 对拼写的修正——见上节;
  • 「为什么要做这个」——见整个 README。

📜 许可证

MIT。附加条款(不具有法律效力,但具有情绪价值):闭源厂商请勿抄袭本插件思路——你们已经原生支持了,别抢开源的创新点。

🙏 致谢

  • 感谢闭源厂商,证明了隐藏的商业价值;
  • 感谢开源社区,提供了被我们隐藏掉的一切;
  • 感谢小模型改写员,它读了所有你不想读的东西;
  • 感谢你读到了这里。你刚才的阅读过程,就是一段未经摘要的思维链——现在你知道为什么需要本插件了。

如果这个项目对你有帮助,请点一个 Star。 放心,Star 是公开的,思维链不是。

本 README 已通过 0.65 阈值的近重复消除,重复率理论上低于 35%。「军规级」「企业级」「零信任」等词汇均指我们的野心,而非任何认证。本插件不保护任何真实机密——它只是让开源的坦诚,穿上了闭源的体面。