插件目录 / Developer / dsh-api-contract
dsh-api-contract
已验证 · 实测可装 uckkk
功能简介
接口契约助手:解析 OpenAPI 3.x,生成 TypeScript/Python 类型化客户端并检测破坏性变更
可用 — 实测通过,早期项目
接口契约助手:解析 OpenAPI 3.x,生成 TypeScript/Python 类型化客户端并检测破坏性变更 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
dsh-api-contract · 接口契约助手
解析 OpenAPI 3.x(JSON 或 YAML),生成 TypeScript / Python 类型化客户端,并检测两个规范版本之间的破坏性变更。纯 Node 实现,无网络、无外部服务。
提供的工具
| 工具 | 作用 |
|---|---|
gen_client |
解析规范,生成类型化客户端(TS 基于 fetch / Python 基于 requests) |
diff_spec |
对比旧版/新版规范,列出破坏性变更与非破坏性变更 |
安装
dsh plugin add dsh-api-contract
安装后在 profile 的 package.json 的 dsh.profile.bundles 中加入 "dsh-api-contract"。
用法示例
根据 openapi.yaml 生成一个 TypeScript 客户端
→ 调用 gen_client(spec="openapi.yaml", lang="typescript", outDir="./src/api")
升级接口前看看有没有破坏性变更
→ 调用 diff_spec(oldSpec="openapi.v1.json", newSpec="openapi.v2.json")
破坏性变更检测项
- 删除接口路径、删除方法
- 删除必填参数、参数类型变化
- 移除 2xx 响应、响应结构变化
说明
- 支持 JSON 与常见块结构 YAML(嵌套映射、序列、
$ref、内联[]/{}、字面量块|)。 - Python 客户端依赖
requests(pip install requests)。
安装
dsh plugin add github:uckkk/dsh-api-contract
安装即在本机运行第三方代码,请自行审阅源码。
安装
dsh plugin add github:uckkk/dsh-api-contract
使用
安装后在会话中调用该插件注册的工具即可。
许可
MIT
安装即在本机运行第三方代码,请自行审阅源码。
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-api-contract」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:uckkk/dsh-api-contract Headless(CLI)profile:
dsh plugin --profile headless add github:uckkk/dsh-api-contract 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。