跳到正文

omdsh-dev/dsh-toolkit

180最近提交 2026年8月14日

dsh-toolkit DSH 插件

dsh-toolkit 是一个零依赖的插件集合包,将 10 个确定性工具以 vendored 形式打包为一个可安装的 meta 包。每个工具可作为独立插件单独安装、启用、禁用或卸载。该集合为 DSH 中的常见数据处理任务提供了统一入口。

如何安装 dsh-toolkit DSH 插件

dsh plugin --profile web add github:omdsh-dev/dsh-tool-csv

复制不会执行命令。安装 dsh-toolkit DSH 插件前请核对仓库和版本。

dsh-toolkit DSH 插件数据来源

dsh-toolkit DSH 插件快照日期:2026年8月16日

discovered

dsh-toolkit DSH 插件能做什么

  • ISO 8601 日期/时间解析、时区转换、日历运算和时长计算
  • Base64、URL、十六进制编解码,哈希生成和 UUID 创建
  • JMESPath 子集 JSON 查询
  • 安全数学表达式求值(不使用 eval)
  • RFC 4180 CSV 解析、查询和统计(严格引号)
  • 正则测试、提取和替换(worker 硬超时)
  • HTML↔Markdown 转换、GFM 表格生成和目录生成(白名单安全)
  • 文本/JSON/CSV/Markdown 结构化差异比较与 unified diff 生成(只读)
  • 描述统计、百分位数、频数分布和相关性(零依赖确定性)
  • JSON Schema 验证、路径解释和安全默认值(零网络零动态)

dsh-toolkit DSH 插件适合哪些场景

  • 在 DSH 对话中计算日期差或时区偏移
  • 即时解码 Base64 编码内容或生成 UUID
  • 根据 Schema 验证 JSON 负载并返回详细错误信息
  • 解析 CSV 字符串、计算基本统计量并输出格式化表格
  • 比较两个 Markdown 文档的结构差异并高亮显示

dsh-toolkit DSH 插件适合谁

  • 需要确定性、零依赖工具进行数据处理的 DSH 用户
  • 构建需要安全可靠计算、编码或验证的 Agent 工作流的开发者

dsh-toolkit DSH 插件的限制

  • 每个工具是预先冻结的快照版本,更新单个工具需要整个集合发布新版本
  • 如果已单独安装相同的工具插件,meta 包安装会冲突(需先移除旧插件)
  • 工具均为纯确定性和无状态,不支持网络访问或动态加载
  • JSON 工具仅支持 JMESPath 子集,复杂查询可能无法工作

dsh-toolkit DSH 插件的仓库 README 摘录

以下文字摘自 dsh-toolkit DSH 插件的上游仓库 omdsh-dev/dsh-toolkit 的 README,版权归原作者,仅作引用。

DSH 零依赖工具包 collection —— time / encoding / json / calculator / csv / regex / markdown / diff / stat / schema 十个确定性工具,**统一入口一键安装**。 [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) ## 为什么 DSH 生态仓库持续增长,单插件在 hub 中容易被淹没;collection 分类是辨识度最高的形态。本仓库把 10 个工具插件 **vendored 冻结**为发布态快照(各子仓库独立演进,均位于 [omdsh-dev](https://github.com/omdsh-dev) 组织下公开),统一工程、统一测试、统一维护。 **定位(官方 Profile Bundle 生态方向)**:本仓库是 **collection 与安装辅助仓库**——每个子包都是可独立安装/启用/禁用/卸载的 bundle(`dsh plugin --profile <p> add <子包>`);collection 提供目录、清单与批量安装脚本。meta 包 `@deepseek-ai/dsh-toolkit` 保留为**可选**的原子挂载模型(见下文两种运行模型)。 ## 工具一览 | 工具 | 能力 | 用例数 | |---|---|---| | `time` | ISO 8601 / 时区 / 日历运算 / 时长差 | 65 | | `encoding` | base64 / url / hex / hash / UUID | 46 | | `json` | JMESPath 子集查询 | 66 | | `calculator` | 安全数学表达式求值(无 eval) | 31 | | `csv` | RFC 4180 解析 / 查询 / 统计(严格引号) | 50 | | `regex` | 测试 / 提取 / 替换 / 静态解释(worker 硬超时) | 63 | | `markdown` | HTML↔Markdown / GFM 表格 / 目录生成(白名单安全) | 71 | | `diff` | 文本/JSON/CSV/Markdown 结构化比较与 unified diff(只读) | 124 | | `stat` | 描述统计 / 百分位数 / 频数分布 / 相关性(零依赖确定性) | 82 | | `schema` | JSON Schema 验证 / 路径 / 解释 / 安全 default(零网络零动态) | 125 | | **合计** | | **723** | ## 架构 ``` dsh-toolkit/ ├──

阅读完整 README仓库许可: MIT

dsh-toolkit DSH 插件常见问题

如何一次性安装所有 10 个工具?

运行 `dsh plugin --profile web add github:omdsh-dev/dsh-toolkit` 安装 meta 包,它会原子性地添加所有工具。如果之前已单独安装某些工具,请先移除它们以避免冲突。

可以只安装集合中的某一个工具吗?

可以,每个工具都是独立的插件。例如,只安装 CSV 工具:`dsh plugin --profile web add github:omdsh-dev/dsh-tool-csv`。仓库中的批量脚本也支持安装子集。

安装后如何使用这些工具?

安装后,工具会作为 DSH 插件可用。你可以在 DSH 对话中通过自然语言调用,或使用 `dsh run` 在 headless 模式下运行。例如:`dsh run "使用 csv 工具解析 'a,b\n1,2'"`。

如果 meta 包安装因名称冲突失败怎么办?

meta 包具有原子性:如果任一子插件失败,会逆序回滚已注册的工具。要解决名称冲突,请先使用 `dsh plugin --profile web remove <名称>` 移除单个工具插件,然后再添加 meta 包。

web 和 headless profile 有什么区别?

web 和 headless 是不同的 profile。在 web profile 中安装工具不会自动使其在 headless profile 中可用,反之亦然。请根据需要使用 `--profile web` 或 `--profile headless`。`dsh run` 命令默认使用 headless profile。