Five Skill Patterns 每个 ADK 开发者都该知道的事
整理自 Google Cloud 分享的《5 Agent Skill Design Patterns Every ADK Developer Should Know》
为什么需要设计模式?
很多人以为写好 SKILL.md 的 YAML 格式就行了——其实那只是「壳」。
真正的挑战在于内容设计:如何让 Agent 不跳步、不瞎猜、不产出一堆格式不一的东西?
这五个模式就是答案。
01
五大模式速览
| # | 模式 | 一句话解释 |
|---|---|---|
| 01 | Tool Wrapper | 用到时才加载专家知识 |
| 02 | Generator | 用模板保证输出一致 |
| 03 | Reviewer | 用检查清单做质量把关 |
| 04 | Inversion | 先问够再动手 |
| 05 | Pipeline | 严格的多步骤流水线 |
02 — Tool wrapper
Tool Wrapper
快速领域专精化
问题
如果你把所有框架文档(FastAPI 惯例、React 规范、SQL 风格指南…)全塞进 System Prompt,Token 会爆炸、AI 也会分心。
解法
在 SKILL.md 里设置「关键字触发」。
当 Agent 侦测到用户提到某个框架时,才从 references/ 目录动态加载对应的 conventions。
# 触发条件
when: 用户提到"FastAPI" 或"API endpoint"
load: references/fastapi-conventions.md
# Agent 行为
then: 依照加载的规范进行开发
只在需要时消耗 Token
核心价值
保持 Context Window 干净。只在相关时才注入专业知识,避免 AI 被不相关的信息干扰。
03 — Generator
Generator
用模板确保结构化输出
问题
让 AI 自由发挥写报告,每次格式都不一样——有时有目录、有时没有;有时写三段、有时写三十段。
解法
预先建立模板(放在 assets/ 目录),让 Agent 像「填空」一样把内容填进去,而不是从零开始建构。
# {{title}}
## Executive Summary
{{summary: 2-3 句重点摘要}}
## Key Findings
{{findings: 条列式,3-5 项}}
## Risk Assessment
| 风险 | 严重度 | 建议行动 |
|---|---|---|
{{risks: 填入表格}}
## Next Steps
{{actions: 按优先级排列}}
核心价值
把「格式」和「内容」解耦。AI 专注生成有价值的内容,模板确保每次输出结构一致。
04 — Reviewer
Reviewer
用检查清单做质量把关
问题
AI 生成的东西「看起来对」但其实有漏洞——可能忘了处理 edge case、安全性检查或团队惯例。
解法
建立一个独立的 Reviewer Skill,从 references/ 加载专属的检查清单,
让 Agent 依据清单逐项验证,并按严重度分组回报。
Critical
安全漏洞、数据泄露
Warning
性能问题、可维护性
Info
风格建议、最佳实作
核心价值
把「检查逻辑」和「生成逻辑」分离。一个 Agent 做事,另一个 Agent 质检——就像代码的 PR Review。
05 — Inversion
Inversion
先问够,再动手
问题
用户丢一句「帮我做个网站」,Agent 就开始狂写代码——结果做出来的东西跟需求天差地远。因为 AI 天生倾向「立即行动」,而不是先搞清楚问题。
解法
反转 Agent 的行为:强迫它先当「访谈者」而不是「执行者」。 设置不可跳过的闸门指令 (Non-negotiable gates),让 Agent 必须搜集到所有必要参数后才能开始工作。
✕ 传统 Agent:
用户:「帮我做一个网站」
Agent → 直接开始写 React 项目...
✓ Inversion 模式:
用户:「帮我做一个网站」
Agent → Phase 1:需求访谈
「这是什么类型的网站?」
「目标用户是谁?」
「有没有参考设计?」
→ Phase 2:确认需求
「我整理的需求如下... 确认吗?」
→ Phase 3:执行
开始开发
核心价值
用「先问再做」的方式避免 Hallucination。Context 越完整,AI 的输出质量越高。
06 — Pipeline
Pipeline
严格的多步骤流水线
问题
复杂任务有多个步骤,但 AI 会跳步、合并步骤或忘记中间的关键步骤——尤其当 Context 很长的时候。
解法
把 Skill 设计成一条严格的流水线:定义明确的阶段 (Phase), 在每一步之间设置「闸门 (Gate)」。Agent 必须完成当前步骤并获得人工确认,才能进入下一步。
Gate
Gate
核心价值
把不可预测的文字生成,变成可控、可重复、可审计的状态机 (State Machine)。
07
关键观念
Progressive Disclosure(渐进式揭露)
ADK 的 SkillToolset 让 Agent 在需要时才加载指令与 Context,节省 Token 并保持焦点。
格式与内容分离
SKILL.md 提供标准化的壳,这些模式则定义「Agent 如何思考与行动」的内在逻辑。
组合使用
这些模式可以混搭!例如:Pipeline 的最后一步放 Reviewer;Generator 前面接 Inversion 来搜集参数。
08