Gemini Managed Agents hooks 怎么用:沙箱内拦截与审计工具调用

Gemini API Managed Agents 新增环境 hooks,可在沙箱内 pre/post 工具调用时跑脚本拦截或审计。本文说明配置形态、预算封顶,以及和 Claude Code hooks 的差异。

Gemini Managed Agents hooks 怎么用:沙箱内拦截与审计工具调用

Google 在 2026-07-28 的更新说明里,把 Managed Agents 往“可治理的远程工人”再推了一步:默认模型切到 Gemini 3.6 Flash,并加上 environment hooks、预算控制、定时触发与免费层试用。若你已经在用远程沙箱跑 agent,hooks 解决的是“校验逻辑没地方跑”的老问题。

Managed Agents 你在买什么

一次 Interactions API 调用,可在隔离云沙箱里协调推理、代码执行、装包、文件与网页检索。你不必自建整套 VM 编排,但也把执行环境放到了厂商侧——治理就要靠 hooks、网络规则与预算,而不是本机 settings.json 独角戏。

默认 agent(文档中的 antigravity-preview-05-2026)会跟到 3.6 Flash;也可在 agent_config.model 指定 3.5 Flash 或 Flash-Lite 降本。

hooks:在工具调用前后插入你的脚本

在环境里放置 .agents/hooks.json,对 pre_tool_execution / post_tool_execution 注册 handler。matcher 支持正则,例如只盯 code_execution|write_file,或用 * 全量。

典型用法:

  • 安全门pre 脚本返回 {"decision":"deny","reason":"..."} 则跳过工具,并把原因喂回模型上下文。
  • 自动 lintpost 对写入文件跑格式化或静态检查。
  • 业务校验:OffDeal 案例用 post_tool_execution 在沙箱内做 logo 像素与视觉校验——远程沙箱以前跑不了这套流水线,hooks 之后可以。

也支持 http 型 handler,把事件 POST 到外部端点。细节以官方 hooks 文档为准。

和 Claude Code hooks 怎么区分

维度 Gemini Managed Agents Claude Code
运行位置 远程沙箱内 本机 / 项目配置
典型目的 云端工具治理、预算、定时 本地开发流自动化
配置 .agents/hooks.json settings / hooks 配置

排查本机 Claude hooks 不触发,见 Claude Code hooks 排查;不要把两套路径的文件名混用。

预算与定时:防 runaway

托管 agent 是多轮自治循环,账单可以跑飞。agent_config.max_total_tokens 可封顶输入+输出+thinking;触顶后 status: "incomplete",环境状态保留,可用 previous_interaction_id 加新预算续跑。

定时 trigger 则把 agent、环境、prompt、cron 绑成持久资源,适合周期性审计或报告;注意同一沙箱文件会跨次保留,别把密钥写进可持久目录。

最小落地顺序

  1. 免费层或小预算项目跑通一次 Interactions 调用。
  2. 只加一个 pre 门禁(例如拒绝未允许的网络域名或写路径)。
  3. 再加 max_total_tokens,观察 incomplete 续跑是否符合预期。
  4. 最后才上定时任务。

常见问题

hooks 失败会怎样?

以官方 failure semantics 为准:超时、非零退出、无效 JSON 可能直接阻断或放行,取决于文档版本。上线前用故意 deny 的脚本测一遍。

免费层能用于生产吗?

适合试验。生产仍要预算、审计与密钥隔离;免费层额度与稳定性预期按控制台说明。

会不会替代 Claude Code / Codex?

定位不同:Managed Agents 偏 API/云沙箱工人;Claude Code / Codex 偏开发者本机或 IDE 工作流。可以并存。

参考资料