dshbase

Plugin directory / Developer / dsh-api-contract

dsh-api-contract

Verified · install-tested on dsh uckkk

✓ Actively maintained Builds on 2 official DSH packages

View on GitHub ↗ ← Back to plugin directory

0Stars
0Forks
0Open issues
—Language
2026-08-19Last push
Cross-platformPlatform

What it does

接口契约助手:解析 OpenAPI 3.x,生成 TypeScript/Python 类型化客户端并检测破坏性变更

✅
Our take
Works — verified, early-stage project

接口契约助手:解析 OpenAPI 3.x,生成 TypeScript/Python 类型化客户端并检测破坏性变更 It installs cleanly and boots without issues in our testing. It's early-stage but functional.

“Verified” means our automated CI actually ran dsh plugin add in a clean profile and it booted — nothing more. Feature descriptions and version compatibility are the author’s claims. This is not a security audit and not an endorsement of third-party code.

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

安装即在本机运行第三方代码,请自行审阅源码。

Install

🧩 Let your agent install it (recommended)

Install the catalog once, then DeepSeek Harness can find and install any plugin from this site automatically:

dsh plugin add dshbase-catalog

Then say "install dsh-api-contract for me" — your agent finds it in the directory and installs it. Docs: dshbase-catalog · verified packs.

This plugin is GitHub source (not published to npm) — install it straight from the repo:

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

Test report

Verified: L1 install + L2 load + L3 runtime from GitHub source on dsh 0.1.0-rc.6.

Security: not yet scanned — our daily static scan will cover it shortly.

Share this badge

More in Developer

Browse all 7819 plugins →