prefect-aws 集成指南:用 Prefect 编排 S3、Lambda、Secrets Manager、ECS 与 Batch 工作流
Claude SubAgents深度解析:TestAgent+CodeAgent多智能体协作完整指南(modern-software-dev-assignments)
在 Stanford 课程项目 modern-software-dev-assignments(CS146S: The Modern Software Developer)中,Claude SubAgents 是 Claude Code 最强大的多智能体协作机制:让 TestAgent 和 CodeAgent 两个角色专职智能体分工合作,一个负责写测试,一个负责写实现,自动完成"测试驱动开发"闭环。本文带你快速理解 SubAgents 原理,并掌握 TestAgent+CodeAgent 协作工作流的完整用法。🤖
什么是 Claude SubAgents?
Claude SubAgents(子智能体) 是 Claude Code 内置的角色分工机制:你可以为每个智能体配置独立的系统提示词、专属工具集和独立上下文,让它们各自负责一个工作流中的特定步骤,再协同完成复杂任务。
打个比方 🏭:
| 角色 | 职责 | 类比 |
|---|---|---|
| TestAgent | 编写/更新测试用例 | 质检员 |
| CodeAgent | 实现代码让测试通过 | 工程师 |
| DocsAgent | 同步文档、检查 API 漂移 | 文档管理员 |
| DBAgent | 提出数据库 schema 变更 | 架构师 |
| RefactorAgent | 重构代码、修复 lint | 重构专家 |
核心优势在于上下文隔离:每个 SubAgent 只关心自己的任务,不会互相"污染"上下文窗口,因此比单个大模型一口气干所有事更稳定、更可靠。
任务背景:Week 4 的"开发者指挥中心"Starter 应用
本仓库 Week 4 作业的主题是 "The Autonomous Coding Agent IRL"(真实场景下的自主编码智能体),官方作业文档见 week4/assignment.md。
配套的 starter 应用是一个精简的全栈项目,官方称之为 "developer's command center"(开发者指挥中心):
- ⚙️ 后端:FastAPI + SQLite(SQLAlchemy),入口在 backend/app/main.py
- 🖥️ 前端:静态页面,由 FastAPI 直接托管,无需 Node 工具链
- 🧪 测试:pytest,位于 backend/tests/ 目录
- 🛡️ 质量门禁:pre-commit(black + ruff),配置在 pre-commit-config.yaml
- 📋 任务清单:docs/TASKS.md 里列了 7 个待办任务,专供智能体工作流演练
这套"小而全"的应用,正是多智能体协作的理想实验场。
核心工作流:TestAgent + CodeAgent 三步协作
这是作业文档中给出的经典 SubAgent 协作模式,本质是把**测试驱动开发(TDD)**拆成三个明确步骤,交给两个专职智能体轮流执行:
第 1 步:TestAgent 先行写测试 📝 TestAgent 读取任务描述(例如 TASKS.md 中"为 notes 增加搜索接口"),先为尚未存在的功能编写测试用例。此时测试必然是失败的——这正是 TDD 的"红"阶段。
第 2 步:CodeAgent 实现代码 🛠️ CodeAgent 接手失败的测试,只以"让测试变绿"为目标来实现功能。因为验收标准(测试)已被冻结,CodeAgent 无法"偷懒"糊弄,必须真正交付可用实现。
第 3 步:TestAgent 回归验证 ✅ TestAgent 再次运行完整测试套件,确认新实现没有破坏既有功能。全部通过后才算交付。
这个"写测试 → 写实现 → 再验证"的闭环,正是多智能体协作的威力所在:角色分离让每个 Agent 的提示词更聚焦,行为更可预测。作业文档中还给出了实用技巧:使用 checklist/scratchpad 记录进度、角色切换时用 /clear 重置上下文、独立任务可让多个 Agent 并行运行。⚡
其他协作模式:不止 Test + Code 一种组合
官方文档(week4/assignment.md 的 Part I C 小节)还给出了另外两种现成配方:
- 📄 DocsAgent + CodeAgent:CodeAgent 新增 API 路由后,DocsAgent 负责更新 API.md 和 TASKS.md,并对照
/openapi.json检查文档漂移——特别适合"代码改了、文档忘了"这种通病。 - 🗄️ DBAgent + RefactorAgent:DBAgent 提出 schema 变更(调整 data/seed.sql),RefactorAgent 同步更新 models/schemas/routers 并修复 lint 问题。
这三种组合覆盖了真实开发中最高频的场景:功能开发、文档维护、数据库演进,你可以直接照搬到自己的项目里。
上手指南:三步跑通你的第一个 SubAgent 工作流
第 1 步:获取项目并准备环境 🚀
仓库地址(clone 用):https://gitcode.com/GitHub_Trending/mo/modern-software-dev-assignments
按 README.md 说明安装 Anaconda、创建 Python 3.12 环境并用 Poetry 安装依赖。
第 2 步:启动 Week 4 starter 应用
在 week4/ 目录下执行 make run 启动应用,访问 http://localhost:8000 查看前端;所有命令(test/format/lint/seed)都封装在 Makefile 中,对智能体非常友好——它们只需调用 make test 即可自证工作成果。
第 3 步:从一个小任务开始
从 docs/TASKS.md 里挑一个任务(推荐任务 4:扩展 services/extract.py 的标签解析),按"TestAgent 写测试 → CodeAgent 实现 → TestAgent 验证"的流程跑一遍。完成后在 week4/writeup.md 模板中记录设计思路、运行命令和前后工作流对比。📦
SubAgents 之外:Claude Code 自动化四件套
SubAgents 是 Week 4 作业提供的四大自动化能力之一,它们可以任意组合:
- ⚡ 自定义斜杠命令:把重复工作流写成
.claude/commands/*.md,如/tests(跑测试+覆盖率)、/docs-sync(同步 API 文档) - 📌 CLAUDE.md 引导文件:仓库级的"操作手册",告诉 Claude 如何运行应用、路由在哪里、哪些命令是安全的
- 🤖 SubAgents:本文主角,角色专职化的多智能体协作
- 🔌 MCP 服务器:为 Claude Code 接入外部工具与数据源
对新手来说,建议学习路径是:先写 CLAUDE.md 打好地基 → 再做斜杠命令练手感 → 最后上 SubAgents 实现真正的角色协作。
总结
Claude SubAgents 的本质,是把"一个大模型包打天下"升级为"多个专职角色流水线协作"。在 modern-software-dev-assignments 的 Week 4 作业中,TestAgent+CodeAgent 组合演示了最经典的 TDD 闭环:🧪 测试先行冻结验收标准,🛠️ 实现专注通过测试,🔁 回归验证保证不破坏旧功能。配合仓库自带的 starter 应用、TASKS 任务清单和 Makefile 命令封装,你只需几个命令就能亲手跑通多智能体协作的完整流程——这正是现代 AI 辅助开发的真实工作范式。
更多推荐
所有评论(0)