
字节笔记本
2026年10月6日 · 约 25 分钟读完
Google Agents CLI:从搭建到部署一条命令
参考:google/agents-cli(GitHub,Apache 2.0 开源) | Agents CLI 官方公告(Google Developers Blog) | Google Cloud Next '26
Karpathy 几个月前提出了一个概念叫 agentic engineering。他说未来工程师的核心工作不再是写代码,而是设计 spec、写 eval、做安全审查:让 Agent 写代码,人做 oversight。
概念很好,但问题很现实:工具跟不上。 你让 Agent 写 agent,但搭建、测试、评估、部署的流程全靠手动,没有一个工具串起来。
Google 在 Cloud Next '26 上发布了 Agents CLI:一个命令行工具,一条命令把 7 个 Skill 注入你的 Coding Agent(Claude Code、Gemini CLI、Cursor 都行),从脚手架搭建到部署上线,全流程覆盖。
这篇文章把 Agents CLI 拆开讲清楚,同时把 Karpathy 的 agentic engineering 方法论和这个工具怎么对应起来,给你一个完整的认知地图。
Agentic Engineering 是什么:Karpathy 的核心论点
先说清楚这个概念,否则 Agents CLI 的价值你看不出来。
Vibe Coding vs Agentic Engineering
Vibe Coding(随性编码):你对 AI 说"帮我写一个 TODO App",AI 写出来,你觉得差不多就用。没有 spec,没有测试,没有 eval,没有安全审查。
Agentic Engineering:你在 AI 动手之前,先设计 spec(规格说明),定义 eval(评估标准),设定安全边界,然后让 AI 在你画的框里写代码。AI 写完,你跑 eval,审查 diff,确认安全,然后合并。
Karpathy 的核心论点:vibe coding 能做 demo,agentic engineering 才能做产品。
Agentic Engineering 的五个核心技能
| 技能 | 做什么 | 为什么重要 |
|---|---|---|
| Spec Design | 在 Agent 动手前写清楚"要做什么、不做什么、边界在哪" | 没有 spec,Agent 的输出不可预测 |
| Diff Review | 人工审查 Agent 生成的每一行代码变更 | Agent 会犯错,需要人把关 |
| Eval Loops | 用结构化的评估集反复测试 Agent 的输出质量 | eval 是唯一的自动化质量保证 |
| Security Oversight | 检查 Agent 是否引入安全漏洞、数据泄露、权限滥用 | Agent 有访问权限,但没有安全意识 |
| Taste / Judgment | 在 spec 层面做架构决策和技术选型 | Agent 不做决策,人做决策 |
关键转变:工程师的角色从"写代码的人"变成"设计 spec + 做 oversight 的人"。代码是 Agent 写的,但系统的质量由工程师的 spec 和 eval 决定。
Google Agents CLI 是什么:一句话和三句话
一句话:一个 CLI 工具,把你的 Coding Agent 变成 ADK(Agent Development Kit)专家,一条命令完成从搭建到部署的全流程。
三句话:
- Skills-based 架构:7 个内置 Skill 注入 Coding Agent 的上下文,教它 ADK 的模式和最佳实践
- 全生命周期覆盖:Scaffold → Build → Test → Eval → Deploy,每一步都有对应的 Skill 指导
- 多 Agent 兼容:支持 Claude Code、Gemini CLI、Cursor、Windsurf 等主流 Coding Agent,不绑定 Google 的模型
7 个 Skill 分别干什么
一条安装命令注入 7 个 Skill:
npx agents-cli skills install
| Skill | 干什么 | 对应 Agentic Engineering 哪个环节 |
|---|---|---|
scaffold | 搭建 ADK Agent 的项目结构 | 项目初始化 |
build | 编写 Agent 的 tools、instructions、model 配置 | Spec Design(把 spec 翻译成代码) |
test | 本地运行和调试 Agent | Diff Review 的前置条件 |
eval | 运行结构化评估、写 eval 数据集、分析失败 | Eval Loops(核心) |
spec | 设计 Agent 的行为规格 | Spec Design(核心) |
security | 安全审查 Agent 的权限、数据流、工具调用 | Security Oversight(核心) |
deploy | 部署到 Agent Runtime / Cloud Run / GKE | 部署上线 |
注意对应关系:Karpathy 说的五个核心技能,Agents CLI 的 7 个 Skill 覆盖了其中三个(spec、eval、security),另外两个(diff review、taste)仍然是人工职责。
完整上手流程:从零到部署一个 Agent
前置条件
- 一个 Google Cloud 项目(有 billing account)
- Node.js 18+
- 一个 Coding Agent(Claude Code / Gemini CLI / Cursor 任选其一)
Step 1:安装 Agents CLI
npm install -g @google/agents-cliStep 2:初始化项目
mkdir my-agent && cd my-agent
npx agents-cli init
# 交互式选择:
# - Agent name: expense-tracker
# - Model: gemini-2.5-flash(便宜快速)或 gemini-2.5-pro(能力强)
# - Tools: RAG(知识库检索)/ Custom Tools(自定义工具)/ Google Search / Code Execution / grounding这个命令会生成一个标准的 ADK 项目结构:
my-agent/
├── agent.py # Agent 入口:定义 tools、instructions、model
├── requirements.txt # Python 依赖
├── eval/
│ ├── eval_dataset.jsonl # Eval 测试集
│ └── eval_config.yaml # Eval 配置
├── deploy/
│ ├── deployment.yaml # 部署配置
│ └── secrets.yaml # 密钥配置
└── .agents/
└── skills/ # 7 个 injected skillsStep 3:安装 Skills 到你的 Coding Agent
# 在项目根目录执行
npx agents-cli skills install
# Skills 会安装到:
# - .agents/skills/(通用)
# - .claude/skills/(Claude Code)
# - .cursor/skills/(Cursor)
# 同时通过 symlink 链接到你使用的所有 Agent现在打开 Claude Code / Cursor,Agent 已经知道怎么搭 ADK Agent 了。
Step 4:让 Coding Agent 搭建你的 Agent
# 在 Claude Code / Cursor 里:
"用 /scaffold skill 搭建一个 expense-tracker agent,
它能记录费用、分类、查询月度报表,
数据存在 Cloud Firestore 里。"Coding Agent 会读取 scaffold skill 的指引,生成 agent.py:
from google.adk import Agent, Tool
def log_expense(amount: float, category: str, description: str) -> dict:
"""Log a new expense to Cloud Firestore."""
# ... Firestore 写入逻辑
return {"status": "logged", "amount": amount, "category": category}
def get_monthly_report(month: str, year: int) -> dict:
"""Query expenses for a given month and generate a report."""
# ... Firestore 查询逻辑
return {"month": month, "year": year, "total": total, "by_category": breakdown}
agent = Agent(
name="expense-tracker",
model="gemini-2.5-flash",
instructions="""You are an expense tracking assistant.
Help users log expenses, categorize them, and generate monthly reports.
Always confirm the amount and category before logging.""",
tools=[log_expense, get_monthly_report],
)Step 5:本地测试
# 用 eval skill 的指引运行本地测试
npx agents-cli test
# 或用 ADK 的内置 dev server
adk dev --port 8080
# 打开 http://localhost:8080 交互式测试你的 AgentStep 6:写 Eval 数据集
# 在 Claude Code / Cursor 里:
"用 /eval skill 为 expense-tracker 写一个 eval 数据集,
覆盖以下场景:
1. 正常记录费用
2. 金额为负数(应该拒绝)
3. 类别不在预定义列表中(应该建议替代)
4. 查询不存在月份的报表(应该返回空而不是报错)
5. 同一天记录超过 50 条费用(应该警告)
"Coding Agent 会生成 eval/eval_dataset.jsonl:
{"input": "记录午餐 35 元,类别餐饮", "expected_behavior": "should call log_expense with amount=35, category=food", "pass_criteria": "expense logged successfully"}
{"input": "记录 -100 元退款", "expected_behavior": "should reject negative amount", "pass_criteria": "error message about invalid amount"}
{"input": "记录打车费 50 元,类别交通", "expected_behavior": "should call log_expense with amount=50, category=transport", "pass_criteria": "expense logged successfully"}
{"input": "查询 2026 年 13 月的报表", "expected_behavior": "should reject invalid month", "pass_criteria": "error message about invalid month"}
{"input": "记录办公耗材 200 元", "expected_behavior": "should suggest category 'office_supplies' and ask for confirmation", "pass_criteria": "category suggestion presented"}运行 eval:
npx agents-cli eval run
# 输出:
# Test case 1/5: [PASS]
# Test case 2/5: [PASS]
# Test case 3/5: [FAIL] Agent logged the expense without confirming category
# Test case 4/5: [PASS]
# Test case 5/5: [PASS]
#
# Summary: 4/5 passed (80%)
# Failures: see eval/results/failure_analysis.mdStep 7:安全审查
# 在 Claude Code / Cursor 里:
"用 /security skill 审查 expense-tracker 的安全风险。"Coding Agent 会检查:
- Agent 是否有过度权限(比如能删除 Firestore collection)
- 工具调用的输入验证是否充分
- 是否有数据泄露风险(比如返回其他用户的数据)
- 密钥是否硬编码(应该用 secrets.yaml)
Step 8:部署
# 部署到 Agent Runtime(Google 的全托管运行时)
npx agents-cli publish gemini-enterprise
# 或部署到 Cloud Run
npx agents-cli publish cloud-run
# 或部署到 GKE
npx agents-cli publish gke部署完成后你会得到一个 Agent Runtime ID,可以直接通过 API 调用你的 Agent。
Agents CLI 的部署目标对比
| 部署目标 | 适合场景 | 需要管理服务器 | 冷启动 |
|---|---|---|---|
| Agent Runtime | 生产环境,全托管 | 否 | 无 |
| Cloud Run | 需要自定义容器 | 否 | 有(按需扩缩) |
| GKE | 大规模、需要完全控制 | 是 | 无(常驻) |
大多数情况选 Agent Runtime 就够了:全托管,不需要管服务器,自带 scale to zero。
成本估算
Agent Runtime 定价
- 免费层:每月一定量的请求免费
- 付费层:按请求量 + token 用量计费
具体取决于你用的模型:
| 模型 | 输入价格 | 输出价格 | 适合场景 |
|---|---|---|---|
| Gemini 2.5 Flash | $0.15/百万 token | $0.60/百万 token | 高流量、低延迟 |
| Gemini 2.5 Pro | $1.25/百万 token | $10.00/百万 token | 复杂推理、高质量 |
月费估算
| 场景 | 月请求量 | 模型 | 月费 |
|---|---|---|---|
| 内部工具 | 1 万次 | Flash | ~$5 |
| 小型 SaaS | 10 万次 | Flash | ~$50 |
| 中型产品 | 100 万次 | Flash/Pro 混合 | ~$300-800 |
| 大规模 | 1000 万次 | Flash | ~$2000 |
Agents CLI 和 Karpathy 方法论的映射
把整个过程画成一个循环:

