Superpowers 持续集成实战:从零到发布的四步走,自动化测试与部署完整指南
【免费下载链接】superpowersAn agentic skills framework & software development methodology that works.项目地址: https://gitcode.com/GitHub_Trending/su/superpowers
最近一次更新 Superpowers 的技能,你是不是还得手动跑一遍测试?本文以 Superpowers(Claude Code 技能库)为例,带你从零搭建它的持续集成:两套内置测试套件、标准流水线、红掉时的排错手段,以及发布前的最后确认,一次讲全。
第 1 步:首次搭建,10 分钟跑通本地流水线
🔧 先拿到代码:
git clone https://gitcode.com/GitHub_Trending/su/superpowers cd superpowersSuperpowers 自带两套测试入口,职责完全不同,别混着用:
| 对比项 | Claude Code 技能测试套件 | OpenCode 插件测试套件 |
|---|---|---|
| 入口脚本 | tests/claude-code/run-skill-tests.sh | tests/opencode/run-tests.sh |
| 覆盖内容 | 技能加载、子代理驱动开发、worktree 路径策略 | 插件加载、技能核心库、工具调用、优先级解析 |
| 速度 | 快速用例分钟级;集成用例约 10–30 分钟 | 快速用例秒级;集成用例依赖本机 OpenCode 环境 |
首次搭建的目标很简单:把快速用例全部跑绿。执行下面这行,等结果全绿再往下走:
./tests/claude-code/run-skill-tests.sh注意脚本会先检查 Claude Code CLI 是否存在,没装的话会直接报错退出——这是新手本地跑挂的第一大原因。另外两个常用参数记住就好:--test指定单个用例文件重跑,--verbose输出详细日志。
第 2 步:每次提交后,流水线该跑什么
流水线按五个阶段递进,前一阶段绿了才进下一阶段:
| 阶段 | 做什么 | 建议触发时机 |
|---|---|---|
| 1. 代码检查 | 脚本语法与格式的基础校验 | 每次 push / PR |
| 2. 快速单元测试 | 跑技能套件的快速用例 | 每次 push / PR |
| 3. 集成测试 | 加--integration,全量工作流 | 夜间定时或发版前 |
| 4. 插件测试 | tests/opencode/run-tests.sh --integration | 夜间定时或发版前 |
| 5. 部署准备 | 打包技能、核对文档与发布说明 | 前四步全绿之后 |
关键设计:集成测试慢(10–30 分钟),不要卡在每次提交上。push 触发的是阶段 1–2,几分钟内就能拿到反馈;阶段 3–4 放夜间定时任务或发布前手动触发。这样「提交后等人等半小时」的问题就不存在了。
第 3 步:流水线红了,按这个顺序查
⚠️ 集成测试超时:如何用 --timeout 600 拉长预算
单条用例默认超时 5 分钟,CI 机器又比本地慢,最容易死在超时上。两个动作:
- CI 任务本身调大超时上限,别让它先于脚本结束被杀;
- 脚本侧用
--timeout覆盖默认值,给足预算:
./tests/claude-code/run-skill-tests.sh --integration --timeout 600环境不一致导致「本地绿、CI 红」
锁版本是唯一稳妥的办法:CI 配置里固定 Node、Bash、Claude Code CLI 等依赖的版本号,而不是让 CI 每次拉最新。另外让 CI 里的执行方式与 测试指南 描述的标准流程保持一致,避免「同一脚本两种跑法」这种隐蔽差异。
测试失败但看不出原因
三步排错法:
- 加
--verbose重跑失败的用例,先看完整日志定位卡在哪一步; - 确认 CI 环境里 Claude Code CLI 已正确安装(脚本开头就会做这个检查);
- 还查不出来时,套一遍系统调试技能里的流程,从现象回溯根因,而不是猜改。
第 4 步:发布前,验证三步不能少
🚀 全部流水线绿了之后,部署本身很短,但验证不能省:
git pull拉取最新代码到插件目录;- 运行
./tests/opencode/test-plugin-loading.sh,确认插件结构完整、能被加载; opencode reload-plugins让新版本立即生效。
顺序不能颠倒——先验证再重载,万一插件坏了,现场还能回滚。
收尾:把测试习惯带进日常开发
CI 只是把「该跑的测试」自动跑了而已。想从源头少红,建议配合测试驱动开发技能:改技能先写失败用例,再写实现。配合本文四步走——搭流水线、定触发时机、红掉会查、发前必验——Superpowers 的自动化测试与部署闭环就完整了。
【免费下载链接】superpowersAn agentic skills framework & software development methodology that works.项目地址: https://gitcode.com/GitHub_Trending/su/superpowers
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考