dsh-rtk-workbench
English · 中文
把 rtk(Rust Token Killer) 接进 DeepSeek Harness,二进制一起带上。
能改写的改写 · 改不动的压缩 · 省了多少看得见
Why this exists
rtk 站在 agent 和工具之间:把命令改写成过滤版,并在模型读到工具输出之前先压一遍。官方为 20 个 agent 写了适配层,DSH 不在其中;社区已有的 DSH 插件也只补了「改写」或「裁剪」的一半。
这个插件把三件事一次补齐:改写(委托 rtk 的规则)、压缩(真 rtk 方法链,不重造引擎)、可见(省下的 token 记在统计里,也在界面上一眼看到)。所有失败路径保持开放:rtk 缺失、超时或返回意料之外的东西时,工具调用和没装这个插件时完全一样。
What you get
| 能力 | 默认 | 说明 |
|---|
| 命令改写 | 开 | git status 以 rtk git status 执行;结果首行标 [rtk] ran:,rtk 跑不起来时重放原命令并标 [rtk] fell back: |
| 语义守卫 | 开 | 校验改写仍在执行原命令;next build 走 rtk next(rtk 会注入 build),丢参数的提案被拒、原命令照跑 |
| 输出压缩 | 开(≥ 2 KB) | rtk hook claude 压缩大输出;文件/搜索结果默认跳过 |
| 恢复 | 开 | 保留 rtk recall <hash>;沙箱够不到 rtk 库时原文落盘并给出路径 |
| 节省可见 | 开 | token 估算(ASCII ÷4、汉字 ×0.6)+ 跨重启累计;/rtk stats 查明细,界面上的药丸随时可瞥 |
| /rtk 命令组 | 常驻 | status、stats、tools、explain、doctor、gain、recall、on/off |
不注册新工具、不替换 shell 执行器、不碰模型 API。
Install
在插件面板里搜 dsh-rtk-workbench 点安装,或者:
dsh plugin --profile web add dsh-rtk-workbench
装完重启宿主(bundle 变更不是刷新页面)。不需要单独安装 rtk——平台二进制随包分发,覆盖 Windows x64、macOS x64/arm64、Linux x64/arm64;其它平台见 参考手册。
Quick start
/rtk status # 二进制、pipeline、开关、本会话省量
/rtk explain "next build" # 这条命令为什么会被(不会被)改写
/rtk off ui # 隐藏输入框上方的省量药丸
/rtk stats # 完整报告;--json 给机器读
之后正常干活:大仓库里的 git status 变成紧凑结果;cat 一个 100 KB 日志会被压缩并指向 rtk recall <hash>,沙箱里则给出可直接读的落盘路径。
How it works
改写靠包装 ToolDefinition.execute(不是重派发),保留注册表的信号融合与记账;压缩在 tools/post-execute 里先 await next() 再做内容替换,因此安全插件与 spill 策略照常生效。
flowchart LR
M["模型调用工具"] --> X[包装后的 execute]
X -->|rtk rewrite| R{"能改写?"}
R -->|是| E1["执行 rtk <cmd>"]
R -->|否| E2["执行原命令"]
E1 --> C["tools/post-execute"]
E2 --> C
C -->|≥ 阈值| H["rtk hook claude → 替换 content"]
C -->|否则| I[原样返回]
界面侧:宿主半提供一条只读 GET /api/rtk-workbench/status,浏览器半在输入框上方显示「省 X token · −N%」,点开是明细浮层。
Measured effect
确定性基准的合计:463 507 B → 38 265 B(−91.7 %),约 115.9k → 9.6k 估算 token;单项从 git status 的 −87.5 % 到 5 000 行日志的 −95.0 %。
完整表格、复现方法与「这些数字不能证明什么」见 基准测试。token 为估算值,不是服务商计费口径。
Documentation
- 参考手册 —— 命令、配置、恢复、兼容矩阵、排障、设计说明
- 基准测试 —— 固定 fixture 的可复现数字与边界
- 兼容性台账 —— 已验证宿主、声明范围、
verify-host
- 变更记录 —— 每个版本改了什么
Development
pnpm install
pnpm typecheck # host + client 两个编译面
pnpm test
pnpm build # lib/index.js(宿主)+ lib/client.js(浏览器)
更多脚本(benchmark、release、check-manifest、check-docs)见参考手册。
Credits
压缩规则、过滤器与 hook 协议都是 rtk 的工作;本插件是 DeepSeek Harness 侧的适配层,原样分发 rtk 二进制(Apache-2.0,链接 BUSL-1.1 的 rtk-engine,两份许可随包分发,见 licenses/)。
License
Apache License 2.0 © 2026 dsh-rtk-workbench contributors.