六、实战:四件套配合编排
理论讲够了,来看三个真实场景,展示四件套如何配合使用。
场景1:自动化 PR 审查 + 团队通知
需求:每次提交 PR,Agent 自动审查代码,发现问题在 PR 上留 comment,审查完发 Slack 通知团队。
Step 1 — CLAUDE.md 提供项目上下文
# CLAUDE.md
## 代码规范
- 禁止使用 any 类型,必须显式声明类型
- React 组件必须定义 Props 接口
- API 请求统一通过 services/ 层,不要在组件中直接 fetch
- CSS 使用 Tailwind,禁止内联 style
## PR 审查重点
- 关注安全性:用户输入必须校验
- 关注性能:避免不必要的 re-render
- 关注可维护性:函数不超过 50 行
这是 Agent 的 ” 背景知识 ” —— 它知道这个项目关心什么。
Step 2 — Skill 定义审查流程
---
name: pr-review
description: PR 自动审查流程。Use when user asks to "review PR" or "check code changes".
---
## 流程
1. 获取当前 PR 的变更文件列表
2. 读取项目 CLAUDE.md 中的代码规范和审查重点
3. 逐文件检查:
- 是否违反代码规范
- 是否有安全风险(XSS、注入等)
- 是否有性能问题
4. 生成审查报告,按严重程度分级
5. 在 PR 上留下 review comments
6. 汇总结果,通过 Slack 通知团队
- 🔴 有严重问题 → 通知并标记需要修复
- 🟢 审查通过 → 通知并建议合并
是 Agent 的 ” 操作手册 ” —— 它知道一步步该做什么。
Step 3 — MCP 提供执行能力
{
"mcpServers": {
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"]
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"]
}
}
}
这是 Agent 的 ” 工具箱 ” —— 它能操作 GitHub 和 Slack。
Step 4 — Hooks 自动格式化
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "pnpm lint-staged"
}
]
}
]
}
}
如果审查过程中 Agent 修复了代码,Hook 自动格式化。
编排后的完整流程
PR 被创建
│
▼
Agent 启动,自动加载 CLAUDE.md
│ → 理解项目规范和审查重点
▼
触发 pr-review Skill(手动 /pr-review 或自动识别)
│ → 按流程逐步执行
▼
通过 GitHub MCP 读取 PR diff
│ → 获取所有变更文件
▼
逐文件审查(结合 CLAUDE.md 中的规范)
│ → 生成审查报告
▼
通过 GitHub MCP 提交 Review Comments
│ → 在 PR 上留下具体的行级评论
▼
(如果修复了代码)PostToolUse Hook 触发
│ → 自动运行 lint-staged 格式化
▼
通过 Slack MCP 发送通知
│ → "@channel PR #123 审查完成,发现 2 个问题需要修复"
▼
完成 ✅
这就是四者配合的完整闭环:
CLAUDE.md 提供语境 → Skill 定义步骤 → MCP 执行动作 → Hooks 自动化固定流程。
场景2:多文件重构项目
需求:重构 auth 模块,涉及 10+ 文件,需要保证不破坏现有功能。
配置:
1、CLAUDE.md – 定义架构约束
## 架构规范
- Auth 逻辑统一在 `lib/auth/`
- 不要改动 `config/auth.ts`(生产配置)
- 所有改动必须有测试覆盖
2、Skill – 定义重构流程
---
name: refactor-auth
description: 重构 auth 模块的标准流程
---
## 重构步骤
1. 读取当前 auth 相关文件
2. 生成重构计划
3. 征求用户确认
4. 逐文件重构
5. 运行测试验证
6. 生成变更文档
3、Hooks – 自动测试
{
"hooks": {
"PostToolUse": [
{
"matcher": "Edit|Write",
"hooks": [
{
"type": "command",
"command": "pnpm test auth/"
}
]
}
]
}
}
每次修改 auth 相关文件后,自动运行相关测试。
场景3:定时数据分析报告
需求:每天分析数据库日志,生成报告发送到 Slack。
配置:
1、Skill – 定义分析流程
---
name: daily-report
description: 生成每日数据分析报告
disable-model-invocation: true
---
## 分析步骤
1. 连接 Postgres 读取昨日日志
2. 分析关键指标:
- 活跃用户数
- 错误率
- API 响应时间
3. 生成 Markdown 报告
4. 发送到 Slack #data-reports 频道
2、MCP – 数据库和 Slack 连接
{
"mcpServers": {
"postgres": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-postgres",
"postgresql://localhost:5432/prod"]
},
"slack": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-slack"]
}
}
}
3、外部 Cron – 定时触发
# crontab
0 9 * * * claude code /daily-report
每天早上 9 点自动执行。
工作流:
Cron 触发
↓
Claude Code 启动
↓
加载 daily-report Skill
↓
通过 Postgres MCP 查询数据
↓
分析生成报告
↓
通过 Slack MCP 发送
↓
完成 ✅
© 版权声明
文章版权归作者所有,未经允许请勿转载。
相关文章
暂无评论...