## 代码即所有:一种更简单的AI代理方法
当前的AI代理领域复杂多样,充斥着各种工具、记忆协议和技能。然而,一种激进的简化方案正在出现:**将代理限制为单一工具——代码执行。** 这种方法认为,“技能”是*学习的结果*,而非基础要求。
不同于提示代理*做*某事,仅代码代理*编写并运行代码*来实现目标。这意味着没有`bash`、`ls`或`grep`——只有`execute_code`。好处是什么?代理会生成一个“代码见证”——一个可重复、可验证的脚本——而不仅仅是答案。这允许对解决方案进行精确分析、调试和重用。
这种范式转变了关注点,从代理*使用哪些工具*转移到代理*生成什么代码*。虽然看似具有限制性,但它强制执行了一个可信赖的过程,尤其是在计算密集型任务中,传统代理常常会采取捷径或产生幻觉。
未来可能将这种方法与代理编排(例如使用自然语言来协调仅代码代理)和混合工具结合起来,将意图的技能与代码的精确性相结合。最终,提示和编程之间的界限可能会消失,从而带来更可靠、更强大的AI代理。
成功的AI代理应用现在依赖于建立“反压”——质量和正确性的自动化反馈循环。这使得代理能够通过自我纠正来处理更复杂、更长期的任务,而不是不断需要人工干预。
关键在于为代理配备超越基本编辑的工具;例如构建系统、类型检查、UI渲染比较(通过Playwright/Chrome DevTools等工具),甚至形式化验证系统如证明助手。这些工具使代理能够独立验证其工作并从错误中学习。
投资于强大的测试和反馈机制可以显著提高工程效率。工程师不必手动审查琐碎的错误(如缺少导入),而是可以专注于更高级的问题。具有强类型系统和有帮助的错误信息的语言尤其有价值,以及像规范驱动开发和自动文档生成用于比较等技术。
最终,将反压构建到工作流程中对于扩展代理的贡献并最大化其潜力至关重要。 否则,工程师可能会浪费宝贵的时间在重复的错误纠正上。
## 代理编码工具沙箱:安全摘要
像Claude Code这样的代理编码工具提供强大的功能,但也引入了安全风险。将这些工具视为网络问题至关重要——关注它们访问的不可信内容、它们如何进行外部通信以及它们暴露的敏感数据。
虽然存在沙箱技术(如`sandbox-exec`、gVisor或Firecracker VM),但仅仅允许列出命令是不够的。即使使用防火墙,域名伪装和提示注入等漏洞也可能导致数据泄露。默认配置通常授予对环境变量和工作目录中文件的访问权限,可能暴露机密信息。
一个关键的缓解策略是使用HTTP代理(如mitmproxy)来拦截和控制网络流量。这允许在沙箱请求*之后*注入凭据,防止工具直接访问敏感API密钥或其他机密信息。像Formal这样的工具可以进一步解耦身份并强制执行细粒度的最小权限原则。
最终目标是最小化受损沙箱的“爆炸半径”。通过仔细控制网络访问并利用代理,组织可以显著降低这些强大但潜在危险的工具造成敏感数据泄露的风险。