Google详解generate_image工具在Agent技能中的应用,包括提示词分词策略与实际案例,并给出三个视觉资产反模式。
通过将原生图像生成与结构化 prompt 合成直接耦合,你可以将 AI Agent 从文本生成器转变为图像工作室,生产出基于开发者规范构建的干净、一致的图像。
以下是这篇深度解析将为你呈现的内容:
如何在 Agent 技能中使用 generate_image 工具。
用于一致图像生成的 Prompt 分词策略。
一个可用的真实案例技能完整拆解。
额外赠送:Agent 工作流中需要避免的三个视觉资源反模式。
📝 关于本系列:欢迎阅读 Elevating Antigravity Agent Skills 系列,这是 mastering agent 工具的 5 篇工程指南,这些工具可以减少编排税并将 AI Agent 转化为自主协作者:ask_question、generate_image、define_subagent + invoke_subagent、send_message 和 manage_subagents。
许多人在构建 Web 应用、开发者工具或组件库时,都曾用过灰色占位符来等待示例视觉资源。
这正是 generate_image 工具的用武之地。当 Antigravity Agent 执行 generate_image 时,它会将文本 prompt 和视觉参数合成为图像,直接保存到对话 artifacts 存储中。
直接将未经处理的 prompt 无结构地传递给 generate_image 会导致不一致。通过在技能的 prompt 生成器中编码光照、相机和场景规格,你的 Agent 产生的图像将始终与你的意图匹配。
原生制品渲染和上下文存储
在深入技能创作之前,让我们回顾一下 Antigravity 如何管理生成的媒体。
当 generate_image 运行时,系统自动将输出资源保存到对话的内部 artifacts 目录(<appDataDir>/brain/<conversation-id>/)。该工具返回绝对文件路径,允许你的技能使用标准 markdown 语法在聊天回复中直接渲染资源:。
图像生成工作流参考演示
要看到这个架构的实际运作,让我们检视一个 generating-mock-images 技能的示例。以一个植物和花卉电商商店为例,这个技能生成模拟产品资源,显示生成的图像供交互审查,并处理工作区资源持久化。

图 1:当我们提示"创建白色百合的模拟照片"或"……茉莉",或"……彩色玫瑰"时,generating-mock-images 技能被 Agent 自动发现并读入上下文。该技能指示 Agent 遵循我们创建的 playbook。
.agents/skills/generating-mock-images/
├── SKILL.md
该技能将选定的产品主题(用户提供的室内植物或插花布置)与技能中详细编码的摄影参数配对:
### 1. Synthesize Prompt & Call `generate_image`
Construct the final image prompt by combining subject with photography specifications:
> "Professional studio product photograph of [SUBJECT]. [SCENE: smooth matte light gray surface, seamless background curve with soft infinite horizon, visible water line in vase]. [CAMERA: macro lens photography, sharp focus from front to back, f/11 aperture, crisp details, zero digital noise]. [LIGHTING: three-point soft-diffuse lighting, 48-inch octagonal softbox key light at 45 degrees, gentle fill light, backlit soft ambient glow, no harsh glare, premium e-commerce product catalog style]."
按照技能指令,Agent 自动创建并向 generate_image 发出结构化工具调用。以下是该结构化工具调用的模拟表示:
{
"Prompt": "Professional studio product photograph of elegant floral arrangement of fresh seasonal blooms in a clear glass vase filled with crystal-clear water. SCENE: smooth matte light gray surface, seamless background curve with soft infinite horizon. CAMERA: macro lens photography, sharp focus, f/11 aperture, crisp details, zero digital noise. LIGHTING: three-point soft-diffuse lighting, 48-inch octagonal softbox key light at 45 degrees, gentle fill light, backlit soft ambient glow, premium e-commerce catalog style.",
"ImageName": "mock_flower_plant",
"AspectRatio": "1:1",
"toolAction": "Generating floral arrangement mock product image",
"toolSummary": "Generate mock flower product image"
}
注意,此示例中未展示但 generate_image 原生支持视觉构图。将最多三个绝对文件路径传入 ImagePaths 数组参数,指示 Agent 将现有 logo、背景纹理或参考线框图混合到合成图形中。
在从 generate_image 接收到生成的图像路径后,Agent 立即在聊天中渲染该资源:

