@ cueframe/ api- 合同
已消毒,为CueFrame公开API版本的OpenAPI合同. 这是 仅支持生成的 SDK 、 CLI 和 MCP 客户端的输入, 以及唯一的副本 任何消费者均应改为:.
软件包包含公开的 OpenAPI 文档, 其审查过的操作 清单 现场拍摄 JSON Schema 及其例子 和两份清单 这个 故意排除后端来源、存储标识符、提供者 姓名和内部成本数据.
import { contractVersion, openApiSha256, operationCount } from "@cueframe/api-contract";
import openApi from "@cueframe/api-contract/openapi.json" with { type: "json" };
使用合同
npm install @cueframe/api-contract
需要为 JavaScript 出口提供更新的节点.js 24 。 其他语言和生成器可以读取 公开 OpenAPI JSON 直接说 需要再生成时使用已版本 npm 软件包 .
合同中描述了托管的API: https://api.cueframe.ai; 安装它不会运行服务器。 开始于 API 参考, (中文(简体) ), API 走过,或 类型脚本 SDK。 。 。 .
一个合同链
private CueFrame API ──sync──▶ cueframe-ai/cueframe-mcp: api/*.json ──build──▶ @cueframe/[email protected] ──▶ consumers
- 私人API预测其公众面并写道:
api/openapi.json, (中文(简体) ),api/scene-schema.json, (中文(简体) ),api/scene-examples.json财务报告和审定财务报表api/contract-manifest.json从一个内核构建进入此寄存器. 清单记录了内核版本、私人承诺和sha256 每个文件的文字. openapi.json携带内核本身的 OpenAPI 组件(Composition, (中文(简体) ),CompositionOp, (中文(简体) ),SceneShotSpecV2及其递归部分,.)逐字记录. 这个寄存器从中再生出SDK并同时承担.api/public-surface.json经审查的业务清单得到维护 在这里.pnpm --filter @cueframe/api-contract build复制 5api/*.json文件输入dist/他们确是犯罪,确是写作的manifest.json, (中文(简体) ),index.js财务报告和审定财务报表index.d.ts。 。 。 .- 其他所有读取 npm 包: 应用程序仓库的 MCP
工具、组件操作和现场承包发电机及其测试,以及任何
第三方。 没有读
api/第二次离职.
内容和出口
| 子路径 | 文件 | 这是什么 |
|---|---|---|
. | dist/index.js, (中文(简体) ), dist/index.d.ts | 实际出口: contractVersion, (中文(简体) ), openApiSha256, (中文(简体) ), operationCount, (中文(简体) ), pathCount, (中文(简体) ), componentCount, (中文(简体) ), kernelVersion, (中文(简体) ), privateCommit, (中文(简体) ), syncedFiles。 。 。 . |
./openapi.json | dist/openapi.json | 公共OpenAPI 3.1文档,场景计划销售商. |
./public-surface.json | dist/public-surface.json | 经审查的运行清单;当文档添加或删除清单未列出的运行时,构建失败. |
./scene-schema.json | dist/scene-schema.json | 警犬场景拍摄 JSON Schema(SceneShotSpecV2),随着内核生成. |
./scene-examples.json | dist/scene-examples.json | 工作场景拍摄实例 验证与计划. |
./contract-manifest.json | dist/contract-manifest.json | 如私人API所写的同步表(kernelVersion, (中文(简体) ), privateCommit外加 contractVersion。 。 。 . |
./manifest.json | dist/manifest.json | 建筑物的明细: contractVersion,运输的sha256 openapi.json,操作/路径/组件数,同步字段数. |
./package.json | package.json | 一揽子清单;解决它require.resolve("@cueframe/api-contract/package.json"))定位已安装的软件包并读取其版本. |
contractVersion 是软件包版本。 两个安装了同样的报告
contractVersion 带有相同的字节; 并列记录的消费者
privateCommit 在其生成物(应用程序)的标题中
一旦他们读取了这个软件包而不是一个
local copy)可以从再生树上分辨出被撞出接针.
版本政策
- 版本随合同而移动. 任何字节更改为五字节之一
已运出
api/*.json文件是这个软件包的新版本, 因为每个 消费者从npm读取合同,npm版本不可改变.pnpm check:contract-version(单位:千美元)pnpm check和CI) 犯规, 拉请求或工作树api/*.json根据基准变化 财务报告和审定财务报表packages/api-contract/package.json没有 :main基线为: 前一次犯罪(HEAD(a) 当变化尚未承诺时) 分支是合并基数origin/mainCI通过牵引请求 基础或推力before承诺. - 由消费者的影响决定. 补丁:描述、实例、清单、,
添加剂不可破解计划细节. 次要:新操作,新可选
字段,新的 schema 组件。 主要: 已删除的操作或字段或
重新命名, 缩小类型, 添加必要的字段, 或场景方案更改
无相相相相. 审评的清单
public-surface.json这是 核对表:添加或删除的操作至少有未成年人. - 内容不变的再同步不移动版本.
contract-manifest.json携带privateCommit,但私人同步 比较三个内容文件,他们的散列,kernelVersion财务报告和审定财务报表contractVersion攻击目标,当他们不写 相等, 因此同步运行于内容相同的新私人任务 将《古兰经》抛出privateCommit)未发. 只有合同 更改会移动版本;当它移动时,同步会以 新的印章和上述规则适用. - 私人同步可能会给版本盖章. 何时
api/contract-manifest.json携带contractVersion,它命名软件包 版本同步被对质; 检查和构建都失败 与package.json,因此一个已失效的同步无法发布 . - 更改记录在仓库中
CHANGELOG.md下级@cueframe/api-contract <version>。 。 。 .
许可证
阿帕奇2.0 (英语). 该文件是托管的API已经为每个呼叫者服务的内容.