dsh-semver
by TYEclipse
DeepSeek Harness(dsh)语义版本工具箱:解析、比较和范围检查semver字符串(^ ~ >= <= x-ranges,连字符,||)——零运行时依赖,纯逻辑
Semantic versioning toolbox for DeepSeek Harness (dsh): parse, compare and range-check semver strings (^ ~ >= <= x-ranges, hyphen, ||) — zero runtime dependencies, pure logic
安装
dsh plugin --profile web add github:TYEclipse/dsh-semverGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
安装与环境配置指引、插件开发教程见 DSH 中文社区文档 ↗
安装即在你的机器上以你的权限运行第三方代码——它可读写文件、使用凭据、访问网络,DSH 的工具审批不会为插件代码加沙箱。「检测到 manifest」仅代表发现 dsh.bundle / dsh.plugin 清单,不构成兼容性或安全审查;安装前请审阅源码,不熟悉的插件先在不含密钥的环境试用。
README
dsh-semver 是 DeepSeek Harness (dsh) 的语义化版本号工具箱:零运行时依赖、纯逻辑、确定性输出。
Agent 经常算错版本号问题——1.0.0-beta.11 和 1.0.0-beta.2 谁大?1.2.4-beta.1 是否满足 ^1.2.3?本插件把这类问题变成确定性的工具调用。
三个工具
| 工具 | 功能 |
|---|---|
semver_parse |
解析版本号 → major/minor/patch/prerelease/build;非法输入(1.2、1.2.3.4、前导零、1.2.3-01 等)返回明确原因 |
semver_compare |
比较两个版本 → lt/eq/gt + 人话结论(2.1.0 > 2.0.3);build 元数据不影响优先级(1.0.0+build.1 == 1.0.0) |
semver_satisfies |
判断版本是否满足 npm 风格范围,解释里给出归一化后的范围 |
支持的范围语法(npm 兼容子集)
- 精确:
1.2.3、=1.2.3 - 比较符:
>1.2.0、>=1.2.0、<2.0.0、<=2.0.0 - 脱字符:
^1.2.3→>=1.2.3 <2.0.0,含 0.x 规则(^0.2.3→>=0.2.3 <0.3.0) - 波浪号:
~1.2.3→>=1.2.3 <1.3.0 - 通配符:
1.2.x、1.x、*(裸部分版本1.2、1同义) - 连字符区间:
1.2.3 - 2.3.4(两端含;部分上界如1.2.3 - 2.3→<2.4.0) - 组合:空格 AND、
||OR
Prerelease 语义(npm tuple-lock)
- 普通范围默认不匹配预发布版本:
1.2.4-beta.1不满足^1.2.3 - 带预发布下界的范围只匹配同
[major, minor, patch]元组的预发布:1.2.3-beta.5满足^1.2.3-beta.2,但1.2.4-beta.1不满足 - 传
includePrerelease: true(工具参数或插件配置)可放宽两条规则
安装
# dsh plugin 无默认 profile,必须带 --profile
dsh plugin --profile web add github:TYEclipse/dsh-semver
验证:dsh --profile web --dump-config | grep '== dsh-semver'
安全性
三个工具全部纯函数、离线:无网络、无文件系统访问、无 shell、无动态求值。
开发
pnpm install # 仅 devDependencies(esbuild allowBuilds 已预配置)
pnpm build # tsc → dist/(已提交;git 安装不跑构建脚本)
pnpm test # vitest,40+ 用例,全部取自 semver 规范 / npm 文档的已知锚点
pnpm lint # oxlint(仅 src + test)
许可证
MIT
原始 README: https://github.com/TYEclipse/dsh-semver/blob/main/README.zh.md ↗
同类插件
查看全部 →
k8e
k8e.sh — 开源 Agentic AI 沙箱矩阵

hol-guard
开源AI代理防病毒:运行时拦截风险工具、秘密访问、提示注入、恶意软件包、MCP服务器、插件和技能。

anolisa
ANOLISA(Agentic Nexus Operating Layer & Interface System Architecture):具备运行时、安全性、可观测性和 Tokenless 响应压缩能力的 Agentic OS,可降低 Token 使用量与成本。

mobius
首个自我演进的开源 Agent OS:连接你的团队、AI agent、设备与算力

deepseek-harness-desktop
DeepSeek Harness Tauri 桌面版 | Only 5mb installer, zero environment setup. Windows / macOS / Linux.

open-managed-agents
开源Claude管理代理API实现和自托管Claude标签式代理运行时。即插即用;在Cloudflare Workers/Durable Objects或Node.js上运行。Apache 2.0。