🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

思考关键词标红 Yokira404/dsh-thinking-highlight

DeepSeek Harnessv1.3.2
Yokira40436 天前有提交已提供中文文档扫描:未发现敏感能力

统计思考行关键词次数并逐词标红高亮

30/100
综合分
0
GitHub 星标
318
npm 周下载
—/5
用户评分

数据截至 2026/9/30 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add @yokira404/dsh-thinking-highlight
npm 源 · @yokira404/dsh-thinking-highlight 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功(非静态推断);本次验证针对插件 v1.4.1,当前版本为 v1.3.2
L4 · 真实安装等级说明 →
数据截至 2026/10/27·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/03·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 36 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包@yokira404/dsh-thinking-highlight @ 1.3.2
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/8 09:41:24

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 统计思考行关键词次数
  • 逐词标红高亮
展开完整介绍(65 字)↓

自动标注提示链中的关键词Keyword counts and highlighting for DSH thinking rows

README

由 DeepSeek 最新模型翻译生成
标红插件 · Thinking Highlighter English → DSH 插件:统计思考行(思维链)里关键词出现的次数并按词标红,设置在左侧有独立分区。 思考行上的计数徽章与标红 - 计数徽章:每条思考行的标题行上、紧挨着标题显示 关键词 × n,一个词一个徽章,一眼看出哪个词反复出现、出现几次。 - 点徽章 = 这个词的开关:点一下,这个词在所有行里停止标红,徽章原地变成灰虚线(位置和计数都还在),再点一下恢复。 状态会存进设置,刷新后仍然有效。 - 标红:展开思考行后,命中的关键词以它自己的颜色加底色标出;正文文字本身不变色,所以不会出现「字和背景一个色」。 - 每个词自己的样式:颜色、字体(默认 / 等宽 / 衬线)、加粗、斜体、下划线——正文里的标红和徽章上的词一起变。 - 完整词:按词开关。开了以后 is 只匹配独立成词的位置,不再命中 this 或 ThisIs。 - 折叠时统计整段推理:折叠与展开时的数字一致,不会只数那一行预览。 - 逐行眼睛:单独隐藏某一行的标红,不影响其它行。 - 一个词只有一条:输入已存在的词会被拒绝,并说明原因。 安装 需要 DSH 桌面端(开发与验证基于 @deepseek-ai/dsh-desktop 0.2.0-rc.2)。
展开完整文档(README 剩余 1 节)
标红插件 · Thinking Highlighter

English →

DSH 插件:统计思考行(思维链)里关键词出现的次数并按词标红,设置在左侧有独立分区。

思考行上的计数徽章与标红

- 计数徽章:每条思考行的标题行上、紧挨着标题显示 关键词 × n,一个词一个徽章,一眼看出哪个词反复出现、出现几次。
- 点徽章 = 这个词的开关:点一下,这个词在所有行里停止标红,徽章原地变成灰虚线(位置和计数都还在),再点一下恢复。
状态会存进设置,刷新后仍然有效。
- 标红:展开思考行后,命中的关键词以它自己的颜色加底色标出;正文文字本身不变色,所以不会出现「字和背景一个色」。
- 每个词自己的样式:颜色、字体(默认 / 等宽 / 衬线)、加粗、斜体、下划线——正文里的标红和徽章上的词一起变。
- 完整词:按词开关。开了以后 is 只匹配独立成词的位置,不再命中 this 或 ThisIs。
- 折叠时统计整段推理:折叠与展开时的数字一致,不会只数那一行预览。
- 逐行眼睛:单独隐藏某一行的标红,不影响其它行。
- 一个词只有一条:输入已存在的词会被拒绝,并说明原因。

安装

需要 DSH 桌面端(开发与验证基于 @deepseek-ai/dsh-desktop 0.2.0-rc.2)。

git clone https://github.com/Yokira404/dsh-thinking-highlight.git
cd dsh-thinking-highlight
node evidence/install.mjs desktop # 或传入其它 profile 名

安装脚本会在 profile 的 package.json 里写一条指向本目录的 link: 依赖、把包加进 dsh.profile.bundles,并在 /node_modules 下建一个 junction。之后重启应用:侧边栏「插件 → 已安装」里会出现卡片,卡片右侧的开关即整体启停。

也可以用插件页自带的「添加插件」填本目录路径,效果相同(它还会顺带跑一次 pnpm 刷新 lockfile)。

依赖那一条不能省:插件页只列 profile 记成依赖(或随安装提供的官方可选包)的组合包。只写进 dsh.profile.bundles 的包照常加载,但不会出现卡片,也就没有开关。

设置

Ctrl + , → 左侧导航 标红插件 / Thinking Highlighter。

插件自己的设置分区

