@burdenoff/sdk-libs

中文文档
2026.1108.5发布于 2026/11/08UNLICENSEDTypeScriptESM + CJS近 30 天下载 4600

模块化的SDK库共享于所有Burdenoff产品SDK(活控制,botlit,流体网格,大管,健康bowl,devportal,工作空间). 每个模块都会导出 SdkModule 合同,附带(ctx) 返回一个打入的API; 产品 SDKs 变薄了 She

中文使用文档
文档目录6 节
  1. 建筑
  2. 构建
  3. 图标
  4. 添加模块
  5. 测试
  6. 参考文献

@ buffoff/ sdk- libs

模块SDK库在所有Burdenoff产品SDK(节点/TypeScript)之间共享.

每一单元 src/modules/<name>/ 导出a SdkModule 与 attach(ctx) -> API产品SDK(@vibecontrols/sdk-node, (中文(简体) ), @botlit/sdk-node等)成为细贝壳来选择要上载的模块. 姐姐来 @burdenoff/cli-sdk。 。 。 .

建筑

  • 核心 (单位:千美元)src/core/: SdkContext 道具袋, SdkModule 合同, BaseGraphQLClient (双重工作空间+全球网关), AuthStore 带有可插件 TokenStore (单位:千美元)InMemory, (中文(简体) ), File, (中文(简体) ), Env),有符号编辑的错误等级, ModuleRegistry 用于跨模块访问.
  • 模块 (单位:千美元)src/modules/<name>/: index.ts (默认-导出) SdkModule, (中文(简体) ), operations.ts (手写) gql 字符串, api.ts (该课由 attach, (中文(简体) ), types.ts (从 __generated__/, (中文(简体) ), __generated__/types.ts (代码输出,被克提诺.
  • 硬规则: 模块从不直接导入——使用 ctx.modules.get<API>('id')模块从未调用 process.exit 或者把秘密写到日志上.

构建

  • 齐声 双重无害环境管理+CJS,多入, dts: true。条目: src/index.ts, (中文(简体) ), src/core/index.ts, (中文(简体) ), src/modules/*/index.ts。 。 。 .
  • external数字 : graphql, (中文(简体) ), graphql-request, (中文(简体) ), graphql-ws (同声道.
  • 子路径导入 : @burdenoff/sdk-libs/core, (中文(简体) ), @burdenoff/sdk-libs/modules/<name>。 。 。 .

图标

bun install
bun run dev               # tsup watch
bun run build             # tsup once
bun run sanity            # boff sanity: format (bun fmt), lint, typecheck (bun check), build, test
bun run test              # bun test
bun run type:check        # bun check (TypeScript 7 rules)
bun fmt                   # format src, tests and scripts
bun run codegen           # GraphQL types from pinned Hive supergraph
bun run codegen:check     # CI gate: fail if generated types drifted
bun run parity:check      # cross-language manifest diff vs sdk-libs-python

添加模块

  1. mkdir src/modules/<name> 与 index.ts, (中文(简体) ), operations.ts, (中文(简体) ), api.ts, (中文(简体) ), types.ts。 。 。 .
  2. 默认导出 an SdkModule<API> 从 index.ts。 。 。 .
  3. 将模块添加到 schema/modules.yaml (操作+依赖).
  4. 镜入 ~/products/sdk-libs-python/ 在同一对公关里.
  5. tsup自动捡起它(src/modules/*/index.ts (原始内容存档于2017-10-25). glob.

测试

  • 单位tests/unit/:纯逻辑 – arg parsers,应变器,gql doc 构建器. 没有HTTP. bun test, < 5s (英语).
  • 融入社会tests/integration/:MSW拦截GraphQL请求. 混杂工厂 __generated__/types. Schema 重命名中断模拟 = 测试失败.
  • E2E级(tests/e2e/:真实 svc+状态,运行夜行. 镜像 ~/products/vibecontrols/vibecontrols-doctor/scripts/test-*-crud.sh。 。 。 .
  • 均等( E)tests/parity/<scenario>.yaml:由节点+蟒蛇运行的同一种情景文件. 如果形状有差异, CI 失败 .

参考文献

  • ~/products/burdenoff-be-sdk-node/ ——tsup多入+verdaccio出版参考.
  • ~/products/cli-sdk/ - 姐妹CLI SDK(英语:CLI SDK).
  • ~/products/vibecontrols/vibecontrols-sdk-node/ ——第一消费者(薄壳).
  • ~/products/dev/audit/index/vibecontrols.md 23个单元的地面真相.
  • docs/fluidgrids.md ——FluidGrids模块:认证,出错和出错,重复,秘密,怪事.

版本与发布记录

@burdenoff/sdk-libs 共发布 56 个版本,首次发布于 2026/05/11;过去 12 个月发布了 56 个版本。

版本发布日期距今
2026.1108.5latest2026/11/08今天
2026.1108.42026/11/08今天
2026.1108.32026/11/08今天
2026.1108.22026/11/08今天
2026.1108.12026/11/08今天
2026.1107.42026/11/081 天前

其他发布通道:alpha → 2026.523.1。

关于 @burdenoff/sdk-libs 的常见问题

@burdenoff/sdk-libs 是什么?

模块化的SDK库共享于所有Burdenoff产品SDK(活控制,botlit,流体网格,大管,健康bowl,devportal,工作空间). 每个模块都会导出 SdkModule 合同,附带(ctx) 返回一个打入的API; 产品 SDKs 变薄了 She

如何安装 @burdenoff/sdk-libs?

在项目目录运行 npm install @burdenoff/sdk-libs,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:graphql(^16.0.0)、graphql-request(^7.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@burdenoff/sdk-libs 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@burdenoff/sdk-libs 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@burdenoff/sdk-libs 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=24.11.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@burdenoff/sdk-libs 可以商用吗?

@burdenoff/sdk-libs 使用 UNLICENSED 许可。作者声明为 UNLICENSED,即不授予公开使用许可(与公共领域的 Unlicense 不同)。使用前需获得作者授权。以上为概括,不构成法律意见,请以许可原文为准。

@burdenoff/sdk-libs 的下载量有多少?

根据 npm 官方下载统计,@burdenoff/sdk-libs 在 2026/10/09 – 2026/11/07 这 30 天内被下载 4,600 次,日均约 153 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@burdenoff/sdk-libs 还在维护吗?

最新版本 2026.1108.5 发布于 2026/11/08(今天);至今共发布 56 个版本,其中过去 12 个月发布了 56 个;首次发布于 2026/05/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。