最近 Apple 对 macOS 的权限机制做了一些调整,其中一个非常值得关注的方向,就是对 Full Disk Access(完全磁盘访问) 这类高权限进行更严格的控制。表面上看,这是一次普通的系统权限调整,但如果放到 AI Agent 的背景下来看,我觉得它背后其实透露出了一个非常重要的趋势:AI Agent 最大的问题,可能已经不是智商,而是权限。
过去我们讨论 AI,最喜欢聊的是模型有多聪明。推理能力怎么样,代码能力怎么样,能不能理解复杂需求,能不能自己规划任务。但 AI Agent 和普通聊天机器人最大的区别,就是 Agent 不只是回答问题,它需要进入真实的软件和系统,读取数据、调用工具、修改文件、操作浏览器,甚至执行代码。
这就意味着,一个 Agent 到底有多强,不仅取决于模型本身,还取决于它到底能够接触什么、操作什么。
AI 越聪明,权限问题反而越严重
想象两个 Agent。
第一个 Agent 非常聪明,但它只能读取你主动上传给它的文件;第二个 Agent 智商稍微低一点,但它拥有邮箱、代码仓库、本地文件、浏览器、数据库等权限。
如果让它们完成一个真实的工作任务,很多时候第二个 Agent 反而更有价值。因为现实世界里的任务,本来就不是简单的问答。你让 Agent 帮你整理邮件,它需要读取邮箱;让它修改代码,它需要访问代码仓库;让它分析公司的数据,它需要访问数据库;让它部署服务,它甚至需要服务器权限。
所以 Agent 的能力其实可以简单理解成:智能 × 工具 × 数据 × 权限。
模型负责思考,工具负责执行,数据提供上下文,而权限决定 Agent 到底能走多远。
这也是为什么我觉得 Apple 最近对高权限的收紧值得关注。过去,一个软件拥有大量权限,风险主要来自软件本身。但 Agent 不一样,它拥有理解、推理和自主执行能力。
一个普通软件拿到你的文件访问权限,可能只是按照程序逻辑读取文件;一个 Agent 拿到同样的权限以后,它可能会自己决定读取哪些文件、分析哪些内容、关联哪些信息,然后根据这些信息进一步执行操作。
权限一旦和 AI 的自主决策能力结合起来,风险就完全不一样了。
过去我们问的是"软件能访问什么",以后可能要问"Agent 能做什么"
传统软件时代,权限模型其实比较容易理解。
一个 App 能不能访问相册?能不能使用摄像头?能不能访问麦克风?能不能读取文件?
因为传统软件不会自己思考,所以我们更多关注的是"它能访问哪些资源"。
但 Agent 时代的问题开始发生变化。
我们不能只问:
这个 Agent 能访问什么?
还必须问:
这个 Agent 能基于这些数据做什么?
这两个问题看起来很接近,实际上完全不同。
比如一个 Agent 可以读取你的邮箱,这本身似乎没什么问题。但如果它还拥有发送邮件的权限,事情就发生了变化。
它可以发现客户要求周五交付,然后自己回复客户:"没问题,我们周五上线。"
这时候它已经不再是信息助手,而是在替你做决定。
再比如一个 Agent 可以读取服务器日志,这也没什么问题。但如果它同时拥有服务器操作权限,那么它可能发现磁盘快满了,然后自己删除一些"看起来没用"的日志。
如果删掉的是关键数据呢?
所以 Agent 真正危险的地方,不是它看到了什么,而是:
它看到了这些东西以后,可以做什么。
Agent 的错误,开始从"回答错误"变成"现实世界错误"
这是 AI Agent 和传统 AI 最大的区别之一。
以前 ChatGPT 告诉你一个错误答案,最多浪费你几分钟时间。
但 Agent 的错误可能直接改变现实世界。
它写错代码,可以提交到仓库;它理解错需求,可以给客户发错邮件;它执行错 SQL,可以修改生产数据;它部署错服务,可以直接导致线上故障。
所以随着 Agent 能力越来越强,我们真正需要解决的问题就变成了:
什么事情可以让 Agent 自动做?什么事情必须经过人确认?
这也是为什么现在越来越多 Agent 系统开始强调 Approval、Human in the Loop、Sandbox、Audit 等机制。
Agent 可以自己规划任务,也可以自己执行很多操作,但到了某些高风险节点,必须让人确认。
比如读取文件可以自动,删除文件需要确认;查询数据库可以自动,修改数据库需要确认;创建代码可以自动,合并生产代码需要确认;生成邮件可以自动,真正发送出去之前需要确认。
这看起来降低了 Agent 的自动化程度,但实际上恰恰是 Agent 真正走进生产环境的前提。
真正成熟的 Agent,不是"什么都能自动做",而是"知道什么事情可以自动做,什么事情必须获得授权"。
Agent 可能需要一套全新的权限系统
传统软件的权限通常是资源级别的。
比如:
读取文件
访问摄像头
访问麦克风
访问网络
但 Agent 的权限很可能需要进一步细化成"行为级权限"。
例如一个 Coding Agent,不应该简单地拥有"GitHub 权限",而应该明确区分:可以读取代码,可以创建分支,可以提交代码,可以创建 Pull Request,但不能合并生产分支,也不能删除仓库。
数据库也是一样。
与其说"允许 Agent 访问数据库",不如明确规定它只能 SELECT,不能 DELETE;可以读取订单表,但不能读取用户密码;可以访问测试数据库,但不能修改生产数据库。
你会发现,这时候 Agent 的权限已经开始从传统的"资源权限",逐渐变成"行为权限"。
而这可能会成为未来 Agent 基础设施非常重要的一部分。
Agent 时代可能出现一种新的身份:Agent Identity
过去互联网解决了一个问题:
你是谁?
于是有了账号、OAuth、RBAC、IAM 等一整套身份和权限体系。
但未来我们可能还需要解决另一个问题:
这个 Agent 是谁?
它代表谁工作?它属于哪个组织?它从谁那里获得权限?它可以操作哪些资源?哪些操作需要用户确认?它做过什么事情?如果出了问题,应该追责到谁?
比如一个企业内部的 Coding Agent,可以拥有这样的权限:
Agent:Coding Agent
Owner:开发团队
代码仓库:
✓ 读取
✓ 创建分支
✓ 提交代码
✓ 创建 PR
✗ 合并生产代码
数据库:
✓ 查询
✗ 修改
部署:
✓ 测试环境
✗ 生产环境
邮件:
✓ 创建草稿
✗ 自动发送
这其实已经非常像一个"数字员工"的权限系统了。
而我认为,这可能就是未来 Agent 基础设施真正值得关注的方向之一。
AI Agent 的竞争,可能正在从"模型竞争"走向"权限竞争"
过去几年,AI 公司主要在比模型。
谁的模型更聪明,谁的推理更强,谁的上下文更长,谁的 Coding Benchmark 更高。
但当模型能力逐渐进入一个新的阶段以后,Agent 的竞争可能会发生变化。
因为一个超级强大的模型,如果只能回答问题,它依然只是一个很聪明的聊天机器人。
而一个普通一些的模型,如果可以安全地访问你的邮箱、代码、数据库、浏览器和企业系统,它反而可能成为真正能够替你工作的 Agent。
所以未来 Agent 的核心问题可能不再只是:
"模型 IQ 有多高?"
而是:
"我们敢给它多少权限?"
这其实是一个非常有意思的矛盾。
Agent 越有用,就越需要权限;权限越大,风险就越高;风险越高,我们就越不敢给权限。
所以未来真正重要的,不一定是让 Agent 拥有无限权限,而是建立一套机制,让我们可以放心地给 Agent 更多权限。
这可能比单纯提升模型能力更加重要。
Agent 时代真正缺的,可能是一套"权限操作系统"
如果把未来的 Agent 基础设施拆开来看,我觉得至少会出现几个非常重要的部分:Identity 解决"Agent 是谁",Permission 解决"Agent 能做什么",Policy 解决"什么情况下可以做",Approval 解决"哪些事情需要人确认",Audit 解决"Agent 做过什么",Sandbox 解决"即使 Agent 犯错,影响范围有多大",Rollback 解决"出了问题能不能恢复"。
这些东西组合起来,才真正构成了一个可控的 Agent 系统。
所以如果你现在正在做 Agent,我反而觉得,与其每天关注"哪个模型又提升了多少 Benchmark",不如开始认真考虑一个问题:
如果我真的把这个 Agent 当成一个员工,我敢给它什么权限?
如果答案是"什么都不敢给",那它大概率还是一个聊天机器人。
如果答案是"我敢让它访问数据、调用工具、修改代码、执行任务,但每一个权限都有边界,而且关键操作需要确认",那么它才真正开始接近我们想象中的 AI Agent。
最后
我越来越觉得,AI Agent 下一阶段真正需要证明的,不是 AI 有多聪明,而是 AI 有多值得被信任。
模型解决的是"能不能做到",Agent 解决的是"能不能自己完成",而权限解决的是:
"我们敢不敢让它完成。"
所以未来 Agent 的核心竞争力,可能不只是 Model、RAG、Memory、Tool Calling 这些能力,还会越来越依赖 Permission、Policy、Approval、Audit。
毕竟,一个没有权限的超级智能,只能站在门外。
而一个拥有所有权限、但我们不敢信任的超级智能,同样无法真正进入我们的工作和生活。
Agent 真正的终局,可能不是无限智能,而是可控的智能。