dshlib 开放 API 文档

dshlib 图书馆开放数据接口——插件目录、验证证据、图书馆统计。任何市场/工具可消费。

原则:读开放、写受控。目录与验证数据公开只读;上架申请走提交接口(POST /api/dshlib/submissions)。 数据源:GitHub topic:dsh-plugin(官方发现机制)+ dsh-subscribe L1 预研 + dshlib 真实验证。社区项目,非官方。

基础信息

Base URLhttps://compliancehub.cn
格式JSON(Content-Type: application/json
认证公开只读,无需鉴权
限流当前无(实验阶段);大量消费请带合理间隔

端点一览

GET/api/dshlib/stats

图书馆统计:插件总数、各级认证(L0-L4)、Awesome 收录数。

curl https://compliancehub.cn/api/dshlib/stats
{
  "total": 401,
  "levels": { "L0": 85, "L1": 312, "L2": 1, "L3": 3, "L4": 0 },
  "awesome": 49,
  "source": "dshlib store open API"
}
GET/api/dshlib/catalog

插件目录(全量,减负字段)。支持过滤参数:

curl "https://compliancehub.cn/api/dshlib/catalog?level=L3"
{
  "count": 3,
  "plugins": [
    { "name": "dsh-plugin-tools", "title": "...", "did": "did:cha2a:package:@wwumit/dsh-plugin-tools", "tags": ["质量","L3"], ... }
  ]
}
GET/api/dshlib/catalog/<name>

单插件详情(name 或完整包名)。

curl https://compliancehub.cn/api/dshlib/catalog/dsh-plugin-tools
GET/api/dshlib/verification

验证证据(有真实验证记录的插件):DID + 验证证据描述。

curl https://compliancehub.cn/api/dshlib/verification
{
  "count": 4,
  "verified": [
    { "did": "did:cha2a:package:dsh-cc-tui", "id": "dsh-cc-tui",
      "evidence": "dshlib verify_evidence 2026-08-19 (npm integrity sha512 + bundle + patch)" }
  ]
}
POST/api/dshlib/submissions

上架申请(唯一写接口)。

curl -X POST https://compliancehub.cn/api/dshlib/submissions \
  -H 'Content-Type: application/json' \
  -d '{"type":"npm","pkg":"my-dsh-plugin","author":"me","desc":"..."}'

提交后进入队列,验证通过自动上架(npm/git 来源均支持)。

认证等级参考(CHA2A)

等级含义判定依据
L0未认证(默认)无声明——"未认证 ≠ 不可信,仅未声明"
L1完整性内容指纹(npm dist.integrity / contentIdentity)
L2来源L1 + 作者署名
L3发行L2 + 发行方/验证方背书(真实验证证据)
L4生态L3 + 多方证据/披露一致(预留)

接入示例

消费目录并渲染 L1 徽章

const res = await fetch('https://compliancehub.cn/api/dshlib/catalog?level=L1');
const { plugins } = await res.json();
for (const p of plugins.slice(0, 5)) {
  const did = p.did; // did:cha2a:package:<name>
  const [type, id] = did.replace('did:cha2a:', '').split(':');
  console.log(`L1 徽章: https://compliancehub.cn/badge/${type}/${encodeURIComponent(id)}`);
}

版本与说明