| 行 | 作用 |
| 语言 | 插件界面语言(中文 / English);左侧导航那一行的名字也跟着变 |
| 插件开关 | 一键隐藏全部颜色、徽章与标红 |
| 折叠时显示标注 | 折叠的思考行是否显示徽章与眼睛 |
| 展开时撑开思考框(默认关) | DSH 把一轮的过程收进一个最高 400px 的可滚动框里;打开这一项后,有行展开期间插件会临时去掉这个高度上限,长思维链不用在框内滚动就能读完 |
| 区分大小写 | 关掉(默认)时 is 也会命中 IS |
| 关键词(每行) | 关键词输入框 ▸样式 完整词 抑制 删除 |
| ▸ 样式面板 | 这个词的颜色、字体、B 加粗、I 斜体、U 下划线 |

设置存在浏览器本地(localStorage),改动即时生效。

实现要点

思考行是内置组件、没有对外插槽,所以装饰走渲染后的 DOM——只切分文本节点,从不替换 React 的节点:

- 标红时把 React 自己那个文本节点的值清空,在它前面插入插件新建的 span。React 之后写回的仍是同一个节点,因此流式输出既不崩、也不丢字、不会出现重复文字。
- 变更按 90 ms 合并;行文本与设置都没变就整行跳过。
- 徽章插在标题那一行本身([data-open] > [data-disclosure-row] > 内容行),标题与它的分隔点之后、折叠预览之前:折叠时整个头部是固定高度的盒子,挂在块级层上会掉到行下面去。
- 徽章组完全不参与收缩(旁边的折叠预览是 flex: auto),所以它有定宽上限、只裁自己。
- 计数用的文本只排除徽章组,高亮 span 要算进来:两者都带标记,一律排除会让数字在第一次标红后掉到 0,连徽章一起消失;反过来连徽章一起数,就是自己数自己,数字每轮往上爬一格。
- 折叠行没有正文可数:宿主只在展开时挂载思维链,整段文字活在宿主组件的 text 属性上。插件顺着 React 挂在每个节点上的 fiber(__reactFiber$…)往上找到它;任何意外情况(没有 fiber、属性改名、换 React)都读作「拿不到」,退回只用 DOM 文字。

兼容性与已知取舍

- 插件按当前 DSH 渲染出的 [data-variant="think"] 行来装饰。DSH 若改动这些内部结构,这里可能需要跟着改;查找失败时插件只会「少做一点」,不会把对话弄坏。
- 抑制是按关键词生效的(同一个词在所有行一起停),逐行控制是那只眼睛。
- 四个设置里只有「展开时撑开思考框」会碰宿主布局,所以它默认关闭。

开发

node evidence/selftest.mjs # 27 项:切分/还原/计数/大小写/颜色/完整词边界
node evidence/client-harness.mjs # 91 项:浏览器半边在桩宿主里真的跑起来
node evidence/css-check.mjs # 19 项:样式表字面量(括号、徽章/行/面板规则)
node evidence/locale-check.mjs # 8 项:包 meta、两个语言文件与版本号互相对得上
node evidence/e2e-bundle.mjs @Yokira404/dsh-thinking-highlight

自检用大括号配对从 client.js 里抽出真正在跑的函数(不是副本)跑在 DOM 桩上;harness 则真的执行 factory、apply、设置页组件和一次完整的思考行装饰。它们针对的都是安静出错的坑:模板字符串丢了尾巴、计数把自己数进去、缓存让标红再也回不来。

e2e-bundle.mjs 对着一个跑起来的临时 profile 做端到端校验:Host 行真的激活、启动清单带上浏览器半边、下发的 bundle 就是当前源码。

| 文件 | 作用 |
| package.json | bundle 清单:dsh.bundle.patch + dsh.client(platform: web) |
| cordis.patch.yml | 往 profile 里插入 thinking-highlight 行 |
| index.js | Host 半边:让包可加载并发布 dsh.client |
| client.js | 浏览器半边:设置分区 + 思考行装饰 |
| locale/*.json | 卡片标题与描述,必须是 {"meta": {...}} |
| icon.svg | 插件图标 |
| docs/ | 上面那几张截图 |

运行期可以在控制台用 window.__DSH_TH__:settings()、rows()({ highlighted, count, hasBadges, marked, folded })、refresh()、clear()、pass()、passes()。

卸载

插件页卡片上的卸载,或手动删掉 link: 依赖、node_modules/@Yokira404/dsh-thinking-highlight junction 与 dsh.profile.bundles 里的条目。卸载会移除全部徽章、还原被切分的文本节点并撤掉插件样式。

许可

MIT © 2026 Yokira404
预览分享卡片长什么样 ↓Yokira404/dsh-thinking-highlight
分享 · DeepSeek Harness Hub
Yokira404/dsh-thinking-highlight

统计思考行关键词次数并逐词标红高亮

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部