# @camunda8/sdk-infra 中文文档

规范地址：https://npmcn.com/package/%40camunda8/sdk-infra/

版本：1\.13\.0
npm 元数据更新时间：2026-11-03T04:25:17.735Z
中文译文更新时间：2026-11-09T01:05:10.347Z
软件包许可：Apache-2\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40camunda8/sdk-infra
原文对照：https://npmcn.com/package/%40camunda8/sdk-infra/?lang=original
项目主页：https://github.com/camunda/sdk-infra#readme
源码仓库：https://github.com/camunda/sdk-infra

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：61.6 kB，17 个文件
- TypeScript 类型：未声明
- 运行依赖：0 个
- 首次发布：2026-05-04T01:41:03.717Z
- 最新版本发布：2026-11-03T04:25:17.355Z
- 近 30 天下载量：3174（2026-10-09 至 2026-11-07，npm 官方下载统计）
- 已发布版本数：30（近 12 个月 30 个）

## 中文简介

Camunda SDK储存库的共享基础设施

## 安装

```sh
npm install @camunda8/sdk-infra
```

也可以使用：`pnpm add @camunda8/sdk-infra`、`yarn add @camunda8/sdk-infra`、`bun add @camunda8/sdk-infra`

## README

# 脚踏实地

Camunda SDK仓库的共用基础设施。 这种回放提供了可再使用的GitHub动作工作流程,复合动作,CLI工具,以及共享配置来消除SDK回放的重复.

## 包括什么

| 目录 | 目的 |
| --- | --- |
| `.github/workflows/` | 可重复使用的 CI 工作流程( spec bandling, contentlint, 集成测试,代理示例覆盖) |
| `actions/` | 复合 GitHub 动作( 启动 Camunda 堆栈、 同步片段、 检查覆盖、 设置工具链) |
| `docker/` | 共享 Docker 编译集成测试文件 |
| `scripts/` | 统一的CLI工具(片段同步,实例覆盖检查,操作检测) |
| `configs/` | 共享承诺和语义释放基础配置 |
| `schema/` | JSON 计划 `operation-map.json` 验证 |
| `policies/` | 分类贡献准则(AGENTS.md) |
| `templates/` | SDK Repos 的分类问题表 |

## SDK 重置快速启动

### 1\. 捆绑(可重复使用的工作流程)

```yaml
# .github/workflows/ci.yml
jobs:
  bundle:
    uses: camunda/sdk-infra/.github/workflows/sdk-bundle-spec.yml@v1
    with:
      spec-ref: stable/8.9
```

### 2\. Comtlint(可重复使用的工作流程)

```yaml
  commitlint:
    uses: camunda/sdk-infra/.github/workflows/sdk-commitlint.yml@v1
```

### 3\. 开始Camunda综合测试(复合行动)

```yaml
  integration:
    steps:
      - uses: camunda/sdk-infra/actions/start-camunda@v1
        with:
          stack: full
          version: 8.10.0
```

### 4\. 同步 README 片断(复合动作)

```yaml
  snippets:
    steps:
      - uses: camunda/sdk-infra/actions/sync-readme-snippets@v1
        with:
          lang: python
          check: true
```

### 5\. 检查实例覆盖面(综合行动)

```yaml
  coverage:
    steps:
      - uses: camunda/sdk-infra/actions/check-example-coverage@v1
        with:
          operation-map: examples/operation-map.json
```

### 6\. 代理实例覆盖(可重复使用的工作流程)

当日覆盖检查文件有“缺失实例覆盖”问题时,这些将运行 副驾驶CLI对抗回波,并用示例打开拉出请求. 打电话者拥有 只有触发器,权限,以及此处定义"验证"的命令.

```yaml
# .github/workflows/agent-example-coverage.yml
on:
  issues:
    types: [labeled]

permissions: {}

jobs:
  implement:
    if: github.event.label.name == 'new-operations'
    permissions:
      contents: read
      id-token: write
      copilot-requests: write
      issues: write
    uses: camunda/sdk-infra/.github/workflows/sdk-agent-example-coverage.yml@v1
    secrets:
      VAULT_ADDR: ${{ secrets.VAULT_ADDR }}
      VAULT_JWT_PATH: ${{ secrets.VAULT_JWT_PATH }}
      VAULT_JWT_ROLE: ${{ secrets.VAULT_JWT_ROLE }}
      VAULT_JWT_AUDIENCE: ${{ secrets.VAULT_JWT_AUDIENCE }}
    with:
      language: go
      issue-number: ${{ github.event.issue.number }}
      verify-commands: |
        make check
```

一个同伴 `sdk-agent-pr-followup.yml` 对所产生的拉动请求的反馈作出反应 a 包括: `/agent fix` 注释, CI 运行失败, 或来自另一个机器人的审查 。 机器人审查 路径按小时运行 `schedule` 而不是继续 `pull_request_review`,因为 GitHub 任意运行 `Copilot` 演员触发手动审批背后.

