/pipeline-plugin-development
开发 BK-CI 流水线插件时使用,例如新增 Atom、编写 `task.json`、定义输入输出、处理多语言运行时、调试和发布插件。当用户要做插件本体而不是执行器或流水线模型时优先使用。
$ npx -y skills add tencentblueking/bk-ci --skill pipeline-plugin-development --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/pipeline-plugin-development
Context preview
The summary Claude sees to decide when to auto-load this skill.
开发 BK-CI 流水线插件时使用,例如新增 Atom、编写 `task.json`、定义输入输出、处理多语言运行时、调试和发布插件。当用户要做插件本体而不是执行器或流水线模型时优先使用。
SKILL.md
pipeline-plugin-development.SKILL.mdname: pipeline-plugin-development description: 开发 BK-CI 流水线插件时使用,例如新增 Atom、编写 `task.json`、定义输入输出、处理多语言运行时、调试和发布插件。当用户要做插件本体而不是执行器或流水线模型时优先使用。
流水线插件开发
适用场景
- 新增一个流水线插件
- 修改 `task.json` 配置和字段定义
- 设计插件输入、输出、错误码和敏感字段
- 选择 Java、Python、NodeJS、Golang 等插件实现方式
- 调试、测试、发布或排查插件行为
不适用场景
- 修改 Worker 如何执行插件
- 修改 Agent 如何拉起 Worker
- 修改 Dispatch 如何调度构建机
- 修改流水线模型、YAML 转换或模板体系
快速指导
1. 这个 skill 关注的是“插件本体怎么定义和交付”,不是“插件如何被执行”。 2. 先确认你是在开发 Atom,而不是在改执行器链路。 3. 开发插件时优先看三类信息:
- 插件基础与目录:`reference/1-plugin-foundation.md`
- `task.json`、输入输出与错误码:`reference/2-task-json-io.md`
- 调试、发布与最佳实践:`reference/3-debug-publish-practice.md`
4. `task.json` 是插件契约,字段设计、运行时配置、敏感信息标记都应先在这里定清楚。 5. 输入输出要以“稳定契约”为目标,不要把临时实现细节暴露给使用者。 6. 运行时和目标平台要尽量前置明确,避免发布后再补兼容。 7. 如果问题发生在插件被下载、执行、打日志或归档产物的阶段,通常要切到 `worker-module-architecture`。
高信号规则
- 插件开发的核心对象是 `task.json` 和插件执行入口
- 输入字段、输出变量、错误码属于对使用者可见的契约
- 多语言只是实现手段,契约稳定性比语言选择更重要
- 插件发布后会被很多流水线复用,兼容性和向后兼容要优先考虑
关键陷阱
- 把执行器问题误判成插件问题
- `task.json` 塞入过多前端/运行时细节,导致难以维护
- 忽略敏感字段、默认值和校验规则
- 先写实现,后补契约,最后导致输入输出不稳定
延伸阅读
- 插件基础与目录:`reference/1-plugin-foundation.md`
- `task.json`、输入输出与错误码:`reference/2-task-json-io.md`
- 调试、发布与最佳实践:`reference/3-debug-publish-practice.md`
- 如果问题出在执行阶段:再看 `worker-module-architecture`
- 如果问题出在流水线模型:再看 `pipeline-model-architecture`
Other skills on bk-ci.
- /00-bkci-global-architecture
用于跨模块开发、排查链路归属、判断某个需求应该落在哪个 BK-CI 模块,或需要快速理解流水线全链路协作时使用。单模块修改时优先读取对应模块 skill,而不是停留在这里。
Open skill - /agent-module-architecture
处理 BK-CI Agent 构建机侧能力时使用,例如守护进程、心跳、Ask 轮询、任务拉起、升级更新和与 Dispatch/Worker 的协作。当用户要改构建机宿主侧行为而不是 Worker 执行细节时优先使用。
Open skill - /api-interface-design
设计 BK-CI API 契约时使用,例如 Resource 路径设计、HTTP 方法选择、请求响应对象、错误码和版本策略。当用户要定义接口而不是实现业务逻辑时优先使用。
Open skill - /artifactory-module-architecture
处理 BK-CI 制品上传下载、制品元数据、BkRepo 或磁盘后端存储、文件任务和清理链路时使用。当用户提到构建产物、制品归档、下载令牌、报告文件、BkRepo 集成或制品清理时优先使用。
Open skill - /auth-module-architecture
处理 BK-CI Auth 模块时使用,例如 RBAC 权限校验、用户组与资源管理、IAM 集成、授权迁移和 OAuth2 认证。当用户要改权限平台实现而不是单次权限模型变更时优先使用。
Open skill - /backend-microservice-development
编写 BK-CI 后端微服务代码时使用,例如新增 Resource、组织 API/Service/DAO 分层、依赖注入、服务归属判断和 Spring Boot 开发约定。当用户要做 Kotlin/Java 后端开发时优先使用。
Open skill

