关于 review-codebase
用于检查指定文件、目录或仓库当前结构的代码审查技能,而非只审查差异。它覆盖五类结构维度,并将安全、性能、架构及语言专项分析排除在范围之外。
主要功能
- 01按路径审查当前代码状态
- 02覆盖五类结构维度
- 03要求提供文件及行号引用
- 04按层处理大型审查范围
- 05将范围外问题转交其他技能
适用场景
- 01检查新模块的边界与依赖
- 02审计旧路径的可维护性问题
- 03无需差异即可审查指定文件或目录
- 04作为 orchestrate-code-review 的范围步骤
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ nesnilnehc/ ai-cortex --skill review-codebase安装后在 Claude Code 中输入/review-codebase确认已加载。
附带文件README.md
详细介绍
技能:审查代码库
目的
对指定路径(单个文件 / 一个目录 / 一个代码库)的当前状态进行仅限范围的原子审查。与 review-diff(仅审查 Git 变更)配合使用时,这是 orchestrate-code-review 的两个范围步骤候选之一——此技能审查快照,review-diff 审查变更。
此处不处理:安全 / 性能 / 架构等认知维度(由认知步骤原子技能 review-security / review-performance / review-architecture 负责),以及语言或框架特定分析(由语言 / 框架步骤负责)。
核心目标
主要目标:生成仅限范围的问题清单,指出指定路径中的结构性问题(边界、模式、依赖、技术债、接口)。
成功标准(必须全部满足):
- ✅ 已确定范围:使用用户指定的路径或目录;如果未指定更窄的范围,则使用代码库根目录
- ✅ 覆盖 5 个维度:针对模块边界、模式一致性、跨模块依赖、技术债和接口稳定性给出问题
- ✅ 位置精准:每个问题都包含
file:line引用 - ✅ 格式符合要求:每个问题都符合 Findings Spec §5.1;类别为
scope。 - ✅ 妥善处理大范围审查:对于代码库级别的范围,按层级(模块 / 目录)给出问题,或与用户商定优先审查的子集
- ✅ 不越界:不输出安全 / 性能 / 架构 / 语言 / 框架方面的认知问题(应标记这些问题,并指向对应的原子技能)
范围边界
此技能负责:
- 对指定路径的当前状态进行结构性审查
- 覆盖 5 个维度的问题:模块边界、模式一致性、跨模块依赖与耦合、技术债与可维护性、接口稳定性
此技能不负责:
- 仅审查 Git 变更(使用
review-diff) - 完整的编排式审查(使用
orchestrate-code-review) - 语言 / 框架特定的约定(使用
review-<lang>/review-<framework>) - 安全 / 性能 / 架构等认知维度(使用
review-security/review-performance/review-architecture)
交接点:问题输出后,将其交给 orchestrate-code-review 的范围步骤进行汇总,或由用户决定后续事项(重构 / 深入审查)。
使用场景
- 新模块审查:指定
src/auth/,检查当前结构和依赖 - 遗留路径审计:指定一个路径,检查技术债和边界问题
- 抽样审查:审查同事指定的文件或目录,无需提供 diff
- 作为 orchestrate-code-review 的范围步骤:使用此技能或
review-diff,不能同时使用二者
行为
范围确定
- 输入决定范围:用户指定单个文件 / 一个目录 / 代码库根目录 / 多个路径
- 不依赖 diff:分析当前文件内容;用户提供的 diff 仅作上下文参考,并非必需
默认范围
| 项目 | 默认值 | 用户如何更改默认值 |
|---|---|---|
| 路径 | 代码库根目录 | 选择:[代码库根目录] / [当前文件所在目录] / [列出顶层目录并选择] |
| 大范围处理方式 | 按层级(模块 / 目录)给出问题 | 选择优先审查的子集(从顶层目录列表中选择) |
使用用户指定的路径,无需再次确认。对于代码库范围的审查,除非用户指定子集,否则按层级开展;只有在无法确定所请求的范围时才询问。
5 个维度
针对范围内的代码(用户选择的层级 / 子集),从以下维度给出发现:
- 模块边界:模块 / 服务边界是否清晰、职责是否单一、依赖方向是否合理
- 模式一致性:模式的使用是否恰当,是否符合代码库现有风格
- 跨模块依赖与耦合:依赖关系、循环依赖、耦合程度
- 技术债务与可维护性:重复、复杂度、可测试性、文档和注释的当前状态、没有明显调用方的代码,以及仍然存在的弃用标记
- 接口稳定性:模块对外接口是否清晰、稳定
每条发现都必须附带 file:line 引用。
标记范围外的发现
如果分析发现具体的安全 / 性能 / 架构 / 语言 / 框架问题:标记该问题并指出对应的原子技能,不要展开分析。例如:
检测到潜在 SQL 注入风险(用户输入未经转义便直接拼接);建议运行
review-security
有两种技术债务观察值得特别指出,因为本 Skill 通常最先遇到这些问题,而仅凭阅读代码无法定论。没有明显调用方的符号可能通过反射访问,或在配置中以名称引用,因此需要收集完整业务周期的运行时信号后再做判断;弃用标记则应由负责人决定,并在其旁边记录移除时间点和替代方案。报告观察结果及其位置,并将决策交由对应技能处理:
jobs/settlement.py:18定义的类在当前范围内没有调用点可达,但config/jobs.yaml中以字符串形式指定了处理程序;建议运行review-architecture,该技能会依据 ARC-010 和其要求的证据作出判断
api/v1/search.py:7带有弃用标记,但未记录负责人或移除时间点;建议运行review-architecture,该技能会依据 ARC-011 作出判断
输入与输出
输入
- 路径:一个或多个文件 / 目录路径
- 可选:关注点提示(例如“重点关注模块边界”)
输出
- 发现列表:符合 发现规范 §5.1;类别为
scope。 - 大范围摘要:按层组织时,给出每层的发现数量和严重程度分布
限制
硬性边界
- 不要假设“仅检查差异”——默认情况下,此技能会审查给定范围的完整当前状态
- 不输出认知维度的发现(安全 / 性能 / 架构)
- 不输出语言 / 框架专属的发现
- 不输出缺少
file:line引用的发现 - 不使用含糊措辞(“可能有问题”既没有类型也没有方向 → 删除)
技能边界
本技能不处理(由其他原子技能负责):
- 审查 git 更改 →
review-diff - 全维度编排 →
orchestrate-code-review - 语言规范 →
review-<lang> - 框架规范 →
review-<framework> - 安全 / 性能 / 架构 →
review-security/review-performance/review-architecture
自查
- 已根据请求或文档中的默认值确定审查范围
- 已按层级输出大范围结果,或已确定优先子集
- 已覆盖全部 5 个维度(模块边界 / 模式 / 依赖 / 技术债务 / 接口)
- 每条发现都附带 file:line 引用
- 未输出认知 / 语言 / 框架维度的发现(仅标记这些问题,并指出对应的原子技能)
- 输出符合 发现规范 §5.1。
示例
示例 1:单个目录
- 输入:
src/auth/ - 输出:按文件分组的 5 个维度的发现结果,每项都带有
auth.go:42格式的引用;仅标记弱加密算法,并指向review-security
示例 2:单个文件
- 输入:
pkg/validator/validator.go - 输出:模块职责/接口清晰度/测试覆盖率/对上游模块的依赖等方面的发现结果
示例 3:整个仓库(大型范围)
- 输入:仓库根目录
- 行为:首先按层级(顶层目录)输出发现结果摘要表,然后让用户选择优先子集以便深入分析
- 输出:层级摘要,以及优先子集的详细发现结果