宣告任何跟踪文件 核查命令 合法再生成( 锁文件, a) 记录固定) `verify-artifacts`; 任何他们接触的外部允许列表 失败了 而不是被卷进承诺.

在SDKs中,将每一次CI运行的光谱新鲜度捆绑在一起——js,python和csharp——一个新的 上游操作不立即检查每个打开拉动请求的覆盖范围, 没有任何 这导致了它. `sdk-coverage-gap-dispatch.yml` 通过发送 上面的探测器,所以差距被固定一次对 `main`,并留下一个注释 而不是把承诺推到别人的分行.

### 7\. 问题标签(可重复使用的工作流程+问题表)

从问题表格和 `Type:` 编号 : `Found-by:` 编号 : `Affects:` 编号 : `Severity:` 线条在正文中,所以由代理在API上打开的问题与从浏览器上打开的相同. 见 [政策/行动计划](https://npmcn.com/package/%40camunda8/sdk-infra/policies/AGENTS.md#opening-issues) 对各公约而言。 复制 [模板/ISSUE TEMPLATE/](https://npmcn.com/package/%40camunda8/sdk-infra/templates/ISSUE_TEMPLATE/) 改为 `.github/ISSUE_TEMPLATE/` (GitHub只从还原本身读出表格),并添加:

```yaml
# .github/workflows/issue-labels.yml
on:
  issues:
    types: [opened, edited, reopened, labeled, unlabeled]
permissions:
  issues: write
jobs:
  label:
    uses: camunda/sdk-infra/.github/workflows/sdk-issue-labels.yml@v1
```

### 8\. 共享配置

```js
// commitlint.config.cjs
module.exports = require('@camunda8/sdk-infra/configs/commitlint.config.base.cjs');

// release.config.cjs
const base = require('@camunda8/sdk-infra/configs/release.config.base.cjs');
module.exports = { ...base, plugins: [...base.plugins, /* language-specific */] };
```

## 地方发展工具

脚本在 `scripts/` 可以用 Python 3.10+ 直接运行 :

```bash
# Sync README snippets
python3 scripts/sync-readme-snippets.py --lang csharp --readme ../my-sdk/README.md --examples-dir ../my-sdk/docs/examples --check

# Check example coverage
python3 scripts/check-example-coverage.py --spec ../my-sdk/external-spec/bundled/rest-api.bundle.json --map ../my-sdk/examples/operation-map.json
```

## 版本

两个发行渠道分别版本.

-   **npm 软件包** (单位:千美元)`@camunda8/sdk-infra`)——由语义释出 `main`编辑 版本在 `package.json` 是一个哨兵,从来不用手工编辑.
-   **可重复使用的工作流程和综合行动** - 移动的主标签 `v1` 只有这个 SDK 重置 钉上它( p)`@v1`页:1 `Release` 工作流程将标签在每次推力上向前移动 `main`。对工作流程或动作界面的中断更改会获得一个新的主要标记 (单位:千美元)`v2`)和消费者被故意迁移;添加剂变化留在当前 专业.

两个频道共用一个标签命名空间. `vX.Y.Z` 属于语义释放 并且从来没有 由手创建的——见AGENTS.md 为什么一个手动无声地花费npm释放.

## 语文说明

### Python SDK 键盘

-   **释放配置**: Python 的使用 `python-semantic-release` (配置于 `pyproject.toml`),而不是节点.js `semantic-release`共享 `release.config.base.cjs` 已经 **没有** 适用于 Python.
-   **堆栈**: Python只使用轻量级(单服务)多克堆栈. 这个 `stack: full` 选项不适用.

### 类型脚本/ JS SDK

-   **片段文件**: JS SDK 存储仅导入的片段 `.txt` 文件(例如, `readme-imports.txt`) (中文(简体) ). 统一同步脚本包括 `.txt` 在 TypeScript 文件扩展名中.
-   **多源标记**: 跨越多源文件的复合区域在片段标记中使用逗号分隔路径(例如:, `examples/readme-imports.txt,examples/readme.ts`) (中文(简体) ).

### C# SDK (英语)

-   **额外的CI检查**C#SDK有一个 `check-overwrite-completeness.js` 属于C#特有且未包含在以下共享中的守护.

## 常见问题

### @camunda8/sdk-infra 是什么？

Camunda SDK储存库的共享基础设施

### 如何安装 @camunda8/sdk-infra？

在项目目录运行 npm install @camunda8/sdk-infra，或使用 pnpm add / yarn add / bun add。

### @camunda8/sdk-infra 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/camunda8\_\_sdk-infra 是否存在。

### @camunda8/sdk-infra 可以商用吗？

@camunda8/sdk-infra 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @camunda8/sdk-infra 的下载量有多少？

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

### @camunda8/sdk-infra 还在维护吗？

最新版本 1\.13\.0 发布于 2026/11/03（6 天前）；至今共发布 30 个版本，其中过去 12 个月发布了 30 个；首次发布于 2026/05/04。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

