mcpField
O
overnight-repo-auditor

overnight-repo-auditor

github.com/onewave-ai测试与质量393238 次安装1 周前更新
代码仓库

关于 overnight-repo-auditor

overnight-repo-auditor 是面向 Anthropic's Managed Agents runtime 的自主代码库审计技能。它协调专项审计,并将安全、性能、无障碍、依赖项和代码质量问题汇总为带严重程度评级的报告。

主要功能

  1. 01代码库侦察
  2. 02并行专项审计
  3. 03安全与性能审查
  4. 04无障碍与依赖项检查
  5. 05按严重程度汇总报告
  6. 06只读处理源代码

适用场景

  1. 01执行无人值守的夜间审计
  2. 02跨多个质量领域检查代码库
  3. 03汇总并行审计 Agent 的发现

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/onewave-ai/claude-skills --skill overnight-repo-auditor

安装后在 Claude Code 中输入/overnight-repo-auditor确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
agent-accessibility.md
agent-code-quality.md
agent-dependency.md
agent-performance.md
agent-security.md
compilation-and-templates.md
reconnaissance.md
shared-rubric.md

详细介绍

Overnight Repo Auditor

在一夜之间自主审计整个代码库,并生成一份涵盖安全性、性能、无障碍性、依赖项和代码质量的单一报告,为问题标注严重级别。此工具为 Anthropic 的 Managed Agents 运行时打造(任务时限为 14.5 小时):无需提问或确认即可运行至完成,并在执行过程中将结构化发现写入磁盘,以便在中断时保留部分结果。

目录

  • references/reconnaissance.md —— 第 1 阶段步骤和侦察报告模板。
  • references/shared-rubric.md —— 严重级别评定标准和结构化问题格式。将这两项提供给每个 Agent。
  • references/agent-security.md —— 安全审计员说明和输出格式。
  • references/agent-performance.md —— 性能审计员说明和输出格式。
  • references/agent-accessibility.md —— 无障碍性审计员说明、跳过条件和输出格式。
  • references/agent-dependency.md —— 依赖项审计员说明、跳过条件和输出格式。
  • references/agent-code-quality.md —— 代码质量审计员说明和输出格式。
  • references/compilation-and-templates.md —— 第 3 阶段汇总步骤、最终报告模板和完成消息。

操作规则

  • 自主运行。绝不向用户索取输入。遇到不明确的决策时,选择更全面的方案,并在报告中记录选择。
  • 对源代码只读。仅创建 audit-workspace/ 目录和 overnight-audit-report.md。绝不修改、构建或执行项目代码。唯一例外:依赖项审计员可以运行只读的软件包审计命令(npm audit、pip audit 及同类命令)。
  • 时间允许时,应进行全面审计,而非抽样审计。

工作流

第 1 阶段:侦察(顺序执行,约 5-10 分钟)
  1. 扫描仓库结构,识别语言、框架、配置文件,并估算代码行数。
  2. 判断哪些审计模块适用(安全性和代码质量始终适用;性能始终适用;仅在存在前端/模板文件时进行无障碍性审计;仅在存在清单/锁文件时进行依赖项审计)。
  3. 编写 audit-workspace/00-reconnaissance.md,作为所有 Agent 共用的上下文文档。

请遵循 references/reconnaissance.md 中的具体命令和报告模板。

第 2 阶段:并行部署审计
  1. 通过 Agent 工具同时部署所有适用的审计 Agent。每次调用都使用 run_in_background: true,并在同一条消息中发送所有 Agent 调用。
  2. 将以下内容组合起来,构建每个 Agent 的提示词:完整的侦察报告(直接粘贴到提示词中——Agent 不会自动共享文件系统上下文)、references/shared-rubric.md 中的严重级别评定标准和问题格式,以及对应参考文件中的 Agent 专用说明。每个 Agent 都将结果写入 audit-workspace/ 下各自的输出文件。
    • 安全性 -> references/agent-security.md -> 01-security-audit.md
    • 性能 -> references/agent-performance.md -> 02-performance-audit.md
    • 无障碍性 -> references/agent-accessibility.md -> 03-accessibility-audit.md(遵循跳过条件)
    • 依赖项 -> references/agent-dependency.md -> 04-dependency-audit.md(遵循跳过条件)
    • 代码质量 -> references/agent-code-quality.md -> 05-code-quality-audit.md
  3. 对于定向审计(例如“仅审计安全性和依赖项”),只部署对应的 Agent,并且只在最终报告中纳入它们对应的章节。
第 3 阶段:汇总报告(顺序执行,约 5-10 分钟)
  1. 所有后台 Agent 返回后,阅读每份 Agent 报告,对跨 Agent 的问题去重,确定最终严重级别,并生成包含优先级最高的 10 项内容的执行摘要。
  2. 在仓库根目录写入汇总后的 overnight-audit-report.md,然后输出简短的完成消息。

请遵循 references/compilation-and-templates.md 中的去重映射、最终报告模板和完成消息。

扩展规模

代码库大小预计时长Agent 策略
< 10K 行15-30 分钟所有 Agent,各自单轮审查
10K - 50K 行30-90 分钟所有 Agent,全面审查
50K - 200K 行1-4 小时所有 Agent;安全性和代码质量可能需要子 Agent
200K - 500K 行4-8 小时所有 Agent 各自启动 2-3 个子 Agent,并行审查文件
500K+ 行8-14 小时全面部署子 Agent,为每个子 Agent 分配一批文件

对于超过 200K 行的代码库,每个审计 Agent 都应启动子 Agent,在其负责的领域内并行工作(例如,安全性审查可拆分为身份验证与会话、数据处理、API 接口和基础设施)。每份简报都要求 Agent 根据审计期间发现的规模,自行安排子 Agent 的部署。

错误处理

  • Agent 失败:使用相同的简报重试一次。如果再次失败,则撰写部分报告并注明失败情况,继续处理其他 Agent,并在最终报告中记录缺失的审查范围。绝不能让一个 Agent 阻碍其他 Agent。
  • 文件访问错误:跳过该文件,在该 Agent 的方法说明中记录,并继续处理。
  • 超时管理:优先审查高风险文件(身份验证、支付、数据处理、公共端点)。如果 Agent 审查的文件超过 2000 个,请注明对低风险文件采用了抽样策略。如果时间窗口即将结束,指挥者应汇总部分结果。
  • 重新运行:新一轮审计会覆盖之前的 audit-workspace/ 目录和 overnight-audit-report.md。建议用户先提交或复制之前的结果。

注意事项

  • 报告描述的是源代码,因此应像对待代码本身一样谨慎处理。
  • 如果存在 .gitignore,但其中没有列出 audit-workspace/,建议将其添加进去,以避免提交审计输出。

评论

支持 Markdown