mcpField
R
review-codebase

review-codebase

github.com/nesnilnehc测试与质量8133 次安装2 天前更新
代码仓库

关于 review-codebase

用于检查指定文件、目录或仓库当前结构的代码审查技能,而非只审查差异。它覆盖五类结构维度,并将安全、性能、架构及语言专项分析排除在范围之外。

主要功能

  1. 01按路径审查当前代码状态
  2. 02覆盖五类结构维度
  3. 03要求提供文件及行号引用
  4. 04按层处理大型审查范围
  5. 05将范围外问题转交其他技能

适用场景

  1. 01检查新模块的边界与依赖
  2. 02审计旧路径的可维护性问题
  3. 03无需差异即可审查指定文件或目录
  4. 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 负责),以及语言或框架特定分析(由语言 / 框架步骤负责)。


核心目标

主要目标:生成仅限范围的问题清单,指出指定路径中的结构性问题(边界、模式、依赖、技术债、接口)。

成功标准(必须全部满足):

  1. ✅ 已确定范围:使用用户指定的路径或目录;如果未指定更窄的范围,则使用代码库根目录
  2. ✅ 覆盖 5 个维度:针对模块边界、模式一致性、跨模块依赖、技术债和接口稳定性给出问题
  3. ✅ 位置精准:每个问题都包含 file:line 引用
  4. ✅ 格式符合要求:每个问题都符合 Findings Spec §5.1;类别为 scope。
  5. ✅ 妥善处理大范围审查:对于代码库级别的范围,按层级(模块 / 目录)给出问题,或与用户商定优先审查的子集
  6. ✅ 不越界:不输出安全 / 性能 / 架构 / 语言 / 框架方面的认知问题(应标记这些问题,并指向对应的原子技能)

范围边界

此技能负责:

  • 对指定路径的当前状态进行结构性审查
  • 覆盖 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 个维度

针对范围内的代码(用户选择的层级 / 子集),从以下维度给出发现:

  1. 模块边界:模块 / 服务边界是否清晰、职责是否单一、依赖方向是否合理
  2. 模式一致性:模式的使用是否恰当,是否符合代码库现有风格
  3. 跨模块依赖与耦合:依赖关系、循环依赖、耦合程度
  4. 技术债务与可维护性:重复、复杂度、可测试性、文档和注释的当前状态、没有明显调用方的代码,以及仍然存在的弃用标记
  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:整个仓库(大型范围)
  • 输入:仓库根目录
  • 行为:首先按层级(顶层目录)输出发现结果摘要表,然后让用户选择优先子集以便深入分析
  • 输出:层级摘要,以及优先子集的详细发现结果

评论

支持 Markdown