📌 本文是「AI Agent 的人类控制权」系列的第 1/5 篇。本篇建立问题意识:为什么 Agent 能动手就需要控制权。第二篇给出三层分析框架,第三篇用框架做六大框架体检,第四篇深入工程实现,第五篇讨论前端设计与 Automation Bias。另有番外篇讲微软 Agent 框架的分裂与统一。
——当 AI Agent 能操作世界,我们如何保持控制权
你让 Agent 帮你整理会议纪要,它觉得顺便把纪要发给全公司比较高效。你让 Agent 清理测试数据库,它对"测试"和"生产"的理解跟你不太一样。你让 Agent 帮你订机票,它在三个网站上用你的信用卡下了三个订单,因为它想"对比一下再选最好的"。
这些不是假想场景。当 Agent 获得调用外部工具的能力——发邮件、执行SQL、调用API、操作文件——它就从一个"说话的AI"变成了一个"能动手的AI"。动手就意味着后果。后果不可逆,控制就变成刚需。
这是这个系列的第一篇。我们要讨论的不是"Agent 能做什么",而是一个更基本的问题:Agent 在什么条件下应该被允许自己做决定,什么时候必须停下来等人?
OpenClaw:当 Agent 能动手但没有刹车
2026 年初爆火的 OpenClaw 是一个现成的案例。这个开源 Agent 能读邮件、执行终端命令、部署代码、调用 API——72 小时拿下 60,000 GitHub Stars,用户让它在睡觉时自动处理工作。
然后问题来了。Cisco 的安全团队发现,攻击者可以在邮件中嵌入恶意指令(prompt injection),让 Agent 在用户完全不知情的情况下外泄数据。CrowdStrike 警告,暴露的 OpenClaw 实例可能被劫持为"AI 后门代理"。
这里需要区分两类问题。OpenClaw 被审计出的 512 个代码漏洞是传统软件安全问题,HITL 解决不了。但 Agent 被 prompt injection 欺骗后执行恶意操作——这正是 HITL 的管辖范围。 如果框架在 Agent 尝试执行 Shell 命令或发送数据时强制暂停等待人类确认,即使模型的判断被绕过,高风险动作仍然会被拦截。OpenClaw 缺的不只是代码质量,更是一层"不管模型怎么想,危险操作必须过人"的硬控制。
从对话到执行:一个范式跃迁
OpenClaw 的爆火不是偶然的——它踩中了一个时代转折点。2024 年初的 ChatGPT 和 2025 年底的 Agent 生态,差距不在于"更聪明",而在于能力边界的性质变了。
ChatGPT 的能力边界是"说"。它可以说错话,但说错话的代价通常可控——你看到了,觉得不对,忽略就好。最坏的情况是浪费了你的时间。
Agent 的能力边界是"做"。它能发邮件、改代码、删文件、下订单、调用第三方 API。做错事的代价不可控——邮件发出去了就是发出去了,数据库 DROP 了就是 DROP 了,钱花出去了就是花出去了。
这个跃迁带来了一个根本性的不对称:
问题的核心不是 Agent 会不会犯错——它一定会,就像人类也会犯错。问题是犯错后的后果是否可逆,以及人类是否有机会在后果发生之前介入。
“告诉它小心点"够吗?
最直觉的解决方案是在 System Prompt 里写清楚规则:
“在执行任何有副作用的操作之前,先告知用户并获得确认。对于涉及金钱、数据删除、对外通信的操作,必须等待用户明确批准。”
这确实有用。大多数时候,一个足够好的 LLM 会遵守这些指令。但"大多数时候"在生产环境中不够。
System Prompt 是建议,不是约束。模型可以忽略它——不是因为它"想"忽略,而是因为在足够长的上下文、足够复杂的推理链、或者遇到 prompt injection 的情况下,指令的影响力会衰减。这是 LLM 的统计本质决定的,不是某个模型的 bug。
OpenClaw 的遭遇正是这个弱点的实证。Cisco 测试中发现的 prompt injection 攻击,就是利用了 Agent 处理的外部数据(邮件、网页)来嵌入恶意指令,绕过了 Agent 的安全提示。
Agent-SafetyBench(Zhang et al., 2024)的研究给出了更系统的数据:他们测试了 16 个主流 LLM Agent,没有一个的安全评分超过 60%。更关键的发现是——仅依赖 defense prompts 不足以解决安全问题。
这意味着如果你的安全机制完全建立在"模型会遵守 system prompt 里的规则"这个假设上,你的系统在最需要保障的时刻(异常情况、边界场景、对抗性输入)恰恰最不可靠。
两道防线,而不是一道
成熟的工程系统从不依赖单一的安全机制。飞机有自动驾驶,也有飞行员可以随时接管的物理控制杆。核电站有自动控制系统,也有物理的紧急停堆按钮。这不是因为自动系统不好,而是因为**“足够好"和"绝对可靠"之间的差距,在高风险场景中不可接受**。
Agent 的 HITL(Human-in-the-Loop)也需要两道防线:
第一道:模型侧的"软控制”
通过 System Prompt 和工具描述(tool description),引导模型在大多数情况下主动判断何时需要人类介入。比如在工具描述里写明"此工具会发送真实邮件,调用前应确认收件人”,模型通常会照做。
软控制的优势是灵活——模型能理解语义和上下文,能处理你没预见到的新场景。劣势是不可靠——它是概率性的,不是确定性的。
第二道:框架侧的"硬控制"
在 Agent 框架的代码层面,对特定工具调用强制拦截。不管模型怎么判断,当 Agent 试图调用 send_email 或 execute_sql 时,框架在代码级别暂停执行,等待人类审批。
硬控制的优势是确定性——它是代码逻辑,不依赖模型的判断,100% 会触发。劣势是不灵活——它只能处理你预先定义了规则的场景。
一个具体的例子。你的 Agent 有一个 send_email 工具:
- 软控制:工具描述里写"发送前请先向用户确认收件人和内容"。模型在正常情况下会先把邮件草稿展示给你。
- 硬控制:框架配置里把
send_email标记为risk_level: high,任何情况下调用前都会暂停执行,弹出审批请求。
两道防线同时存在。正常情况下,模型主动询问你(软控制生效,体验流畅)。异常情况下——比如 prompt injection 让模型跳过了确认步骤——框架依然会拦住(硬控制兜底,安全保障)。
值得注意的是,Claude Code 是目前为数不多同时实现了两道防线的产品:模型侧,Claude 被训练为在不确定时主动提问;框架侧,用户可以配置 allowlist/denylist 来硬性控制哪些工具允许自动执行。而 OpenClaw 的 prompt injection 问题,正是因为它主要依赖第一道防线(模型判断),缺少第二道防线(框架级强制拦截)来兜底。
| 软控制(模型侧) | 硬控制(框架侧) | |
|---|---|---|
| 执行者 | 模型自己判断 | 框架代码强制执行 |
| 可靠性 | 概率性——模型可能忽略 | 确定性——100% 拦截 |
| 灵活性 | 高——理解语义和上下文 | 低——只能基于预设规则 |
| 能否被绕过 | 能(prompt injection、上下文稀释) | 不能(模型无法绕过代码逻辑) |
| 覆盖场景 | 新场景、灰色地带 | 已知的高风险操作 |
| 代表案例 | Claude Code 模型侧升级 | LangGraph interrupt() |
| 反面教训 | OpenClaw 被 prompt injection 穿透 | CrewAI 缺少工具级审批 |
软控制管"应该",硬控制管"必须"。两者互补,缺一不可。
不只是审批:人类的三张面孔
讲到这里,你可能觉得 HITL 纯粹是一个安全机制——防止 Agent 干坏事。但实际上,人类在 Agent 系统中的角色远不止"审批官"。
想想这些场景:
场景一:Agent 在帮你做市场调研,中途遇到一个它无法判断的问题:“竞品的这个功能是 Bug 还是 Feature?"——它需要你提供信息才能继续。
场景二:Agent 帮你写了一份报告的初稿,你觉得方向对但论证太弱——你需要修正它的输出,让它基于你的反馈重写。
场景三:Agent 执行到一半,你改主意了,想换一个完全不同的方向——你需要直接改变它的状态,而不是从头再来。
这三个场景中,人类的角色完全不同:
- 场景一里你是信息提供者——Agent 缺信息,你来补
- 场景二里你是质量把关者——Agent 做完了,你来评
- 场景三里你在直接操控状态——Agent 的方向错了,你来改
把这些都笼统地叫"HITL”,就像把"刹车"、“方向盘"和"导航"都叫"驾驶辅助"一样——技术上没错,但对设计没有任何指导意义。
Agent 系统中的人类,至少扮演三种不同的角色。每种角色对应不同的介入时机、不同的触发方式、不同的工程实现。 把它们区分开来,才能为每种角色设计正确的机制。
这正是下一篇要展开的内容。
小结
这篇的核心论点:
- Agent 能调工具 = 有外部副作用 = 需要控制机制。 这是从对话式 AI 到 Agent 的本质变化。OpenClaw 的爆火和随之而来的安全危机,是这个转变的最生动注脚。
- System Prompt 不够。 模型侧的软控制灵活但不可靠,框架侧的硬控制确定但不灵活。生产环境需要双层防御,缺一不可。
- HITL 不只是安全审批。 人类在 Agent 系统中扮演多种角色——提供信息、把关质量、修正方向。笼统地说"加个 HITL"没有工程意义,需要系统化的分类框架。
下一篇,我们把"HITL"这个黑箱打开。
这是「AI Agent 的人类控制权」系列的第一篇。 完整系列: