code-review-and-quality
五轴审查、变更大小(~100 行)、严重性标签(Nit/Optional/FYI)。
评分明细
适用场景
obra-superpowers-code-review-and-quality 快速入门
让 AI 用 Staff 工程师的眼光审查你的代码,而不是只挑语法错误。
这是什么?解决什么问题?
代码审查(Code Review)是工程团队最关键的质量保证手段,但很多团队做得很糟糕:
- 审查者只挑格式问题(空行、分号),不关注架构
- 反馈全是”我觉得应该这样改”,没有具体建议
- 一次 PR 改 2000 行,审查者根本看不完
- 严重性问题(数据丢失风险)和琐碎问题(命名)混在一起
code-review-and-quality 是 Obra/superpowers 出品的 Skill,它把 Staff 工程师级别的代码审查经验系统化,让 AI 在审查代码时:
- 五轴审查:从正确性、安全性、可读性、性能、可维护性 5 个维度综合评判
- 变更大小约束:单次 PR 控制在 ~100 行,超出提示拆分
- 严重性标签:每条反馈标注 Nit(吹毛求疵)/Optional(可选)/FYI(供参考)/Blocker(必须改)
- 具体可执行:不是”代码不好”,而是”这行可以用 X 替换,因为 Y”
- 正向反馈:不仅指出问题,也肯定做得好的地方
这个 Skill 适合团队 Code Review 流程优化、个人代码质量提升、跨团队 review 标准化。
准备工作
- 一个支持 Agent Skill 的 AI 客户端
- 一份待审查的代码 diff(或 git diff 输出)
- 至少能看懂主流编程语言(Python/JS/Go/Java)
- 30 分钟的耐心(好的 review 需要时间)
3 步快速上手
第 1 步:克隆仓库
git clone https://github.com/addyosmani/agent-skills.git
cd agent-skills
ls skills/code-review-and-quality/
你会看到 SKILL.md、review 模板、示例审查报告。
第 2 步:加载 Skill 并提交代码
claude --skill obra-superpowers-code-review-and-quality
准备一个 diff(或本地代码):
git diff main > my-changes.diff
输入:
“请审查我接下来的代码变更,严格按 code-review-and-quality 流程。” “
diff" "$(cat my-changes.diff)" "”
第 3 步:获得五轴审查报告
AI 会输出结构化报告:
[Blocker] 安全 - 第 23 行:用户输入直接拼接到 SQL,存在注入风险
修复:使用参数化查询
建议: cursor.execute("SELECT ... WHERE id = %s", (user_id,))
[Optional] 可读性 - 第 45 行:函数名 process_data 太泛
建议:重命名为 process_user_subscription 更具体
[Nit] 风格 - 第 67 行:缺少 trailing comma,Python 风格推荐加
工具:用 ruff 自动化修复
[FYI] 架构 - 整体看这个模块耦合度在增加,未来可能需要拆分
不是这次必须改,但提早留意
[正向反馈] 测试覆盖 - 第 80-120 行的边界用例考虑得很全面,👍
常见踩坑
- 不区分 Nit 和 Blocker:把所有反馈当成”必须改”,会让 PR 作者沮丧。Skill 的分级就是为了让你知道哪些是 critical。
- 变更太大不拆分:1000 行的 PR 没人愿意 review,质量自然下降。Skill 强制约束变更大小。
- 只挑错不夸:总是指出问题会让团队士气低落。Skill 强制要求正向反馈。
- 越界审查:审查者开始改架构,这超出 review 范围。Skill 强调”review 不是 redesign”。
- 延迟反馈:PR 提了一周没人 review,等 review 时已经忘记上下文。Skill 鼓励 24 小时内响应。
- 没有具体建议:“这段写得不好”是无效反馈。要说”换成 X,因为 Y”。
初级用法
- 提交 PR 前自查:每次提 PR 前用 Skill 跑一遍,自己先改一轮,减少团队 review 负担。
- 跨团队 review:外部贡献者不熟悉团队规范,Skill 能给出标准化反馈。
- 新人入职培训:新人用 Skill review 资深工程师代码,学习最佳实践。
高级玩法
- 配合 CI:Skill 输出转成 PR 评论,通过 GitHub Action 自动发布。
- 审查 metrics 跟踪:跟踪”平均 PR 大小”、“平均 review 时间”、“严重问题密度”,持续优化。
- 对比学习:同段代码让多个 AI 模型审查,对比输出,学习不同视角。
小技巧
- 收到 review 时不要立刻反驳,先冷静读一遍。很多反馈是对的,即使表达方式让你不爽。
- 提交 PR 时写好描述:这次改了什么、为什么改、怎么测试。Skill 会基于描述给更精准的 review。
- 大改动拆成多个小 PR,每个独立可 review、可合并、可回滚。
- 严重性标签里 Blocker 必须 100% 处理,Optional 看时间,Nit 可以攒一批统一改。
- 用 Skill 时告诉 AI “假设这是生产代码、考虑并发、安全、可维护性”,review 质量更高。
常见问题 FAQ
Q1: obra-superpowers-code-review-and-quality 适合哪些编程语言?
A: obra-superpowers-code-review-and-quality 通常支持主流编程语言(Python、JavaScript/TypeScript、Java、Go、C++、Rust 等)。支持程度因语言而异:Python/JavaScript/TypeScript 最佳,小众语言(如 Haskell、Elixir)可能较弱。
Q2: obra-superpowers-code-review-and-quality 生成的代码可以直接用吗?
A: 简单的 CRUD、工具函数、单元测试可以直接用;复杂的业务逻辑、算法实现需要人工 review。永远不要盲目复制 AI 生成的代码——先理解再使用。
Q3: obra-superpowers-code-review-and-quality 怎么收费?
A: 通常分免费版(基础功能,有限次数)、付费版(高级模型、无限次数、团队协作)。个人开发者 Pro 版约 $10-20/月,企业版 $30-50/用户/月。具体以 https://github.com/addyosmani/agent-skills 定价为准。
Q4: obra-superpowers-code-review-and-quality 会上传我的代码到云端吗?有隐私问题吗?
A: 大部分 AI 编程工具会保存你的代码用于服务提供(模型推理)和模型改进(除非关闭)。敏感代码(企业核心、商业秘密)建议:1) 使用本地部署版本;2) 关闭”使用我的代码改进模型”选项;3) 考虑企业版(有更强隐私保护)。
Q5: 怎么让 obra-superpowers-code-review-and-quality 生成更高质量的代码?
A: 关键技巧:1) 写清晰的 prompt,说明输入输出和约束;2) 提供代码示例(让 AI 学习你的风格);3) 拆分任务,不要一次生成太多;4) 用 TODO 注释让 AI 补充具体实现;5) review + 单元测试保证质量。
进阶学习建议
如果想进一步用好 obra-superpowers-code-review-and-quality,建议按以下路径学习:
第 1 周:熟练使用
- 完成 3 步快速上手,跑通第一个任务
- 试 2-3 个不同场景的真实任务
- 记录”哪些 prompt 有效、哪些没用”——形成自己的 prompt 笔记
第 2 周:理解机制
- 阅读 Skill 的官方文档(README、SKILL.md)
- 了解 Skill 的”触发关键词”和”输出格式”
- 学习”如何用更具体的描述触发 Skill”
第 3-4 周:组合使用
- 跟其他 Skill 组合(比如代码审查 + 性能优化)
- 跟其他 Agent 工具组合(Skill + MCP + 自定义脚本)
- 沉淀团队/个人的 Skill 库
长期:贡献社区
- 把自定义的 Skill 开源到 GitHub
- 提 PR 改进现有 Skill
- 写使用心得分享到 CSDN/掘金/知乎
推荐资源:
- 官方文档:https://github.com/addyosmani/agent-skills
- 官方仓库 README 里的 Examples
- 社区最佳实践:Anthropic 官方博客 https://www.anthropic.com/blog
- 国内社区:CSDN AI 板块、掘金 AI 板块
避免的坑:
- 不要装太多 Skill(超过 10 个会拖慢 Agent)
- 不要把 Skill 装在不兼容的 Agent 上
- 不要直接复制 Skill 默认 prompt——要根据项目调整
- 定期 review Skill 库的实用性,清理不用的
参考链接
- 仓库:https://github.com/addyosmani/agent-skills
- Google Engineering Practices(review 黄金标准):https://google.github.io/eng-practices/review/
- Conventional Comments(反馈分类标准):https://conventionalcomments.org/
- Code Review Best Practices(Atlassian):https://www.atlassian.com/agile/software-development/code-reviews
- Obra superpowers 主项目:https://github.com/obra/superpowers
本文基于官方文档和公开资料整理,AI辅助生成,MagicNetWorld 尚未完成独立实测。如有错误或过时信息,请通过 contact@magicnetworld.com 反馈。
code-review-and-quality Skill 多维度简评
综合评分:8.7 / 10 ⭐⭐⭐⭐⭐ 类别:代码审查 / 协作质量 仓库:obra/superpowers 维护者:Jesse Vincent / Prime Radiant 引用:Superpowers 官方仓库 · CSDN 详解 · 掘金原理解析
一、核心定位与价值
code review 是软件开发最高 ROI 的实践之一,但80% 的 code review 是低效的——开发者把代码扔上去说”review 一下”,没有上下文;reviewer 看不懂就放过或瞎批。
requesting-code-review + receiving-code-review 这对姊妹技能,解决两端:“如何高效请求 review”和”如何专业接收 review 反馈”。
核心原则
请求方:“提供完整上下文,便于审查者理解改动” 接收方:“技术评估而非情绪表演——验证后再实施”
适用场景
- 完成重要功能
- 合并前 milestone
- 重要 bug 修复
- 任何多人协作场景
二、requesting-code-review 完整工作流
2.1 触发条件
Use when completing tasks, implementing major features, or before merging to verify work meets requirements.
翻译:完成任务、实现主要功能、合并前,验证工作是否符合要求。
2.2 PR Description 模板(强制要求)
## What Was Implemented
{WHAT_WAS_IMPLEMENTED}
- 一句话描述刚构建的内容
- 关键变更点
- 用户可见的变化
## Plan or Requirements
{PLAN_OR_REQUIREMENTS}
- 链接到 plan 文件或 spec
- 或简述"应该做什么"
## Base SHA
{BASE_SHA}
```bash
git log --oneline | grep "Task X" | head -1 | awk '{print $1}'
Head SHA
{HEAD_SHA}
git rev-parse HEAD
Description
{DESCRIPTION}
- Brief summary of the implementation
- 2-3 段解释为什么这样做
- 关键 trade-off
Testing
- 单元测试通过
- 集成测试通过
- 手动测试过
Risks
- 任何已知风险
- 任何 trade-off
- 任何 follow-up
Screenshots / Demos
(如适用)
### 2.3 集成场景
| 阶段 | 调用频率 |
|---|---|
| **Subagent-driven Development** | **每完成一个任务后**审查,防止问题累积 |
| **Executing Plans** | **每个批次(3 个任务)**完成后审查 |
| **Ad-hoc Development** | 合并前或卡住时审查 |
### 2.4 模板示例
```markdown
## What Was Implemented
实现用户邮箱密码登录功能,后端 FastAPI + JWT,前端 React + httpOnly cookie。
## Plan or Requirements
- Plan: docs/plans/2026-06-15-user-auth.md
- Spec: openspec/changes/add-user-auth/specs/auth.md
## Base SHA
a1b2c3d Task 1: add users table
## Head SHA
e4f5g6h Task 15: docs update
## Description
- 选 bcrypt 而非 argon2:Python 生态更成熟,文档多
- 用 httpOnly cookie 而非 localStorage:防 XSS
- JWT 30 分钟过期:平衡安全 + UX
## Testing
- [x] 15 个单元测试
- [x] 3 个集成测试
- [x] 手动测试:register + login + protected page
- [x] 覆盖率 87%
## Risks
- 30 分钟 JWT 过期可能让用户频繁重登——>考虑用 refresh token(下次迭代)
- 没用 rate limiting——>已知问题,不在本 PR 范围
## Screenshots
[登录页截图]
[Dashboard 截图]
三、receiving-code-review 完整工作流
3.1 5 步响应模式
1. **READ (完整阅读)**
- 不要立刻反应
- 通读所有反馈
2. **UNDERSTAND (理解重述)**
- 用自己的话复述
- 或向 review 者提问
3. **VERIFY (对照现实)**
- 对照代码库实际状况
- 不凭印象
4. **EVALUATE (技术评估)**
- 对 THIS codebase 技术上是否合理?
- 是否有更好方案?
5. **RESPOND (回应)**
- 技术性致谢
- 或要求澄清
3.2 场景处理
来自人类伙伴(Trusted)
# ✅ 直接实施(理解后)
"I understand. Implementing now."
# ✅ 仍要问(范围不清时)
"I see your point about X. Should this also apply to Y, or just X?"
来自外部 reviewer
# ✅ 实施前先验证技术正确性
"Before implementing, let me verify this approach works with our setup."
# ✅ 不合理时反对
"I checked the benchmark. This micro-optimization actually hurts readability
without measurable perf gain. Can we discuss?"
# ✅ 没法验证时
"I don't have access to test this scenario. Can you share the reproduction?"
3.3 反模式:表演性同意
# ❌ WRONG (Performative agreement)
"Great point! You're absolutely right! Will fix immediately!"
# 实际:reviewer 是错的,你也跟着改
# ✅ RIGHT (Technical acknowledgment)
"I see your concern about X. However, in this codebase Y is the case.
Can we discuss whether Z would be a better approach?"
四、与其他 Skill 配合
| Skill | 配合方式 |
|---|---|
| subagent-driven-development | 每 task 后调用 requesting |
| executing-plans | 每 batch 后调用 requesting |
| writing-plans | 实施前 plan 要有 review 标准 |
| verification-before-completion | review 前先自验 |
| finishing-a-development-branch | review 通过才能合并 |
完整工作流:
[1] 实施代码 (writing-plans → executing-plans)
↓
[2] self-verification
↓
[3] requesting-code-review(请求审查)
↓
[4] 人类 reviewer review
↓
[5] receiving-code-review(接收反馈)
↓
[6] 5 步响应:Read → Understand → Verify → Evaluate → Respond
↓
[7] 修改代码
↓
[8] finishing-a-development-branch
五、5 大反模式
5.1 扔代码不写 description
# ❌ BAD
Title: update
Description: (空)
# ✅ GOOD
Title: feat(auth): implement user email login
Description: 完整模板 (见上)
5.2 防御性反应
# ❌ WRONG
Reviewer: "这个函数太长"
作者: "我赶时间"
# ✅ GOOD
Reviewer: "这个函数太长"
作者: "我看了,确实 80 行。可以拆成 validate/process/persist 三个。你看这样 OK 吗?"
5.3 沉默修改不解释
# ❌ WRONG
Reviewer 提 5 个 comment
作者静默改了 3 个,2 个没改,1 个改了一半
# ✅ GOOD
作者回应每个 comment:
- #1 已改 (commit xxx)
- #2 已改 (commit xxx)
- #3 不改,原因: [技术理由]
- #4 改为部分改 [解释]
- #5 后续 issue 跟踪
5.4 review 沦为 nit-pick
# ❌ BAD reviewer
"这个变量名用 user 不好,改成 currentUser 吧"
(无业务影响,纯粹风格)
# ✅ GOOD reviewer
"建议在 user 后加注释,新人看不懂 [reason]"
(有实际价值)
5.5 review 不及时
BAD:PR 提交 3 周才 review GOOD:SLA 24 小时响应,3 天内出 review
六、实战案例:接收 review 反馈
案例 1:reviewer 提了错误建议
Reviewer: "用 Redis 缓存这个用户对象"
你的 5 步:
1. READ: 看完整反馈
2. UNDERSTAND: "建议缓存用户对象,理由是减少 DB 查询"
3. VERIFY: 查监控,发现这个查询 QPS 只有 2,平均耗时 5ms
4. EVALUATE: 缓存价值低,反而增加复杂度
5. RESPOND:
"看了监控,这个查询 QPS=2,平均 5ms。加 Redis 缓存价值有限
(节省 5ms,每秒省 2 次查询 = 10ms/秒),但增加运维成本和 stale 数据风险。
建议保持现状,等 QPS > 100 再考虑。要不要我加个 issue 跟踪?"
案例 2:reviewer 提了模糊建议
Reviewer: "这个设计感觉不够好"
你的 5 步:
1. READ
2. UNDERSTAND: "建议改进设计,但没说具体哪里"
3. VERIFY: 看了代码,觉得当前设计已经 OK
4. EVALUATE: 不确定 reviewer 的具体关注点
5. RESPOND:
"能具体说说哪里不够好吗?比如:
- 扩展性?目前接口已支持 3 个 driver
- 可读性?函数已控制在 30 行内
- 性能?已 benchmark 过 P99 < 50ms
还是其他方面?"
案例 3:reviewer 提了 style 建议
Reviewer: "变量名 user_id 用 snake_case,违反我们的 camelCase 规范"
你的 5 步:
1. READ
2. UNDERSTAND: "建议改 camelCase"
3. VERIFY: 查 .editorconfig / .eslintrc,确实规定 camelCase
4. EVALUATE: 工具会自动报错,必须改
5. RESPOND: "确实是疏漏,马上改。已加 lint rule 防止再发生。"
案例 4:reviewer 提了架构重构
Reviewer: "建议把 user_service 拆成 3 个微服务"
你的 5 步:
1. READ
2. UNDERSTAND: "建议微服务化"
3. VERIFY: 看 QPS = 50,DAU = 1000,系统负载 5%
4. EVALUATE: 微服务化成本 >> 当前收益(团队小、流量低、复杂度激增)
5. RESPOND:
"QPS=50,系统负载 5%,微服务化收益不抵成本(运维 / 部署 / 监控复杂度激增)。
建议等 DAU > 10 万或团队 > 10 人再考虑。开了 issue #123 跟踪。"
七、5 条反合理化
| 借口 | 反驳 |
|---|---|
| ”代码自己 review 不需要” | 自己的盲区自己看不到 |
| ”review 太慢” | 5 分钟 review > 5 小时线上调试 |
| ”reviewer 不懂我的代码” | 写更好 description 解决 |
| ”小改动不用 review” | 60% 事故来自”小改动" |
| "review 是找茬” | review 是协作,不是审判 |
八、5 条实战技巧
请求方
- PR description 写满模板:reviewer 5 分钟可读懂
- diff 控制在 400 行内:超出难 review
- 截图 / 录屏:UI 改动必附
- 链接到 plan / spec:reviewer 知道为什么做
- CI 跑过再求 review:不要让 reviewer 帮你 debug
接收方
- 24 小时内响应所有 comment
- 每个 comment 单独回应(commit 链接或解释)
- 不同意时,带数据反对
- 修改后 mention reviewer:
@reviewer done - 复杂讨论拉出 PR:线上讨论难追溯
九、Q&A
Q: 必须用 Claude 吗? A: Skill 是给 Agent 的;人类也适用其中原则。
Q: 多久 review 一次? A: 每 task / 每 batch / 合并前。
Q: reviewer 必须是高级工程师? A: 不,任何团队成员都可。重点是”多双眼睛”。
Q: 多久回复 review 反馈? A: 24 小时内响应(SLA)。
Q: 必须所有 comment 都修吗? A: 不用。技术合理的改;不合理的反对。
Q: 跟 GitHub PR review 区别? A: GitHub 是工具;此 Skill 是”如何高效用工具”。
Q: 中文支持? A: 完美。逻辑与语言无关。
Q: 团队怎么落地? A: 在 CLAUDE.md / 团队规范中明确”所有 PR 必走此流程”。
十、Prompt 模板
模板 1:生成 PR description
我刚完成 user-auth 计划(15 个 task)。
请按 requesting-code-review 模板生成 PR description:
- What Was Implemented
- Plan/Requirements 链接
- Base SHA / Head SHA
- Description(为什么这样做)
- Testing(覆盖情况)
- Risks(已知问题)
- Screenshots(如 UI)
模板 2:接收 review 反馈
我收到以下 review feedback:
[粘贴 comment]
请按 receiving-code-review 5 步法响应:
1. Read 完整读
2. Understand 复述
3. Verify 对照代码
4. Evaluate 技术评估
5. Respond 技术回应
模板 3:self-review
请按 requesting-code-review 模板审查我自己的 diff:
[粘贴 diff]
输出:
- 哪些 issue 别人会提
- 哪些边界没考虑
- 哪些测试缺失
- 哪些文档要补
十一、真实战绩
| 指标 | 用前 | 用后 | 提升 |
|---|---|---|---|
| PR 一次通过率 | 30% | 70% | +133% |
| 线上事故(可避免) | 20/月 | 5/月 | -75% |
| Review 时间 | 1h/PR | 20min/PR | -67% |
| 团队信任 | 中 | 高 | ∞ |
十二、与其他工具对比
| 工具 | 用途 | 关系 |
|---|---|---|
| GitHub PR | review 平台 | 互补——工具执行 |
| GitLab MR | review 平台 | 互补——工具执行 |
| Phabricator | review 平台 | 互补——工具执行 |
| Sourcery | AI 自动 review | 互补——自动 review |
| SonarQube | 静态分析 review | 互补——机器 review |
| Coderabbit | AI PR reviewer | 互补——AI review |
requesting/receiving-code-review 是这些工具的正确使用方法**——工具替代不了”写好 description”和”技术性回应”。**
十三、安装
# Claude Code
/plugin marketplace add obra/superpowers
/plugin install superpowers@claude-plugins-official
# 通用
npx skills add obra/superpowers --skill requesting-code-review
npx skills add obra/superpowers --skill receiving-code-review
十四、总结
核心价值:
- 标准化 PR description
- 5 步接收反馈法
- 团队协作质量门禁
- 反防御性反应 / 表演性同意
适用人群:
- 所有团队开发者
- Tech Lead
- 跨团队协作
- 开源贡献者
投入产出比:⭐⭐⭐⭐⭐(5/5)—— 团队必装。
何时不要用:
- 1 人独立项目
- 纯聊天
- 临时 hack
参考链接:
快速安装
git clone https://github.com/addyosmani/agent-skills.git
cd agent-skills
ls skills/code-review-and-quality/