/project-module-architecture
处理 BK-CI 项目创建、项目属性、成员权限、项目标签、项目分片和项目资源边界时使用。当用户提到项目管理、projectId 含义、项目配置、成员管理或项目迁移时优先使用。
$ npx -y skills add tencentblueking/bk-ci --skill project-module-architecture --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
/project-module-architecture
Context preview
The summary Claude sees to decide when to auto-load this skill.
处理 BK-CI 项目创建、项目属性、成员权限、项目标签、项目分片和项目资源边界时使用。当用户提到项目管理、projectId 含义、项目配置、成员管理或项目迁移时优先使用。
SKILL.md
project-module-architecture.SKILL.mdname: project-module-architecture description: 处理 BK-CI 项目创建、项目属性、成员权限、项目标签、项目分片和项目资源边界时使用。当用户提到项目管理、projectId 含义、项目配置、成员管理或项目迁移时优先使用。
Project 模块架构
适用场景
- 创建、更新或迁移项目
- 处理项目属性、标签、渠道、审批状态
- 排查成员、权限、项目资源边界
- 判断其他模块里 `projectId` 的真实含义
- 处理项目分片、路由、项目级基础配置
不适用场景
- 只是某个流水线、代码库或制品本身的业务逻辑
- 只是普通权限模型设计,不涉及项目这个资源域
- 只是数据库脚本设计,不涉及项目模块语义
快速指导
1. 先确认问题属于哪条主线:
- 项目基础心智:看 `reference/1-project-foundation.md`
- 项目属性、权限、分片与扩展:看 `reference/2-project-operations.md`
2. BK-CI 里绝大多数业务接口说的 `projectId`,实际都更接近 `T_PROJECT.english_name`,不是数据库里的 UUID 主键字段。 3. `Project` 是基础模块,很多问题看起来发生在别的模块,但根源是项目属性、项目启停状态、项目边界或项目权限没对齐。 4. 只要改项目字段、项目属性或项目路由逻辑,就要同时考虑对其他模块的影响。
高信号规则
- 项目是 BK-CI 资源隔离的基础边界
- 其他模块依赖 `Project`,但不应该绕过它自行定义项目语义
- 项目属性常常决定后续流水线、代码库、权限和 PAC 行为
- 项目分片和路由属于基础设施能力,不是普通业务字段
关键陷阱
- 把 `T_PROJECT.PROJECT_ID` 和业务里的 `projectId` 混用
- 只改项目表,不同步看项目属性和下游依赖模块
- 把项目问题误判为权限问题,或把权限问题误判为项目不存在
- 忽略项目分片、渠道和审批状态对整体行为的影响
延伸阅读
- 项目基础:`reference/1-project-foundation.md`
- 项目属性与分片:`reference/2-project-operations.md`
- 涉及全局模块协作时:再看 `00-bkci-global-architecture`
- 涉及权限实现时:再看 `auth-module-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

