ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

claude-howto 中的 PR Review 插件:一条命令跑完安全、测试与性能审查的完整 PR 审查工作流

2026/9/9 23:46:32 拓冰建站 浏览量
claude-howto 中的 PR Review 插件:一条命令跑完安全、测试与性能审查的完整 PR 审查工作流 claude-howto 中的 PR Review 插件一条命令跑完安全、测试与性能审查的完整 PR 审查工作流【免费下载链接】claude-howtoA visual, example-driven guide to Claude Code — from basic concepts to advanced agents, with copy-paste templates that bring immediate value.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-howto本文基于 claude-howto 仓库的日文教程 ja/07-plugins/pr-review/README.md 展开。你将了解如何安装和配置 Claude Code 的pr-review插件掌握/review-pr、/check-security、/check-tests三个斜杠命令的用法并深入三个子代理security-reviewer、test-checker、performance-analyzer的职责边界、GitHub MCP 服务器配置与 pre-review 前置校验钩子的源码实现最终获得一套可复制、可落地的自动化 PR 审查方案。一、插件定位与核心能力pr-review是 claude-howto 仓库中给出的一个 Claude Code 插件模板目标是把“完整 PR 审查工作流”沉淀为一条命令覆盖安全、测试与文档检查。原文明确列出它包含的五项能力安全分析セキュリティ解析测试覆盖率检查テストカバレッジのチェック文档验证ドキュメントの検証代码质量评估コード品質の評価性能影响分析パフォーマンス影響の解析这套设计的核心思路是“一条主命令 多个专职子代理”主命令负责编排与汇总各子代理在受限工具集内完成单一维度的审查最后由主对话合成综合报告。这种分工既让每一步的提示词更聚焦也便于单独调用某一维度做复查。二、安装与前置条件2.1 安装命令在 Claude Code 中执行插件安装命令即可/plugin install pr-review2.2 必要前提原文“必要要件”一节列出三项前置条件这也是理解该插件边界的关键前提说明Claude Code 2.1插件机制插件市场、子代理、MCP 联动依赖较新的 Claude Code 版本日文版 README 中写作“1.0 以上”英文源文档为 2.1以英文源文档为准GitHub 访问插件通过 GitHub MCP 拉取 PR 数据需要有效的仓库访问权限Git 仓库pre-review 钩子会先校验当前目录是否为 Git 仓库2.3 GitHub Token 配置插件从环境变量读取 GitHub 凭证export GITHUB_TOKENyour_github_token该变量随后被注入到 MCP 服务器的启动环境中见下文 MCP 配置一节是整个 PR 数据链路中唯一需要手工配置的部分。三、插件构成命令、子代理、MCP 与钩子3.1 三个斜杠命令插件提供三个入口命令各自对应一个审查粒度命令用途对应文件/review-pr全面 PR 审查安全 测试 文档 质量 性能ja/07-plugins/pr-review/commands/review-pr.md/check-security仅做安全维度审查ja/07-plugins/pr-review/commands/check-security.md/check-tests仅做测试覆盖率分析ja/07-plugins/pr-review/commands/check-tests.md每个命令文件使用 YAML frontmatter 声明name与description正文则给出审查清单。以/review-pr为例它会启动包含以下五个环节的完整审查安全分析测试覆盖率验证文档更新检查代码质量检查性能影响评估/check-security的安全审查清单具体化为五个检查点认证/授权检查、数据泄露风险、注入类漏洞、加密处理弱点、日志中的敏感信息/check-tests的测试审查清单则是覆盖率比例、未被测试覆盖的代码路径、测试质量评审、缺失用例建议、边界场景覆盖验证。3.2 三个子代理及其工具白名单插件的审查能力由三个子代理承担每个代理都通过 frontmatter 的tools字段声明了最小化的工具白名单——三者均只开放Read、Grep、Bash这类只读/检索型工具从结构上看这保证了子代理“只分析、不改代码”子代理职责工具文件security-reviewer安全漏洞检测认证/授权问题、数据泄露、注入攻击、配置安全性Read, Grep, Bashja/07-plugins/pr-review/agents/security-reviewer.mdtest-checker测试覆盖率与质量分析覆盖率比例、缺失用例、测试质量评估、边界场景识别Read, Bash, Grepja/07-plugins/pr-review/agents/test-checker.mdperformance-analyzer变更的性能影响评估算法复杂度、数据库查询效率、内存占用、缓存利用空间Read, Grep, Bashja/07-plugins/pr-review/agents/performance-analyzer.md值得注意的是performance-analyzer的评估维度它关注的是“变更引入的性能影响”而非绝对性能基准包括算法计算量、数据库查询效率、内存使用和缓存利用余地——这正对应 PR 场景diff 审查而不是全量压测。3.3 GitHub MCP 服务器插件通过 MCP 获取 PR 数据。日文版插件目录未直接包含 MCP 配置文件英文源目录中给出了完整配置 07-plugins/pr-review/mcp/github-config.json{ mcpServers: { github: { command: npx, args: [modelcontextprotocol/server-github], env: { GITHUB_TOKEN: ${GITHUB_TOKEN} } } } }从这份配置可以看出三个要点使用官方modelcontextprotocol/server-github服务器通过npx按需启动GITHUB_TOKEN以${GITHUB_TOKEN}占位符注入因此必须先在 shell 环境中导出该变量见 2.3 节否则 MCP 服务器启动后无法认证只配置了github一个服务器职责单一为审查流程提供 PR 元数据与 diff 数据。3.4 pre-review 前置校验钩子插件还附带一个pre-review.js钩子在审查开始前执行前置校验。该文件位于英文源目录 07-plugins/pr-review/hooks/pre-review.js其逻辑非常精简值得逐段理解校验 Git 仓库执行git rev-parse --git-dir若失败非 Git 仓库则打印❌ Not a git repository并以退出码 1 终止检测未提交变更执行git status --porcelain若输出非空则发出⚠️ Warning: Uncommitted changes detected警告——注意这只是警告而非阻断审查仍会继续通过校验全部通过后打印✅ Pre-review checks passed。从源码结构看这个钩子体现了一个实用原则把“环境是否满足审查前提”这类机械检查交给确定性脚本而不是依赖模型判断。失败路径非 Git 仓库、无法读取 git 状态都会以非零退出码终止避免在无效环境中启动一次昂贵的多代理审查。四、日常用法三个命令的使用方式极为直接在 Claude Code 会话中直接输入即可/review-pr # 全面 PR 审查默认入口 /check-security # 只做安全审查 /check-tests # 只做测试覆盖率检查选择策略可以很简单日常例行审查用/review-pr一次覆盖全部维度当 CI 安全扫描报警而只想复核安全项时用/check-security当测试覆盖率门槛不达标、需要定位缺口时用/check-tests。五、完整工作流拆解原文“ワークフロー例”一节给出了/review-pr端到端执行的七个步骤这里结合插件结构逐条对应到具体组件User: /review-pr Claude: 1. Runs pre-review hook (validates git repo) 2. Fetches PR data via GitHub MCP 3. Delegates security review to security-reviewer subagent 4. Delegates testing to test-checker subagent 5. Delegates performance to performance-analyzer subagent 6. Synthesizes all findings 7. Provides comprehensive review report Result: ✅ Security: No critical issues found ⚠️ Testing: Coverage is 65%, recommend 80% ✅ Performance: No significant impact Recommendations: Add tests for edge cases各步骤与组件的对应关系步骤 1对应 pre-review.js校验 Git 仓库并检查未提交变更步骤 2对应 github-config.json 声明的 GitHub MCP 服务器拉取 PR 数据步骤 3~5分别委派给security-reviewer、test-checker、performance-analyzer三个子代理并行/顺序执行各自维度步骤 6~7由主对话汇总各代理发现输出按“安全 / 测试 / 性能 / 建议”分区的综合报告。示例结果展示了报告的典型形态每个维度给出结论图标通过/警告并在“建议”区给出可执行项如“补充边界场景测试”。这也解释了为什么 README 中把“Recommendations”作为报告的一等公民——审查的产出不是“通过/不通过”的单一判定而是一份按优先级组织的行动清单。六、小结pr-review插件模板展示了 Claude Code 插件的完整形态斜杠命令定义入口子代理以最小工具白名单承担单维度审查MCP 服务器负责外部数据GitHub PR 信息钩子脚本负责确定性的前置校验。整个链路中唯一的手工配置是GITHUB_TOKEN环境变量。对于希望把代码审查标准化、并希望模型“只读分析、汇总建议而不直接改代码”的团队这套“主命令编排 专职子代理 确定性钩子”的结构是一个可以直接参考的起点各组件的完整模板见 ja/07-plugins/pr-review/ 与 07-plugins/pr-review/ 目录。【免费下载链接】claude-howtoA visual, example-driven guide to Claude Code — from basic concepts to advanced agents, with copy-paste templates that bring immediate value.项目地址: https://gitcode.com/GitHub_Trending/cl/claude-howto创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考