Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/tomevault-io/skills-registry --skill code-reviewer명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
| name | code-reviewer |
| description | > Use when this capability is needed. |
将代码审查从"守门"转变为"知识共享"——通过建设性反馈、系统分析和协作改进来提升代码质量。
本 Skill 会根据代码变更的语言/框架,按需查阅对应的语言专项审查指南。所有指南位于当前 Skill 同级 references/ 目录下。
| 语言/框架 | Reference 文件 | 何时查阅 |
|---|---|---|
| Rust | references/rust.md | diff 含 .rs 文件 |
| Go | references/go.md | diff 含 .go 文件 |
| Python | references/python.md | diff 含 .py 文件 |
| TypeScript | references/typescript.md | diff 含 .ts/.tsx |
| JavaScript | references/typescript.md | diff 含 .js/.jsx(TS 规则也适用) |
| Java | references/java.md | diff 含 .java 文件 |
| NestJS | references/nestjs.md | 项目含 @nestjs/ 依赖 |
| React | references/react.md | diff 含 .tsx/.jsx 且含 React import |
| Vue | references/vue.md | diff 含 .vue 文件 |
| Svelte | references/svelte.md | diff 含 .svelte 文件 |
跨语言通用指南(始终参考):
| 主题 | Reference 文件 |
|---|---|
| 通用代码质量 | references/code-quality-universal.md |
| 常见 Bug 清单 | references/common-bugs-checklist.md |
| 安全审查 | references/security-review-guide.md |
| 审查最佳实践 | references/code-review-best-practices.md |
查阅策略:审查阶段根据变更文件类型,先并行加载对应的语言专项指南和通用指南, 再逐文件对照指南中的 Checklist 逐项检查。
代码审查的目标:
不是代码审查的目标:
好的反馈是:
不好的反馈:"这样写是错的。"
好的反馈:"当多个用户并发访问时这里存在竞态条件,考虑用互斥锁保护这段临界区。"
不好的反馈:"为什么不用 X 模式?"
好的反馈:"考虑过用 Repository 模式吗?能让这段逻辑更容易测试。参考:[链接]"
不好的反馈:"这个变量名改一下。"
好的反馈:"[nit] 建议用 `userCount` 代替 `uc` 以提高可读性。不改也不阻塞合入。"
应该审查的:
不应该手动审查的:
在深入代码之前,理解以下内容:
当作为 review-workflow 子 Skill 调用时:
[CHANGE_PURPOSE] 和 [PROPOSAL_INFO] 已由编排层收集,直接使用即可[CHANGE_PURPOSE] → 记录为审查锚点,进入 Phase 2[CHANGE_PURPOSE] 但用户刚提供过背景 → 向用户确认一次当独立使用时(如审查远程 PR):
对每个文件对照以下维度检查:
关键:根据变更文件的语言/框架,加载对应的 Reference 指南(见顶部表格), 逐项对照指南中的 Checklist 检查。
不要直接陈述问题,用提问引导思考:
不好的:"列表为空时会崩溃。"
好的:"如果 `items` 是空数组会发生什么?"
不好的:"这里需要错误处理。"
好的:"如果 API 调用失败,这里应该怎么处理?"
使用协作式语言:
不好的:"你必须改成 async/await"
好的:"建议:async/await 可能让这段代码更易读。你觉得呢?"
不好的:"把这个提取成函数"
好的:"这段逻辑在 3 个地方出现了。考虑提取成函数怎么样?"
使用标签指示优先级:
| 标签 | 含义 | 处理 |
|---|---|---|
🔴 [blocking] | 必须在合入前修复 | 阻塞合入 |
🟡 [important] | 应该修复,如有异议可讨论 | 建议修复 |
🟢 [nit] | 锦上添花,不阻塞 | 可选 |
💡 [suggestion] | 替代方案供参考 | 可选 |
📚 [learning] | 教育性评论,无需处理 | 无需操作 |
🎉 [praise] | 做得好的地方 | 无需操作 |
豁免条件:同时满足以下所有条件时,即使超过 80 行也不警告:
i、j、k 除外)。TODO 或 FIXME 注释必须标记为阻塞项,要求附上修复计划或关联 issue。当作为 review-workflow 子 Skill 调用时,输出以下结构化报告作为 [REVIEW_REPORT]:
### 审查报告
**变更背景确认**
- 目的:<复述 [CHANGE_PURPOSE],确认理解正确>
- 关联提案:<[PROPOSAL_INFO] 或"无">
**意图层问题(逻辑/需求偏差)**
- [#I01] 问题描述 | 位置:<文件名>:<行号> | 严重程度:🔴 blocking / 🟡 important
- [#I02] ...
**规范层问题**
- [#C01] 问题描述 | 位置:<文件名>:<行号> | 违反规则:<具体规则> | 严重程度:🟡 important / 🟢 nit
- [#C02] ...
**改进建议**
- [#S01] 建议描述 | 位置:<文件名>:<行号> | 类型:💡 suggestion
- [#S02] ...
**函数长度提醒**
- <函数名>:XX 行 | 状态:✅ 正常 / 👀 关注 / ⚠️ 警告 / 🔴 阻塞
**安全审查要点**(对照 security-review-guide.md)
- <涉及安全的检查项及结果>
**测试补充建议**
- 针对新增逻辑,列出建议补充的单元测试(至少 1 个正向 + 1 个边界)
**习惯符合度评分:X / 5**
(5 = 完全符合所有规则且无改进空间;1 = 存在多个严重问题)
**决策**
- ✅ 批准 / 💬 评论(小建议)/ 🔄 请求修改(必须处理)
**下一步操作**
- 无严重问题 → 自动进入调试修复阶段
- 有严重问题 → 等待用户决策
[blocking] 问题(意图层或规范层),必须暂停,询问:
"发现以上阻塞问题,是否忽略并继续后续步骤?"
[REVIEW_REPORT]。Source: Abeautifulsnow/skills — distributed by TomeVault.
SOC 직업 분류 기준