企业落地
Agent 的工具调用,哪些能按规则自动放行、哪些必须拦下
建立工具调用自动审批机制,需要将调用分为代码边界检查、规则自动放行与人工兜底三层。系统应核查具体的命令参数,不看模型的自我解释,对敏感路径与写操作严格把关,并在每次放行或拦截时留存完整的审计日志。

工具调用自动审批分三层。第一层,代码直接拒掉不该问人的调用,比如参数不合法、路径越出允许范围。第二层,按规则自动放行低风险调用。第三层,其余调用拦下交人。每次放行或拦截都记一条日志,写明命中哪条规则。审批看的是调用本身,不看模型说明的理由。

审批放在哪:先做代码边界检查,不打扰人工
审批层要嵌入在参数解析之后、工具执行之前。
密歇根大学 2026 年秋季课程 EECS 498-016《Applied Agentic Software Engineering》由 Marcus Darden 主讲。课程讲义写到,审批步骤依次是解析参数、代码做边界检查、人决定允许或拒绝、执行或把拒绝作为结果返回;参数不合法直接返回错误,路径在仓库外直接拒绝,不问人。
我们建议企业照这个顺序搭建审批管线。如果参数格式缺失,或者请求访问的工作目录超出了预设范围,底层代码直接拦截并返回错误信息,完全不需要打扰人工。只有通过了基础合法性检查的调用,才进入下一步的规则与人工分流。
读操作也要算风险:敏感文件设拦截条件,防内容外传
读取本地文件与内部数据同样存在外泄风险,不能默认全部放行。
课程讲义写到,起步阶段每次调用都要停下来问人,读操作也不例外。原因是读取文件会把内容放进下一次请求的上下文中,如果使用托管模型端点,文件内容就离开了本机;而且仓库里的敏感配置文件也能通过基础的目录边界检查。之后的规则会自动放行大部分读操作。
在企业真实环境中,配置文件经常包含私有令牌、数据库连接串与业务密钥。一旦模型读取这类文件并将其送入外部托管模型,机密信息便存在外泄可能。
我们建议企业给敏感配置文件、密钥目录和系统凭证单独设拦截条件,在确认路径不涉及机密资产后,再放行其它常规的读操作。
哪些能自动放行、哪些要拦:按动作后果分层管理
自动放行应当局限于影响面可控的低风险调用,产生不可逆后果的写操作则由人工接管。
我们建议企业根据动作类型划分放行范围。比如,读取只读业务文档、查询公开信息、在隔离目录中写入临时测试数据,这类不破坏外部状态的调用可以自动放行。
涉及删除关键数据、对外发送邮件或工单、发起付款结算、安装外部软件包,以及在终端中执行刚从外部下载来的脚本,应当当场拦下交由人工复核。
企业开放工具权限的阶段性节奏,可参考 企业给 Agent 开工具权限,先开哪类、后开哪类。至于高风险外联操作中哪些环节要保留人工介入,见 CRM 外联 Agent 发信前,哪几步要留人工审批。变更签字和接入外部服务器前的审查属于另外的流程,本文不展开。
审批看什么:看命令参数本身,不看模型解释
审批层判断一次调用的风险,依据是调用的具体命令与参数,不能听信模型自己的总结。
课程讲义写到,要向审批端展示完整调用,如果是写文件要给出差异对比,而不是只给字节数,不用模型自己的总结。当一次调用被拒绝时,系统返回一条带理由的工具消息,让模型明确知道调用被拒。
课程讲义还写到,批准的是命令,不是解释;第一版审批层会相信模型陈述的用途,课程把这一点列为后面专门攻击的弱点。
我们的判断是:模型的自我解释可能出错,受到恶意指令诱导时还可能编出合规的理由。审批逻辑只能对照真实生成的参数与代码差异进行规则匹配。
每次调用记日志并持续加固:回溯误放与误拦
工具调用自动审批的规则要靠日志持续调整。
课程大纲列了规则自动审批加决策日志,后半学期设有权限策略及其失效方式的专门讲题,还有一次实验专门加固第一版审批层。课程大纲还写到,一场黑客松里,学生看着自己的 Agent 无人值守地跑,检验自动放行规则写得好不好。
我们建议企业在日志中记录四项关键字段:调用的具体命令、命中哪条规则、判定为放行还是拦截、以及处理理由。运维团队定期回溯审计日志,排查是否存在不该放行的漏网操作,或者是否误拦了正常的业务指令,据此迭代更新规则库。审批层只管单次调用,整次运行什么时候该停,见 无人值守的 Agent 跑到什么程度该停:Agent 停止条件怎么定。
工具调用自动审批:常见问题
为什么不能把每次工具调用的决定权都交给人工,而要引入自动审批?
我们的判断是:在真实业务中,Agent 完成一项长链路任务往往要调用很多次工具。如果每次简单的文件读取或目录检索都要人工在屏幕前点击允许,人工很快会成为系统运行的瓶颈,审批人也容易疲劳而随手放行。通过代码边界检查与明确的放行规则过滤掉大量低风险调用,既能保障自主运行的流畅度,又能让人工专注于真正高危的破坏性动作。
为什么向人工展示审批信息时,要展示代码差异而不是模型总结?
我们的判断是:模型生成的文本总结可能遗漏微小却关键的参数变化,甚至在受到提示词干扰时给出具有误导性的说明。比如模型在总结中声称只是更新了配置注释,但实际生成的差异补丁中却修改了数据库端口或删除了校验逻辑。直接向人工审批界面推送代码差异对比与精确入参,让人类审批者看清文件改了哪几行、请求发往什么地址,能防范总结与实际行为脱节的风险。
团队在初次搭建自动化审批层时,如何梳理最核心的拦截规则?
我们建议从影响面最大、最难补救的动作入手,先定三类直接拦下的条件:第一,包含删除、清空以及格式化等不可逆动作直接拦截;第二,目标路径涉及系统环境配置、凭证密钥或生产数据库连接的文件写入直接拦截;第三,包含外部网络请求且目标不属于内部受信名单的访问直接拦截。这三类定好后,再按业务逐步放行其它常规操作。
