名称:phx:审计 描述:使用5个并行专家子代理进行整体项目健康审计。分析架构、性能、安全、测试质量和依赖项。生成带有健康评分的可操作报告。季度使用或在大版本发布前使用。 参数提示:[–quick|–full|–focus=area|–since=commit]
项目健康审计
使用5个并行专家子代理进行全面的项目范围健康评估。
使用方式
/phx:audit # 完整审计(默认)
/phx:audit --quick # 2-3分钟快速检查
/phx:audit --focus=security # 深度单区域审计
/phx:audit --focus=performance
/phx:audit --since abc123 # 从指定提交开始增量审计
/phx:audit --since HEAD~10 # 审计最后10个提交
何时使用
- 季度健康检查
- 在大版本发布前
- 大型重构后
- 新团队成员入职(了解代码库健康状态)
子代理架构
使用任务工具并行启动5个专家:
| 子代理 | 关注点 | 输出文件 |
|---|---|---|
| 架构评审员 | 结构质量、耦合度、内聚性 | arch-review.md |
| 性能审计员 | N+1查询、索引、瓶颈、可扩展性 | perf-audit.md |
| 安全审计员 | OWASP扫描、认证模式、密钥管理 | security-audit.md |
| 测试健康审计员 | 覆盖率、质量、不稳定测试 | test-audit.md |
| 依赖项审计员 | 漏洞、过时依赖、未使用依赖 | deps-audit.md |
工作流程
步骤1:启动所有5个审计员(并行)
Task(subagent_type: "general-purpose", prompt: "架构审计...", run_in_background: true)
Task(subagent_type: "general-purpose", prompt: "性能审计...", run_in_background: true)
Task(subagent_type: "general-purpose", prompt: "安全审计...", run_in_background: true)
Task(subagent_type: "general-purpose", prompt: "测试健康审计...", run_in_background: true)
Task(subagent_type: "general-purpose", prompt: "依赖项审计...", run_in_background: true)
代理提示必须聚焦。 将每个提示限定到相关目录和模式。不要给出模糊提示如“分析代码库”。
步骤2:收集结果
使用TaskOutput等待所有审计员完全完成。如果TaskOutput显示审计员仍在运行,等待并再次检查。切勿在任何审计员仍在运行时继续。
从.claude/audit/reports/读取报告。
步骤3:压缩发现
所有5个审计员完成后,启动上下文监督员:
Task(subagent_type: "context-supervisor", prompt: """
压缩审计发现。
输入:.claude/audit/reports/
输出:.claude/audit/summaries/
优先级:每个类别的健康评分、仅关键发现、跨类别关联、去重多个代理发现的重复问题。
""")
从.claude/audit/summaries/consolidated.md读取综合报告。
步骤4:计算健康评分
每个类别评分0-100。参见references/scoring-methodology.md。
步骤5:生成报告
写入.claude/audit/summaries/project-health-{date}.md。
快速模式(--quick)
仅运行基本检查(约2-3分钟):
mix compile --warnings-as-errors
mix hex.audit && mix deps.audit
mix xref graph --format stats
mix test --trace 2>&1 | tail -20
跳过:完整安全扫描、N+1分析、测试质量指标、架构深度分析。
聚焦模式(--focus=area)
使用完整专家资源深度单区域审计:
| 聚焦 | 子代理 | 额外检查 |
|---|---|---|
security |
安全分析器 | 完整OWASP、sobelow、手动模式 |
performance |
(性能子代理) | 性能分析、查询解释 |
architecture |
(架构子代理) | 完整xref、耦合矩阵、内聚性 |
tests |
测试评审员 | 按上下文覆盖率、质量指标 |
deps |
(依赖项子代理) | 许可证审计、维护状态 |
增量模式(--since <commit>)
仅分析自特定提交以来的更改。适用于预合并检查:
# 识别更改的文件
git diff --name-only <commit>...HEAD
# 仅对更改的文件运行定向审计
# 跳过完整项目扫描,聚焦修改代码
可与其他标志结合:/phx:audit --since HEAD~5 --focus=security
输出格式
# 项目健康审计:{项目名称}
**生成时间**:{日期}
**模式**:完整 | 快速 | 聚焦={区域}
## 执行摘要
### 健康评分:{A-F} ({数值}/100)
| 类别 | 评分 | 状态 |
|----------|-------|--------|
| 架构 | 85/100 | 良好 |
| 性能 | 70/100 | 需要注意 |
| 安全 | 95/100 | 优秀 |
| 测试质量 | 60/100 | 需要改进 |
| 依赖项 | 90/100 | 良好 |
### 关键问题(必须解决)
1. {问题}
2. {问题}
### 首要推荐
1. {推荐}
2. {推荐}
## 详细发现
[来自子代理的每个类别部分]
## 行动计划
### 立即(本迭代)
- [ ] {关键修复}
### 短期(下两个迭代)
- [ ] {改进}
### 长期(待办事项)
- [ ] {可有可无}
与其他命令的关系
| 命令 | 范围 | 频率 |
|---|---|---|
/phx:review |
更改文件(差异) | 每个PR |
/phx:audit |
整个项目 | 季度 |
/phx:boundaries |
上下文结构 | 按需 |
/phx:verify |
编译/测试通过 | 随时 |
参考
references/scoring-methodology.md- 评分方法references/architecture-checks.md- 详细架构标准