AI 代理在云端沙箱运行的实测发现与工程踩坑记录
我们针对托管云沙箱平台进行了全面的实机探针测试:长连接 WebSocket 表现稳定,但彻底切断出网流量会导致代理瘫痪。架构随之调整为适应真实云平台的运行特性。
最初的设想曾认为运行代理的机器可以完全切断外网出站连接。真实的探针集群给出了截然不同的答案,驱动整个系统架构做出了务实的演进。
一切依托于 WebSocket 长连接
代理运行在交互式终端中,终端本质上是双向流。托管平台完美支持 HTTP 协议升级并在双向持续传递数据帧。
GET /?identifier=<id>&api-version=2024-02-02-preview
Authorization: Bearer <token>
101 Switching Protocols
frames server to client, and client to server未携带合法凭证的请求会直接被拦截为 403 Unauthenticated,确保执行机本身不存在未受保护的公开攻击面。
出站流量不可被硬性切断
切断出站网络会导致代理无法调用大模型 API、无法连接代码托管仓库,也无法与控制端通信。因此系统隔离必须来自机器内部持有的数据剥离,而非粗暴的网络切断。
云平台的物理约束比主观的架构设计更能决定系统的最终形态。
工程实测总结
在确立技术方案前必须先行验证基础设施的真实行为,将网络传输细节与上层应用协议解耦,以获得最大的架构灵活性。
相关架构设计请参阅 运行代理的机器不保留秘密,终端连接管理请参阅 观察不属于你的终端。
直接回答
是否可以在托管云沙箱上运行 AI 编程代理?
可以。实测表明托管平台能够良好支持终端所需的持久 WebSocket 双向长连接。
为什么要实地探针测试而非仅查阅文档?
因为在代理出网需求、身份认证 Audience 和连接生命周期等关键细节上,实际运行表现与初步设想存在显著差异。
实测促成了哪些架构调整?
放弃了通过网络层硬切断出网的设想,转而在应用架构层面剔除数据库与解密密钥,保障安全的同时确保代理能正常访问大模型 API。