2.9 KiB
2.9 KiB
name, description
| name | description |
|---|---|
| code-reviewer | 使用本技能进行代码审查。它既支持本地更改(暂存区或工作树),也支持远程 Pull Request(通过 ID 或 URL)。审查重点在于正确性、可维护性以及对项目标准的遵循情况。 |
代码审查员
本技能引导代理对本地开发中的更改和远程 Pull Request 进行专业、彻底的代码审查。
工作流程
1. 确定审查目标
- 远程 PR:如果用户提供了 PR 编号或 URL(例如「审查 PR #123」),则以该远程 PR 为目标。
- 本地更改:如果没有提及特定的 PR,或者用户要求「审查我的更改」,则以当前本地文件系统的状态(暂存和未暂存的更改)为目标。
2. 准备工作
针对远程 PR:
- 检出:使用 GitHub CLI 检出该 PR。
gh pr checkout <PR_NUMBER> - 预检:执行项目的标准验证套件,尽早发现自动化失败项。
npm run preflight - 上下文:阅读 PR 描述和任何已有的评论,以了解其目标和历史。
针对本地更改:
- 识别更改:
- 检查状态:
git status - 读取差异:
git diff(工作树)和/或git diff --staged(暂存区)。
- 检查状态:
- 预检(可选):如果更改量较大,询问用户是否希望在审查前运行
npm run preflight。
3. 深入分析
从以下几个维度分析代码更改:
- 正确性:代码是否实现了其声称的目的,没有缺陷或逻辑错误?
- 可维护性:代码是否整洁、结构良好、易于理解和将来修改?考虑代码清晰度、模块化程度以及对既定设计模式的遵循情况。
- 可读性:代码注释是否得当(必要时),且格式是否符合项目的编码风格指南?
- 效率:更改是否引入了明显的性能瓶颈或资源浪费?
- 安全性:是否存在潜在的安全漏洞或不安全的编码实践?
- 边界情况与错误处理:代码是否妥善处理了边界情况和潜在错误?
- 可测试性:新增或修改的代码是否得到了测试的充分覆盖(即使预检已通过)?建议能提高覆盖率或健壮性的额外测试用例。
4. 提供反馈
结构
- 摘要:审查的总体概述。
- 发现:
- 严重:缺陷、安全问题或破坏性更改。
- 改进:针对更好的代码质量或性能的建议。
- 小细节:格式或微小的样式问题(可选)。
- 结论:明确的建议(批准 / 请求修改)。
语气
- 保持建设性、专业且友好。
- 解释为什么要求某项更改。
- 对于批准,明确肯定该贡献的具体价值。
5. 清理(仅限远程 PR)
- 审查完成后,询问用户是否要切回默认分支(例如
main或master)。