一条命令,给 DSH 装上 46 个确定性工具:JSON/YAML/CSV/文本/编码/正则这类「格式活」,加上…
29.9/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/10/14 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add ax2/dsh-toolbox-bundle该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 一条命令装齐工具
- 离线格式转换
- 生产环境诊断
一条命令装好四个确定性 DeepSeek Harness 插件:46 个离线、有边界的工具,管 JSON/YAML/CSV/编码杂活,外加 JVM、Python 和 Windows 生产诊断。
README
由 DeepSeek 最新模型翻译生成dsh-toolbox-bundle
一条命令,给 DSH 装上 46 个确定性工具:JSON/YAML/CSV/文本/编码/正则这类「格式活」,加上 JVM、Python、Windows 生产报告的「诊断活」。纯本地、无网络、无安装期脚本、无二进制依赖。
30 秒安装
包名与仓库:npm 上是 dsh-toolbox-bundle,仓库是 ax2/dsh-toolbox-bundle。(前身 dsh-zidev-toolbox、@ax2zicode/dsh-dev-toolbox 都已在 npm 上废弃并指向这里——dsh-dev-toolbox 这个名字发不出去:npm 判定它与生态里已有的 dsh-devtoolbox 过于相似。)
dsh plugin --profile web add dsh-toolbox-bundle
装完重启应用(bundle 列表是启动时读的)。想装到桌面版就把 web 换成 desktop。
家族总览:zicode.com/software 是四个插件、合装包与桌面软件的统一入口。
展开完整文档(README 剩余 1 节)
dsh-toolbox-bundle
一条命令,给 DSH 装上 46 个确定性工具:JSON/YAML/CSV/文本/编码/正则这类「格式活」,加上 JVM、Python、Windows 生产报告的「诊断活」。纯本地、无网络、无安装期脚本、无二进制依赖。
30 秒安装
包名与仓库:npm 上是 dsh-toolbox-bundle,仓库是 ax2/dsh-toolbox-bundle。(前身 dsh-zidev-toolbox、@ax2zicode/dsh-dev-toolbox 都已在 npm 上废弃并指向这里——dsh-dev-toolbox 这个名字发不出去:npm 判定它与生态里已有的 dsh-devtoolbox 过于相似。)
dsh plugin --profile web add dsh-toolbox-bundle
装完重启应用(bundle 列表是启动时读的)。想装到桌面版就把 web 换成 desktop。
家族总览:zicode.com/software 是四个插件、合装包与桌面软件的统一入口。
离线或固定版本:
dsh plugin --profile web add https://github.com/ax2/dsh-toolbox-bundle/releases/latest/download/dsh-toolbox-bundle.tgz
这个包是四个独立插件的合装层:它一次插入四行 bundle,四个插件仍各自独立版本。不要把它和单独安装的那四个混用(会重复注册同名工具)。
15 秒看到效果
把这段贴进对话:
Traceback (most recent call last):
File "svc.py", line 42, in handle
KeyError: 'user_id'
模型会调用 python_traceback,拿回这样的结构化结果(实测输出):
{
"exception_type": "KeyError",
"exception_message": "'user_id'",
"deepest_frame": { "file": "svc.py", "line": 42, "function": "handle" },
"cause_hints": [{ "hint": "The mapping has no key 'user_id'; production data is usually missing the key that test data always has." }],
"coverage": { "total_lines": 3, "parsed_lines": 3, "unknown_count": 0, "confidence": 1, "parser_version": "tb-1" }
}
其他几个一看就懂的:
| 你说 | 它调用 | 你拿到 |
| "校验 {"a":1,},要精确行列" | json_validate | line 1 / column 9 / position 8 + 错误文案 |
| "C:\temp\CON.txt 这个路径能用吗" | path_inspect | reserved_name(error):保留 DOS 设备名,带扩展名也算,position: 8 |
| "贴上 jstack,有没有死锁" | java_thread_dump | Java 级死锁环(waiting_for/holding 链)、锁竞争队列、状态直方图 |
| "这是 GC 日志,p99 停顿多少" | java_gc_log | 事件与停顿计数、p50/p90/p99、Young/Full 拆分、promotion failure |
| "netstat -ano 里谁在监听 8080" | netstat_parse | 监听项 + PID/进程名,并按状态分组;文本里没有的绝不编造 |
| "D 盘哪个目录最占空间" | dir_usage | 总字节、最大文件、扩展名直方图(只读,符号链接从不跟随) |
装了哪四个
| 插件 | 工具 | 做什么 | 测试 |
| dsh-deterministic-tools | 29 | JSON 校验(精确行列偏移)/ 受限 JSONPath / 结构化 diff / CSV↔JSON / YAML↔JSON / 文本统计 / 正则捕获 / base64·hex·URL 编解码 / 哈希 / Unicode·进制·颜色·CIDR·JWT·时间戳检查 | 35 |
| dsh-jvm-doctor | 5 | thread dump(含 Java 级死锁环)/ GC 日志 / Maven·Gradle 依赖冲突 / 异常链(... N more 还原)/ Spring 配置 diff(载荷前脱敏) | 47 |
| dsh-py-doctor | 6 | traceback 根因 / pytest 摘要 / Django migrations·N+1·checks / celery 报告 —— 每个都带解析覆盖率 | 75 |
| dsh-win-native | 6 | 编码检测与转换(GBK/Big5/Shift-JIS 置信度)/ Windows 路径合法性 / netstat 解读 / 只读磁盘巡检与重复文件 | 57 |
为什么不直接让模型自己算?
它确实能算。 我们实测过:不给插件、只让它算 hello world 的 sha256,模型自己写了两轮 pwsh,算对了。所以这些工具卖的不是「模型做不到」,而是:
- 一次就对的概率——214 个测试盯着的固定实现,而不是每次现写命令、和引号/编码/PowerShell 版本搏斗;
- 可复现:同样输入永远同样输出;
- 边界明确:结构化输入超预算拒绝(INPUT_TOO_LARGE),文本截断按 code point 并标 truncated,解析覆盖率与未识别行明确上报;
- 知道自己不知道:jwt_inspect 声明不验签、netstat_parse 不编造进程名与 UDP 状态、诊断工具只出事实不做因果推断;
- 结构化回执:{ result, meta } 可以直接进下一步,而不是让模型解析自由文本。
它要花多少 token(实测,不是估算)
工具 schema 每个请求都要发,装了不用也要付:
| 配置 | 工具名数 | 首次请求 inputTokens |
| 干净 headless base | 75 | 11,931 |
| base + 这四个插件(46 工具) | 121 | 19,608(+7,677,占 39%) |
同一个「校验 JSON 并给精确行列」的任务:不装插件,模型自己写 pwsh 走 3 步、输出 1,323 tokens、13.0 s;装插件 2 步、输出 314 tokens、6.1 s,但 raw token 反而多 17%。
所以:一次性小活它更贵。 划算的是聚合压缩(内容不进上下文)、结果远小于输入、shell 一行搞不定的活、以及模型算不准的活。只想留常用的就按 id 覆盖:
profiles/<name>/cordis.patch.yml
- id: deterministic-tools
config:
only: [json_format, json_validate, json_query, text_diff, csv_to_json]
toolPrefix: zi
(同一任务实测三组首次请求 prompt:干净 base 75 个工具名 12,838 → 只留 5 个 13,529(+0.7k)→ 装全部 29 个 16,799(+4.0k)。裁剪配置要写进 profile 自己的 cordis.patch.yml(文件头写着 "applied after every bundle layer");用 dsh --patch <file> 那种 CLI 覆盖层改同一个 id 会报 patch: entry "deterministic-tools" not found。真实启动后模型只收到 zi__json_format、zi__json_validate。)
边界
- 46 个工具里只有 2 个碰磁盘:dir_usage、file_duplicates,都是只读、有文件数/字节预算、软链接与 junction 跳过并上报、从不跟随。
- 其余全部是纯文本/纯字节分析:你不给数据,它不会自己去读。
- 不发网络请求、不装二进制、不写安装期脚本(pnpm 的 allowBuilds 拦不住它)。
- 超预算拒绝而不是静默截断;截断一定标出来。
从哪来
这四个插件是 zi-devtools(Rust 工具箱,16 个 crate / 154 个工具)在 DSH 上的对应实现:按同一份契约(回执信封、预算门禁、边界行为)用 TypeScript 重写,独立版本、独立测试。
- npm:dsh-deterministic-tools · dsh-jvm-doctor · dsh-py-doctor · dsh-win-native
- 每个仓库都有 Release + 预构建 tarball(releases/latest/download/<repo>.tgz)
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
ax2/dsh-toolbox-bundle
一条命令,给 DSH 装上 46 个确定性工具:JSON/YAML/CSV/文本/编码/正则这类「格式活」,加上…
相关插件 · 市场 / 管理
插件精选列表awesome-dsh-plugin/awesome-dsh-plugin
DeepSeek Harness(dsh)插件精选列表
★ 22,399未汉化DSH
73.6
新词雷达zhuyansen/new-term-radar
new-term-radar新词雷达
★ 2,049已汉化MCP
72.8
插件生态导航0xsline/awesome-deepseek-harness
安装 贡献指南 DeepSeek Docs 公开插件目录 Issues
★ 1,188已汉化DSH
72.6
技能注册中心iflytek/skillhub
企业级开源智能体技能注册中心——发布、发现并管理组织内可复用的技能包。
★ 5,384已汉化DSH
71.9
插件市场目录imsai-sh/awesome-deepseek-harness-plugins
面向 DeepSeek Harnessdsh生态的社区插件目录,共收录 13950 个插件含 PR 收录与…
★ 360已汉化DSH
71.9
插件精选清单Anil-matcha/awesome-dsh-plugin
DeepSeek Harnessdsh精选指南——DeepSeek…
★ 1,013已汉化DSH
71.7
这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。