CNB Open API 全量调用
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/self-dev-cnb-openapi-skills。
技能介绍
要解决什么问题
在 CNB(Cloud Native Build)平台上查构建日志、Issue、合并请求或仓库元数据时,控制台链接和 Open API 路径并不总是一眼对应。若只靠模型「口述」curl,你拿不到真实 JSON,也无法在失败时对照平台侧 trace。本技能把 CNB Open API 全量接口 的调用方式写进 Agent 行为:用环境变量 CNB_TOKEN、CNB_API_ENDPOINT 发请求,并按页面 URL 反推 repo、sn、number 等参数。
技能如何工作
- 实跑而非展示:访问 API 时必须通过
exec_command执行curl,直接返回响应并解读;不用web_fetch(无法带 Bearer 认证)。 - 统一请求头:
Accept: application/vnd.cnb.api+json,Authorization: Bearer $CNB_TOKEN;命令里应带-w '%header{traceparent}',失败时把 trace 记在日志里供排查,勿向用户展示 trace 正文。 - URL 映射:例如
.../{repo}/-/build/logs/{sn}对应查构建状态与日志列表;Issue、PR、commit、仓库首页等路径在技能文档中有对照表。 - 接口覆盖面:文档按服务分块索引——
build(启停构建、Stage、Runner 日志)、git(分支、提交、对比、归档)、issues、members、gitsettings、knowledgebase、ai等,每个条目含参数与语义说明。
适用边界与注意点
- 必须预先配置
CNB_TOKEN;部分接口(如 AiChatCompletions)要求调用者对仓库具备写权限,读令牌不一定够用。 - 技能描述的是 HTTP API 调用契约,不包含 CNB 流水线 YAML 编写或 Runner 运维;知识库查询需参考平台文档中的 Embedding / 查询语义。
- 占位符应写成
$CNB_TOKEN等形式,不要伪造 token;默认 API 基址为https://api.cnb.cool,可用CNB_API_ENDPOINT覆盖。
使用场景
- 流水线失败后,从构建日志页 URL 提取 sn,用 API 拉取 Stage 详情与 Runner 日志再定位失败步骤
- 在 Issue/PR 讨论里只有平台链接时,通过接口读取评论、标签与处理人并整理变更上下文
- 需要批量比对两次 ref 的变更文件或下载 commit 归档,而不想在网页里逐个点选
- 组织或仓库成员权限调整前,先列出直接成员、继承成员与外部贡献者及各自访问级别
适合人员
- 负责 CNB 流水线的 SRE,需要在告警里附带可复现的 API 查询结果而非截图
- 在 CNB 托管仓库上做 Code Review 的维护者,希望从 PR/Issue 链接自动汇总状态与讨论
- 平台或 DevOps 工程师,要通过 Open API 同步分支保护、流水线设置或定时构建任务
- 在 CNB 上维护知识库或 AI 对话集成的团队,需要按文档调用 QueryKnowledgeBase 等接口