在我之前的文章《用交互式 UI 工作流提升 Antigravity Agent 技能》中,我阐明了如何将被动 Agent 转化为主动面试官,使用 ask_question 工具。通过提前对开发者进行询问,我们消除了 prompt 歧义。
Agent 不是假设生成的资源立即可以投入生产,而是使用 ask_question 提示开发者:
Invoke `ask_question` tool:
* Question: "What would you like to do with this generated mock image?"
* Options: ["Keep", "Regenerate", "Exit"]
如果开发者批准了该资源,Agent 将文件从临时 artifacts 存储复制到 <workspace>/public/images/<image_filename>,并返回一个可点击的 markdown 链接:
[mock_flower_plant.png](file://<WORKSPACE_ROOT>/public/images/mock_flower_plant.png)
如果开发者选择删除或重新生成,Agent 会清除临时 artifacts 以防止未筛选资源的积累。
如果你的 Agent 将未筛选的 artifacts 直接倾倒到生产资源路径,你不是在自动化设计,而是在自动化视觉技术债务。
🎁 额外赠送:Agent 视觉资源生成中的三个反模式(不仅限于此)
当你将 generate_image 等昂贵的工具调用集成到自动化开发者工作流中时,遵循以下三条规则以保持一致性和效率:
避免将原始用户输入直接传递给 generate_image。在你的技能内部构建一个 prompt 生成器,注入特定参数(如场景、光照、相机和风格偏好),以确保跨运行的可确定性输出。
使用 generate_image 返回的绝对 artifacts 路径,并将批准后的图像移动到永久位置。将资源存储在临时目录(/tmp)中会导致上下文窗口清除或工作区会话重启时链接衰减。
在触发 generate_image 之前,指示你的技能检查目标 ImageName 是否已存在有效资源。在参数未更改的情况下重新运行图像生成会浪费计算预算并减慢工作流执行。
🚀 开发者挑战:将此工作流进一步推进!
既然你已经掌握了使用 generate_image 进行参数化图像生成,这里有一个工程挑战可以将你的视觉资源技能提升到下一个层次:
构建自动化多宽高比资源套件生成器。
目前,我们的技能要求用户在 prompt 中包含细节。
使用 ask_question 工具扩展你的技能的 prompt 生成器,以接受目标布局预设(如 Hero Banner、Product Card、Mobile Thumbnail)或宽高比(如 1:1、2:1、4:3、16:9)。
使用 ask_question 工具扩展你的技能的 prompt 生成器,以接受目标布局预设(如 Hero Banner、Product Card、Mobile Thumbnail)或宽高比(如 1:1、2:1、4:3、16:9)。
使用 ImagePaths 参数将预制的参考图像传递给 generate_image,来扩展你技能的 prompt 生成器。你可以包含最多 3 张图像。
使用 ImagePaths 参数将预制的参考图像传递给 generate_image,来扩展你技能的 prompt 生成器。你可以包含最多 3 张图像。
你尝试了这个挑战吗?在下方评论区分享你的技能策略!
静态文本描述和破碎的图像图标属于上一代开发者工具。通过在 generate_image 中利用参数化资源生成,你赋予你的 Agent 生产干净、一致且视觉 grounded 的技术制品的能力。
今天花 15 分钟审计你的组件脚手架和资源生成技能。
📌 Elevating Antigravity Agent Skills 系列索引
Part 1: Building interactive UI workflows with ask_question
Part 2: Automating Image Generation with generate_image (📍 You are here)
Part 3: Invoking Subagents with define_subagent, invoke_subagent
Part 4: Inter-Agent Communication with send_message
Part 5: Managing Active Agent Lifecycles with manage_subagents
Tool Reference: List of supported Antigravity tools
Example Source: source code
Help others find this post
Save this post to find it later.
Subscribe to my newsletter and don't miss an article.
Share this article across social media.
Follow me on LinkedIn or X for more agentic engineering insights.
For further actions, you may consider blocking this person and/or reporting abuse