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

Token 修剪 songrui111/dsh-readprune

DeepSeek Harness
songrui1112 天前有提交已提供中文文档扫描:未发现敏感能力

按行号或符号精准读文件,避免整份内容进入上下文

30.7/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

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

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add songrui111/dsh-readprune
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · model
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 2 天前
档位由哪些信号合成

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

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

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

扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

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

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

为 DeepSeek Harness 打造的省钱工具层:精确读文件,外加自助式工具目录,让长会话不再为整份文件重复付费,也不再遗忘工具。

README

由 DeepSeek 最新模型翻译生成
dsh-readprune(Token 修剪) 为 DeepSeek Harness 会话节省 token:让内容一开始就不进入上下文。 Host 插件,在源头修剪输入而不是事后压缩:按行号或符号定位读取文件而非整份读,并对过大的工具结果在边界处设上限,同时保留取回路径。 与压缩类插件的区别 大多数省 token 插件处理的是已经进入上下文的内容:摘要它、折叠它、事后裁剪它。 这个插件试图让昂贵的内容一开始就不进来: - 问一个函数在哪,不再要付一整个文件 - 一个 17.7 万字符的文档页,不再要付一整页 不做模型改写,也不丢信息:每个被修剪的原文都已存档,可以按偏移读回来。 三个延迟加载工具 | 工具 | 作用 | | read_range | 只读需要的行:行号窗口、按符号找出所有出现位置并带上下文、或只列结构大纲。输出有硬上限。 | | tool_catalog | 一行一个列出本会话可调用的工具,让延迟后的工具集仍可被发现。 | | fetch_recall | 按字符偏移读回任意被修剪结果的片段。 | 两道结果整形 通过 tools/post-execute,按工具名限定范围: - 网页 —— 有界正文头部(页面标了内容地标时从其开始)+ 章节摘要。 - shell 输出 —— 头 + 尾。诊断信息在尾部,宿主自带的字节上限否则会把它丢掉。
展开完整文档(README 剩余 1 节)
dsh-readprune(Token 修剪)

为 DeepSeek Harness 会话节省 token:让内容一开始就不进入上下文。

Host 插件,在源头修剪输入而不是事后压缩:按行号或符号定位读取文件而非整份读,并对过大的工具结果在边界处设上限,同时保留取回路径。

与压缩类插件的区别

大多数省 token 插件处理的是已经进入上下文的内容:摘要它、折叠它、事后裁剪它。
这个插件试图让昂贵的内容一开始就不进来:

- 问一个函数在哪,不再要付一整个文件
- 一个 17.7 万字符的文档页,不再要付一整页

不做模型改写,也不丢信息:每个被修剪的原文都已存档,可以按偏移读回来。

三个延迟加载工具

| 工具 | 作用 |
| read_range | 只读需要的行:行号窗口、按符号找出所有出现位置并带上下文、或只列结构大纲。输出有硬上限。 |
| tool_catalog | 一行一个列出本会话可调用的工具,让延迟后的工具集仍可被发现。 |
| fetch_recall | 按字符偏移读回任意被修剪结果的片段。 |

两道结果整形

通过 tools/post-execute,按工具名限定范围:

- 网页 —— 有界正文头部(页面标了内容地标时从其开始)+ 章节摘要。
- shell 输出 —— 头 + 尾。诊断信息在尾部,宿主自带的字节上限否则会把它丢掉。

实测

会话级(真正要紧的数字)

工具结果进入上下文后,每一步都会重发一遍,所以它的真实成本是 大小 × 剩余步数。以一个 30 步、读 4 个文件的会话建模:

| | prompt tokens |
| 整份读 | 667,776 |
| 修剪后 | 374,512 |
| 节省 | 293,264(43.9%) |

节省比例随会话变长而上升:10 步 33.6%,30 步 43.9%,100 步 47.8%。
上限低于 50%,因为固定的 prompt 基线(开场消息、系统提示、工具 schema)每一步都要付,而本插件不碰它。

你可以自己复现:

npm run measure:session

单次操作

同一个问题,只换读法:

| 文件 | 行数 | 整份读 | read_range | 节省 |
| index.js | 464 | 4,661 tok | 188 tok | 96.0% |
| client.js | 710 | 9,389 tok | 274 tok | 97.1% |
| bench/index.js | 875 | 8,999 tok | 513 tok | 94.3% |

过大的结果:

| 对象 | 原始 | 修剪后 | 节省 |
| 文档页(真实抓取) | 46,582 tok | 583 tok | 98.7% |
| shell 输出(287 万字符,宿主截断后) | 16,842 tok | 1,515 tok | 91.0% |

单次数字之所以大,是因为一次操作可以替掉一整个文件。它们不是会话级节省,需要会话级数字请用上面的表。

token 数为对 Harness 计费规则的确定性近似(中文约 1.7 字/token,代码约 3.8 字符/token),用于横向比较,不等于账单。

安装

dsh plugin install dsh-readprune

行 id 保持 token-diet 不随改名变化,因此你在自己 cordis.patch.yml 里的 config 覆盖会继续生效。

配置

| 键 | 默认 | 含义 |
| guide | true | 注入「优先用 read_range」的系统提示词段落。没有它,工具存在但模型仍会整份读。每轮约 162 token。 |
| exposeCatalog | true | 是否注册 tool_catalog。 |
| slim | true | 通过 tools/post-execute 修剪过大的结果。 |
| slimWebTools | ["web_fetch"] | 网页类结果:正文头部 + 章节摘要。 |
| slimShellTools | ["pwsh","bash","wsl","tty_run"] | shell 类结果:头 + 尾。post-execute 是全局 waterfall,只处理列出的工具。 |
| maxInlineChars | 8000 | 超过此字符数才修剪。 |
| headChars | 1500 | 网页模式保留的头部字符数。 |
| shellHeadLines / shellTailLines | 60 / 60 | shell 模式两侧各保留的行数。 |
| durableArchive | true | 把修剪后的原文存到 ~/.dsh/token-diet/archive,定位符可跨重启。磁盘不可用时回退内存。 |
| maxArchiveFiles | 200 | 超过后修剪最旧的存档。 |

测试

npm test # 五套测试,不联网
npm run measure:reads # 单次操作对照表
npm run measure:page # 网页修剪数字(会抓取 docs.python.org)
npm run measure:session # 会话级对照表

npm test 覆盖:工具端到端调用、离线夹具上的修剪、post-execute 接线(含 read/grep/edit 不被触碰的证明)、以及持久化存档。

诚实的边界

- 它不能压缩其他插件的工具 schema。 没有服务或事件能把别的插件的 ToolSchema 标记为 deferLoading,只有本插件自己的工具会被延迟。插件很多的 profile 上,每轮固定的 schema 开销依然存在。
- symbol 模式是文本匹配,不是语义匹配。 搜 save 也会命中 savesSelection;不确定标识符时先用 mode: outline。
- 原版 read 未被改动。 上游文件工具照常可用,所以模型总能回退——这意味着只有它真的选用 read_range 时才省。
- 存档是用户目录下的明文文件,任何以你身份运行的程序都能读。抓取内容可能敏感,共享机器上请慎用。
- 没有使用 spillStore:其运行时可用性无法确认,硬依赖会在其缺失时让修剪整体失效。

许可

MIT。图标为本插件原创。
预览分享卡片长什么样 ↓songrui111/dsh-readprune
分享 · DeepSeek Harness Hub
songrui111/dsh-readprune

按行号或符号精准读文件,避免整份内容进入上下文

回到顶部