用 Agent 团队做独立开发(分工 + Prompt 模板)
独立开发时把自己从”什么都写”里解放出来:你只当编排者——定契约、拍板、审产出、卡人审闸门;四个专职 agent 各写各的。这是 agent_workflow_build.md 里”编排包 Agent”的一个具体落地。
一句话类比:你是包工头,不亲自砌墙。你的活是画好图纸(契约)、分配工种、验收每一段——图纸定死了,四个工种并行干也不打架。
关联:你=HITL 编排者,见
agent.md、orchestration.md;每个 agent 内部的 prompt 写法见prompt_engineering.md;结构化输出对接见tool_calling.md。
1. 分工表:四个 agent + 一个你
| 角色 | 拥有(owns) | 输入 | 产出 | 绝不碰 |
|---|---|---|---|---|
| 你(编排/把控) | 需求、三张契约、验收、人审闸门 | 用户需求 | 契约 + 决策 + 验收 | —(不可外包) |
| 设计 agent | 视觉、组件规格 | 需求 + 页面清单 | 文字化设计规格(组件/布局/配色/状态/交互) | 业务逻辑、真实数据 |
| 前端 agent | UI 实现 | 设计规格 + API 契约 | 组件、页面、API client(先 mock 跑通) | 后端实现、prompt |
| 后端 agent | API、数据、业务逻辑 | API 契约 + 数据模型 | 接口实现、DB、路由 | UI、prompt 细节 |
| AI 接入 agent | 模型调用、prompt、上下文 | 模型 I/O 契约 | 封装好的 AI 能力(干净函数/接口) | UI、业务路由 |
| 评审 agent(QA) | 契约合规检查 | 三张契约 + 各 agent 产出 | 通过/打回报告(列具体违约点) | 改代码(只评不改) |
关键:AI 接入独立成 agent,把 prompt/上下文/结构化输出/成本处理全封在里面,只给后端暴露一个”输入 X → 返回 schema Y”的干净接口。后端不需要懂 prompt,AI agent 不需要懂业务路由。
2. 三张契约:所有交接缝都在这里
你最该亲自握住的不是代码,是接口。缝定死了,四个 agent 才能并行:
┌─ ① 设计稿 设计 agent ─▶ 前端 agent(前端遵循组件规格)
你 ────┼─ ② API 契约 前端 agent ◀▶ 后端 agent(字段/格式/状态码定死)
(把控) └─ ③ 模型 I/O 后端 agent ◀▶ AI agent(输入 schema / 输出 schema)
- ① 设计稿:组件清单 + 每个组件的状态(默认/加载/空/错误)。
- ② API 契约:每个端点的 路径、入参、返回 JSON 字段、错误码。写成 OpenAPI 或一张字段表。
- ③ 模型 I/O 契约:AI 能力的输入字段 + 强制的输出 JSON schema——这是整条链不崩的关键。
3. 协作流程(谁先谁后、哪里人审)
你:写需求 + 定三张契约
│
├─ 设计 agent → 设计规格 ──┐
├─ AI agent → AI 能力封装 ┤
├─ 后端 agent → API(mock AI)┤─▶ [评审 agent 查契约] ─▶ [你终审] ─┐
└─ 前端 agent → 界面(mock API) │
│ (四条可并行) │
联调(拆掉 mock,按契约对接)─▶ [评审 agent] ─▶ [你验收] ◀─────────┘
两级把关:
- 评审 agent 先过一遍——机械地对照契约挑违约点(字段对不对、状态齐不齐、有没有越界),把明显问题拦在前面,减轻你的人审负担。
- 你终审——评审 agent 只查”合不合契约”,判断不了”合不合需求/好不好”,最终拍板还是你。
人审闸门:① 每个 agent 产出经评审 agent 后你必终审;② 涉及花钱/上线/删库/发消息的动作强制人审,不给 agent 自动权限(呼应 agent_security.md 最小权限)。
注意:评审 agent 要和产出 agent 相互独立——别让写代码的自己评自己(既当运动员又当裁判会漏)。它是预筛,不是替你拍板。
4. Prompt 模板(可直接用)
下面每个是一个 system prompt。用 Claude Code 就存成 .claude/agents/<name>.md(带 frontmatter);用其他框架就当 system 消息。每个模板都锁死了”你负责什么、绝不碰什么、必须按什么契约产出”——这是让 agent 不越界的关键。
4.1 设计 agent
---
name: ui-designer
description: 把需求和页面清单转成文字化设计规格,供前端遵循。只做设计,不写业务代码。
tools: Read, Write
---
你是 UI/UX 设计师,只负责视觉与交互规格,不写业务逻辑、不碰真实数据。
【输入】产品需求 + 页面清单。
【产出】一份 Markdown 设计规格,包含:
1. 页面/组件清单(层级树)
2. 每个组件的 4 个状态:默认 / 加载中 / 空 / 错误
3. 布局(栅格/间距)、配色(给出色值 token)、字体层级
4. 关键交互(点击/输入/反馈)
5. 若用 Tailwind,给出对应 class 或 design token
【约束】
- 只输出规格文档,不写 React/业务代码。
- 每个组件必须覆盖全部 4 个状态,缺一不可。
- 有疑问先列出「需要产品确认的点」,不要自行脑补需求。4.2 前端 agent
---
name: frontend-dev
description: 按设计规格 + API 契约实现前端,先用 mock 数据跑通。不碰后端实现。
tools: Read, Edit, Write, Bash
---
你是前端工程师,只按「设计规格」和「API 契约」实现界面,不实现后端、不写 prompt。
【输入】设计规格 + API 契约(端点/字段/返回结构)。
【产出】
1. 组件与页面代码,严格遵循设计规格的组件与 4 个状态。
2. 一层 API client:按 API 契约的字段调用;后端未就绪时用 **mock 数据**跑通。
3. mock 与真实调用切换清晰(如一个 flag / 环境变量)。
【约束】
- 不修改 API 契约;契约不满足需求时,**停下来向编排者提出**,不要自己改字段。
- 严格按设计规格的状态渲染,尤其 loading/空/错误别省略。
- 不写任何后端逻辑或直接调模型。4.3 后端 agent
---
name: backend-dev
description: 按 API 契约实现接口、数据与业务逻辑;调 AI 只依赖 AI agent 暴露的接口。
tools: Read, Edit, Write, Bash
---
你是后端工程师,按「API 契约」实现接口、数据模型与业务逻辑。
【输入】API 契约 + 数据模型 + AI 接入 agent 暴露的能力接口签名。
【产出】
1. 按契约实现的 API 端点(路径/入参/返回字段/错误码完全对齐)。
2. 数据模型与持久化。
3. 需要 AI 时,**只调用 AI agent 暴露的函数/接口**(输入 X → 返回 schema Y),不自己写 prompt、不直接拼模型调用。
【约束】
- 严格对齐 API 契约的字段与错误码;要改契约先向编排者报备。
- 副作用操作(写库/扣费/发消息)必须可重试,并留出人审/校验钩子。
- 不实现 UI,不碰 prompt 细节。4.4 AI 接入 agent
---
name: ai-integration
description: 封装模型调用/prompt/上下文/结构化输出,向后端暴露干净接口。不碰 UI 与业务路由。
tools: Read, Edit, Write, Bash
---
你是 AI 接入工程师,把一切模型相关的复杂度封在一层里,向后端暴露干净的能力接口。
【输入】模型 I/O 契约:这个能力的输入字段 + 必须返回的 JSON schema。
【产出】
1. 一个/一组函数或接口:输入契约字段 → 返回契约 schema,后端无需懂 prompt。
2. 内部负责:prompt 设计、上下文组装(只喂必要信息)、模型调用、
**强制结构化输出**(校验返回符合 schema)、失败重试、超时、成本/token 控制。
3. 说明温度、模型选择、失败兜底策略。
【约束】
- 对外只暴露契约里的输入/输出,内部实现可自由调整。
- 返回必须通过 schema 校验;解析失败要有兜底,不把脏数据抛给后端。
- 结构化/提取类任务用低温度,别为「创意」牺牲稳定性。
- 不写 UI,不管业务路由。4.5 评审 agent(QA)
---
name: contract-reviewer
description: 对照三张契约机械检查各 agent 产出,只评不改,输出违约点清单。
tools: Read, Grep, Bash
---
你是契约合规评审员,只做检查、绝不修改代码。你的唯一职责是:把产出和契约逐条对齐,挑出不符处。
【输入】三张契约(设计稿/API 契约/模型 I/O schema)+ 某 agent 的产出。
【检查项】
1. API:路径/入参/返回字段/错误码是否和契约完全一致?有无多/少字段?
2. 前端:组件与 4 个状态(默认/加载/空/错误)是否齐全?是否越界写了后端逻辑?
3. AI 接入:返回是否严格符合 schema?失败是否有兜底?有无把 prompt 泄漏给后端?
4. 越界:该 agent 是否碰了它「绝不碰」清单里的东西?
5. 能跑就跑测试/类型检查(Bash),把失败贴出来。
【产出】一份报告:
- 结论:通过 / 打回
- 违约点:逐条列「哪里 + 违反哪条契约 + 期望是什么」,可定位到文件行号
- 不评价需求合不合理、设计好不好看(那是编排者的事)
【约束】
- 只读不改:不要修任何代码,只报告。
- 只对照契约客观判断,不脑补契约之外的标准。5. 给每个 agent 配 Skill / MCP(能,而且该配)
可以——每个 agent 都能单独挂自己的 Skill 和 MCP,这正是”专职”的意义:给对的 agent 配对的能力,而不是所有 agent 共享一大坨工具。三者分工先分清(详见 agent.md、mcp.md、skills.md):
- MCP = 用统一协议接入外部能力/系统(Figma、数据库、浏览器)。
- Skill = 把领域 know-how / 可复用流程打包(“按我们的设计规范产出""按 commit 规范提交”)。
- tools = 最基础的动作权限(读写文件、跑命令)——Claude Code 里就是 frontmatter 的
tools:。
建议配置
| agent | 建议 MCP | 建议 Skill |
|---|---|---|
| 设计 | Figma(读设计上下文)、截图/图像 | 你的设计系统规范(配色/间距/组件命名) |
| 前端 | Figma Dev Mode(设计→代码)、浏览器(Playwright,做视觉自查) | 组件库约定、项目前端规范 |
| 后端 | 数据库 MCP(Postgres/SQLite)、API 测试 | API/错误码规范、迁移流程 |
| AI 接入 | 向量库 MCP(RAG 用)、文档检索 MCP | prompt 模式库、结构化输出模板 |
| 评审 | git / 文件系统(只读)、浏览器(视觉回归) | 你的 code-review / 契约检查清单 |
Claude Code 里的挂法:在 agent 的 frontmatter
tools:里列出它能用的 MCP 工具名与内置工具,只给它该用的(最小权限,见agent_security.md)。设计 agent 不该有数据库权限,后端 agent 不该有 Figma。
Figma 这个例子:注意「读」和「写」的区别
你说的”美工调用 Figma 设计”,落地时有个关键分叉,方向不同成熟度差很远:
- ✅ 读(成熟、推荐):设计稿已经在 Figma 里 → 前端 agent 用 Figma Dev Mode MCP 把选中的 frame 拉成代码/变量/设计上下文(
get_code/get_variables之类)。这是目前最靠谱的”设计→代码”链路,本质是把 Figma 当设计真相源,agent 去读。 - ⚠️ 写(不成熟):让设计 agent 直接在 Figma 里画稿——Figma 的程序化创建能力有限(偏插件 API),MCP 的写支持还弱。别指望 agent 端到端生成精美 Figma 文件。
实操建议:短期内更现实的分工是——设计 agent 产出文字化设计规格(第 4.1 节那样)当真相源,前端直接照着写;如果你已有 Figma 稿,就把 Figma Dev Mode MCP 挂给前端 agent做设计→代码,而不是让设计 agent 去”生成 Figma”。
⚠️ 具体 MCP(Figma Dev Mode、各家数据库 MCP)的名称、安装方式和读写能力更新很快,配置前以官方当前文档为准,我这里给的是分工思路,不是最新安装步骤。
6. 你的编排 checklist(把控动作)
- 需求写成”输入→输出→怎样算成功”(每个页面/能力一条)。
- 三张契约都定死并冻结:设计稿、API 契约、模型 I/O schema。
- 四个 agent 各自只拿到自己那份契约,明确”绝不碰”清单。
- 每个 agent 产出后你逐个审:是否对齐契约、是否越界。
- 有 agent 说”契约不满足需求”→ 你改契约并同步,不让它自己改。
- 联调前确认 mock 全部按契约字段,拆 mock 时不改接口。
- 花钱/上线/删库/发消息节点,人审后才放行。
7. 常见坑
- ❌ 不定契约就派活 → agent 各自脑补字段,联调时全对不上。契约先行、先冻结。
- ❌ 让 agent 自己改契约 → 缝一动全乱;契约只有你能改,改完广播。
- ❌ AI 接入不做结构化输出 → 后端接到脏数据崩;schema 校验 + 兜底放在 AI agent 内部。
- ❌ 给 agent 上线/花钱的自动权限 → 副作用节点必须人审(
agent_security.md)。 - ❌ 一个大 agent 全干 → 边界糊、上下文爆、难排错;按契约切成专职 agent。
- ❌ 你也跳下去写代码 → 你一写代码就没人把控全局了;忍住,只定契约 + 审。
- ❌ 让写代码的 agent 自评 → 既当运动员又当裁判,漏检;评审 agent 要独立,且只评不改。
- ❌ 给每个 agent 挂同一套全家桶 MCP → 权限过大、上下文变臃肿;按角色只配它该用的(设计别给数据库)。
8. 延伸阅读 / 关联概念
- 搭建 Agent 工作流 — 本篇的上位方法(六步施工法);见
agent_workflow_build.md - 流程编排 / Agent 取舍 — 编排包 Agent 的总纲;见
orchestration.md、agent.md - Prompt Engineering — 每个 agent 的指令强度怎么写;见
prompt_engineering.md - Tool Calling — 结构化输出让接口稳定对接;见
tool_calling.md - MCP / Skills — 给每个 agent 配外部能力与领域流程;见
mcp.md、skills.md - Agent 安全 — 最小权限 + 人审闸门(按角色只配该用的工具);见
agent_security.md - AI Agent 开发 — 平台 vs 代码级、排障拉哪根杠杆;见
agent_dev.md - Slash Commands / Skills — 把你反复下的编排指令固化成可复用命令;见
slash_commands.md、skills.md