我的 AI 助手偷偷花了 20 块钱:一次 AI Agent 失控事件的完整复盘
当 AI 开始自主调用付费 API,谁来为账单买单?
事件起因
前几天准备续费阿里云的 Coding Plan,登录控制台的时候,发现账户里多了一笔约 20 元的账单。

点进去一看,计费项是「大模型图片生成量」,模型是 qwen-image-2.0,时间是 6 月 24 日中午 12 点。
我愣住了。
我的 Coding API Key 理论上是不可以调用生图模型的。我也完全没有印象在 6 月 24 号让谁生成过图片。
排查过程
我唯一配置过这个 API Key 的地方,是阿里云百炼的 CLI 工具(bailian.console.aliyun.com/cli[1])。
那是 6 月 4 号安装的,当时测试了一下 bl file upload 功能(免费),发现生成的 URL 是 oss:// 格式,不能直接用浏览器打开,就放着没管了。
之后再也没有用过。
我也没有让 OpenClaw 去调用过百炼的 bl image generate 命令。
所以这次的事情显得非常奇怪。
求助阿里云
我给阿里云提了工单,售后工程师通过 IP 地址帮我确认了调用来源:
「您好,这边查到调用的 IP 地址是 XXX,用户的提示词都是一些风景图的生成。」
我确认了,那确实是我的 OpenClaw 服务器。

工程师建议我删除 API Key,并设置 IP 白名单以防盗用。
但我心里清楚:不是被盗用,是我自己的 AI 干的。
深入调查
回到服务器,我翻遍了所有日志,终于找到了完整的证据链。
6 月 24 日 11:55 — 心跳触发
我的 OpenClaw 系统里有一个 doc-agent(文档处理代理),平时用来处理文档任务。它有一个定时心跳检查机制。
在某个历史 session 中,残留了一个「生成 100 张图片」的任务指令。当心跳运行时,这个任务被恢复了。
11:56 — 第一次尝试失败
AI 首先尝试使用内置的图片生成工具,但全部失败:
| 模型 | 错误 |
|---|---|
| Google Gemini | 配额超限(HTTP 429) |
| MiniMax | API Key 无效 |
| OpenAI GPT Image | API Key 无效 |
| OpenRouter | 用户未找到 |
AI 甚至给我发了一条消息:「批量生成 100 张图片的任务遇到了阻塞,所有图像生成模型的 API 凭证均无效。」
但我没有看到这条消息。
11:59 — 自主切换方案
在内置工具全部失败后,AI 自主决定切换到阿里云百炼 CLI(bl image generate)。
这个 CLI 是 6 月 4 号安装的,API Key 还有效。
12:01-12:14 — 批量调用
AI 启动了 10 个并行子代理,每个负责生成 10 张图片(共 100 张),主题包括:
🌿 自然风光 🏛️ 建筑 🎨 抽象艺术 👤 人像 🏞️ 风景 🚀 科幻 🐉 奇幻 🍕 美食 🐾 动物 💻 科技
13 分钟内,103 次 API 调用,97 次成功,6 次因限流失败。
账单确认
阿里云百炼控制台的账单显示:
产品:大模型服务平台百炼 服务:百炼大模型推理 计费项:大模型图片生成量 模型:qwen-image-2.0 时间:2026-06-24 12:01 ~ 12:14 总费用:约 18 元

根因分析
1. AI 可以自主调用付费 API
AI Agent 拥有执行 shell 命令的权限,可以直接调用 bl image generate 等付费工具,无需人类确认。
2. 没有费用控制机制
没有单次调用费用上限 没有每日/每月预算限制 没有批量调用的审批流程
3. Fallback 机制绕过安全边界
当主方案失败时,AI 自动切换到备用方案,这个过程中没有触发任何安全审查。
4. 历史任务残留
某个已结束的 session 中残留了「生成 100 张图片」的指令,心跳检查时恢复了该任务。
给 AI Agent 用户的警示
⚠️ 风险 1:AI 会自主花钱
如果你的 AI Agent 有权限调用付费 API(图片生成、语音合成、视频生成、大模型推理等),它可能会在无人监督的情况下产生费用。
⚠️ 风险 2:Fallback 可能绕过限制
即使你配置了主方案的费用限制,AI 可能会在失败时自动切换到没有费用的备用方案。
⚠️ 风险 3:历史任务可能复活
Session 状态中残留的指令可能在未来的心跳检查或任务恢复中被重新执行。
⚠️ 风险 4:并行调用放大损失
AI 可以启动多个并行子代理同时执行任务,10 个子代理 × 10 张图片 = 100 次调用,费用瞬间放大。
防护建议
1. 费用审批机制
任何涉及付费 API 的调用,必须经过人类确认才能执行。
# 示例规则
- 单次调用费用 > 1 元 → 需要确认
- 批量调用 > 10 次 → 需要确认
- 每日总费用 > 10 元 → 需要确认
2. 预算限制
为每个 AI Agent 设置每日/每月预算上限,超出后自动停止调用。
3. 权限最小化
只给 AI Agent 必要的工具权限。如果不需要图片生成,就不要配置相关 API Key。
4. 定期审计
定期检查:
API 调用日志 费用账单 Agent 的 session 状态 历史任务残留
5. 禁用不用的 Agent
如果某个 Agent 已经不再使用,直接禁用或删除,避免意外触发。
6. API Key 安全
设置 IP 白名单 定期轮换 Key 不用时及时删除
我的修复措施
事件发生后,我立即采取了以下措施:
✅ 删除了阿里云百炼 CLI 的 API Key ✅ 卸载了百炼 CLI 工具 ✅ 移除了相关的 Skill 安装 ✅ 禁用了 doc-agent(已很久未使用) ✅ 在 AGENTS.md 中添加了规则:禁止未经确认的批量 API 调用
写在最后
这次事件虽然只损失了 20 块钱,但暴露了一个严重的问题:AI Agent 的自主决策能力与费用控制机制之间存在巨大鸿沟。
随着 AI Agent 越来越强大,它们会被赋予更多工具权限,调用更多付费 API。如果没有完善的费用控制机制,类似的「意外账单」可能会频繁发生。
这不是 AI 的错,是我们在赋予 AI 能力时,没有同步建立相应的约束机制。
希望这次事件能给大家提个醒:在享受 AI 带来便利的同时,别忘了给它们装上「刹车」。
作者:一枫
2026 年 7 月 6 日
引用链接
[1]bailian.console.aliyun.com/cli: https://bailian.console.aliyun.com/cli
夜雨聆风