前言¶
DeepSeek Harness(DSH)的设计理念是「一切皆插件」。在开发智能体或工作流时,模型经常会遇到琐碎的重复性任务:按路径取值、比对两段文本的差异、转换时区、给一列数字算分位等。心算容易出错,临时写脚本又慢且不通用。
dsh-toolbox 插件就是为了解决这类问题而生。它提供了一组本地运行的纯函数工具,装上就有十个,能够替代手写脚本,让模型直接调用确定性工具。
是什么¶
dsh-toolbox 是 DSH 的工具箱插件,由 qlheric 维护。它包含十个核心工具:json、calculator、encoding、diff、time、csv、regex、stat、markdown、schema。
这些工具全部在本地计算,不联网、不读写文件、不执行代码。它们零运行时依赖、零构建,纯 ESM 模块。这意味着相同的输入永远产生相同的输出,非常适合用于写断言和自动化流程。
核心功能¶
插件内置了十个工具,覆盖数据解析、编码、计算、统计和校验。
- json:按路径取值(
$、.a.b、['键']、[下标],支持负数和[*]通配)、获取 keys、获取 type、validate、format。 - calculator:算式求值。
- encoding:base64、base64url、url、hex 互转,以及 md5~sha512 哈希、生成 uuid。
- diff:生成 unified diff、JSON 路径级差异、CSV 逐行差异。
- time:获取当前时间、时间转换、时间加减、时间差计算。
- csv:解析 RFC 4180 格式 CSV、按列查询、数值列统计、转换为 GFM 表格。
- regex:正则测试、查找、替换、解释。
- stat:描述统计、分位、频数、Pearson/Spearman 相关系数。
- markdown:生成标题、目录、规范表格、去除标记、统计字数。
- schema:JSON Schema 子集校验,支持本地
$ref。
安装与启用¶
使用官方命令安装,注意不要使用 npm install(该包暂未发布至 npm)。
dsh plugin --profile <你的 profile> add github:qlheric/dsh-toolbox
安装完成后需要重启 DSH 才能生效。
典型用法¶
json¶
获取嵌套结构中的数据,支持多种语法:
* $:取根对象
* .a.b:点号路径
* ['键']:键名取值
* [下标]:数组下标(支持负数)
* [*]:通配符
calculator¶
执行算式求值,安全地计算结果。
encoding¶
进行常用的编码与哈希转换,包括 base64、base64url、url、hex 互转,以及 md5、sha256、sha512、sha1、sha384 和 uuid 生成。
diff¶
比较文本、JSON 或 CSV 数据的差异,支持 unified diff 格式输出。
time¶
处理时间相关操作,包括 now、convert、add、diff。
csv¶
处理 CSV 数据,包括 RFC 4180 解析、按列筛选、数值列统计以及转换为 GFM 表格。
regex¶
提供正则表达式的测试、查找、替换和解释功能。
stat¶
对数值数据进行统计分析,包括描述统计、分位数、频数统计以及 Pearson 和 Spearman 相关系数计算。
markdown¶
辅助 Markdown 文档处理,包括生成标题、目录、规范表格、去除标记以及字数统计。
schema¶
校验 JSON 数据是否符合 JSON Schema 子集规范,支持引用本地文件。
注意事项与适用场景¶
运行环境与依赖¶
- 不联网、不碰工作区、不跑代码:所有计算都在本地内存完成,不会访问外部网络或修改本地文件系统。
- Electron 桌面端兼容性:Electron 桌面端的
desktopprofile 不支持上述安装命令(CLI 会拒绝接管)。在该环境下,需要手动修改package.json的dsh.profile.bundles配置,再使用包管理器安装。 - npm 说明:目前该包尚未发布至 npm,请勿尝试
npm install。
安全与稳定性¶
- calculator 安全机制:不使用
eval,标识符必须命中白名单内的函数和常量。 - regex 安全机制:先体检再运行。如果检测到高风险量词(如嵌套量词)且输入超过 4KB,会直接拒绝运行,防止灾难性回溯。
- schema 校验:遇到不认识的关键字会报出
schemaIssues,不会静默忽略。 - 错误提示:失败时提供人话提示,例如取不到键时会明确告知”没有这个键”,而不是抛出堆栈。
- 时区处理:
time工具的时区只影响呈现,内部计算一律按 UTC 进行。
适用场景¶
适合需要将模型与确定性工具结合的开发者。如果你正在构建 DeepSeek Harness 工作流,需要模型进行数据清洗、格式转换、统计分析或文本对比,这是一个理想的工具箱选择。
结语¶
dsh-toolbox 提供了一套标准化的工具集,旨在减少模型幻觉和手动脚本的工作量。通过这些本地化的纯函数工具,可以显著提升工作流的可靠性和复用性。