Agents CLI 自动化的部分:scaffold、build、test、eval、deploy 仍然是人工的部分:spec design、diff review、security oversight、taste/judgment
实话实说:Agents CLI 的限制
-
Google Cloud 绑定:部署目标只有 Agent Runtime / Cloud Run / GKE。如果你想部署到 AWS Lambda 或自己的服务器,得自己写部署流程。
-
Agent Runtime 是 Google 专有的:你的 Agent 运行在 Google 的基础设施上,数据和模型都走 Google。如果你的公司有云厂商策略限制,这可能是个问题。
-
Eval 生态还在早期:eval 的数据集格式、评估指标、失败分析方法都还在快速迭代。现在用的格式半年后可能变了。
-
不覆盖 Agent 的运行时监控:部署上去之后,Agent 的响应质量、错误率、用户满意度,这些需要你自己搭监控。
-
Skill 的质量取决于 ADK 本身:7 个 Skill 教的是 Google ADK 的模式。如果你不用 ADK(比如你用 LangGraph 或 CrewAI),这些 Skill 帮不了你。
谁应该用这个工具
适合你如果:
- 你在用 Google Cloud(或愿意迁移)
- 你想用 Claude Code / Cursor / Gemini CLI 让 AI 帮你搭 AI Agent
- 你认同 Karpathy 的 agentic engineering 理念(spec → eval → review 循环)
- 你的 Agent 需要接入真实数据源(Firestore、BigQuery、Google Search 等)
不适合你如果:
- 你不用 Google Cloud(AWS 用户没有对应的部署目标)
- 你的 Agent 只是本地工具,不需要部署
- 你用的是 LangGraph / CrewAI / AutoGen 等非 ADK 框架
- 你还在 vibe coding 阶段,不需要 eval 和结构化流程
快速开始:3 分钟跑通
# 1. 安装
npm install -g @google/agents-cli
# 2. 创建项目
npx agents-cli init my-first-agent
# 3. 进入项目,安装 skills
cd my-first-agent
npx agents-cli skills install
# 4. 打开你的 Coding Agent(Claude Code / Cursor)
# 说:"用 /scaffold skill 搭建一个简单的 weather agent"
# 5. 本地测试
npx agents-cli test
# 6. 部署(需要先配好 Google Cloud 项目)
npx agents-cli publish gemini-enterprise参考资源
- google/agents-cli — GitHub(Apache 2.0 开源)
- Agents CLI in Agent Platform — Google Developers Blog
- Build an agent with ADK and Agents CLI — Google Cloud Docs
- Agent Runtime — Gemini Enterprise Agent Platform
- Google ADK 官网
- How to Write a Good Spec for AI Agents — Addy Osmani
- Agentic Engineering: Beyond Spec-Driven Development — Medium



