Agent Skills
返回列表
💻

自研小程序审查交付

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f12a44b7/self-dev-miniprogram-review-delivery

技能介绍

要解决的问题

微信小程序项目上线前,通常要经历部署、审查、发布等多个环节。这些环节分散在不同工具链里:miniprogram-ci 负责上传代码,CNB 负责代码托管与协作,云开发(CloudBase)负责后端函数。人工串联这些步骤时,容易遗漏审查点、忘记上传凭据,或在多人协作中缺少评审记录。

这个技能把整条交付链路整理成一套可重复执行的流程,适合希望用自动化方式串起「部署 → 审查 → 发布」的团队。

技能如何工作

阶段 0:CI 自动部署

技能先检查环境:CNB_TOKEN 是否配置、CNB_API 默认指向 https://api.cnb.cool、Node.js 是否 ≥ 18。部署阶段需要用户提供三个凭据:微信小程序 AppID、代码上传密钥(private.key)、腾讯云 API SecretId/Key。技能强调凭据由用户通过安全渠道传入,不要硬编码。

工作流支持从 CNB 源码仓库克隆 → 构建 → 上传到微信后台。

阶段 1:代码审查

解压项目后,用子代理扫描 JS 文件,关注三个方向:

  • 安全问题(SQL 注入、未校验输入、硬编码密钥)
  • 云函数逻辑缺陷(竞态条件、缺少事务、非原子操作)
  • 小程序 API 使用(wx.xxx 调用是否正确、回调处理)

审查报告按三级分类输出:🔴 严重(P0) 安全漏洞与数据丢失风险;🟡 重要(P1) 逻辑缺陷与未处理异常;🔵 建议(P2) 代码规范与性能优化。

阶段 2:NPC 评审

NPC 是 CNB 云开发工程师,通过 Issue + @mention 触发。创建评审 Issue 时有两条硬规则:

  • assignees 必须包含 ["cnbnn"]
  • body 必须包含 @tencent/cloud/cloudbase/community(云开发工程师) 才能触发 NPC,且必须包含积分授权声明,否则 NPC 可能因积分不足无法执行任务

合并 NPC PR 时,add/add 冲突(两边都新增同名文件)优先采用 NPC 版本,因为其中包含修复。

阶段 3:云函数专项评审

单独派 Issue 给 NPC,专注云函数评审,要点包括:

  • 原子操作:用 _.inc() 替代 read-modify-write
  • 事务保护:用 db.runTransaction() 包裹关键操作
  • 输入与权限校验:wx.cloud.callContext / openid 验证
  • 错误处理:完整 try-catch,错误信息不泄露内部细节
  • 性能:避免 N+1 查询,合理使用索引

阶段 4:打包发布

运行 scripts/pack.sh 打包,自动排除 .git/、node_modules/、miniprogram_npm/。随后通过 CNB API 创建 Release,上传 zip 附件,body 中附带完整改动清单。

阶段 5:交付测试

生成 P0 安全验证、P1 功能回归、P2 边界异常三个优先级的测试用例清单,输出为 Markdown 格式,可直接作为测试依据。

适用边界与注意点

  • miniprogram-ci 不支持设置体验版,体验版仍需用户在微信后台手动操作。
  • 低内存服务器执行 npm install miniprogram-ci 可能 OOM,需要设置 NODE_OPTIONS 限制。
  • 密钥通过即时通讯工具传输可能被截断,建议先用 openssl rsa -in private.key -check -noout 验证,再通过 SSH/scp 等安全通道传递。
  • NPC 派活时,仅设置 assignees 不够,body 中的 @mention 和积分授权声明缺一不可。
  • CNB Release 上传需要 asset_name 和 size 参数。
  • 各步骤查询具体 API 调用方式时,需要阅读 references/cnb-api.md。

使用场景

  • 小程序源码更新后,需要从 CNB 仓库拉取、构建并上传到微信后台的开发团队
  • 多人协作小程序项目,需要在合并前对 JS 代码做安全与竞态条件审查的负责人
  • 通过 Issue 触发 CNB 云开发工程师评审,并处理 NPC PR 冲突的仓库维护者
  • 小程序上线前,需对云函数做事务保护与权限校验专项评审并打包发布 Release

适合人员

  • 小程序开发团队的技术负责人,需要在每次源码更新后自动化部署并上传到微信后台
  • 多人协作小程序项目的代码审查员,需要在合并前系统性检查安全漏洞和逻辑缺陷
  • 使用 CNB 托管代码的团队维护者,需要通过 Issue 触发云开发工程师评审并管理 NPC PR
  • 小程序上线发布负责人,需要在发布前完成云函数评审、打包构建和 Release 发布全流程