Outpost – 基于能力的AI代理凭证代理(Hermes, Openclaw)
Outpost 是一个基于能力的 AI 代理凭证代理,允许代理使用秘密而不拥有它们。它提供 Python 和 TypeScript 两种运行时,可通过 Cloudflare Workers 或 Docker 部署,并强制执行速率限制、源 IP 检查、敏感写入门控等策略。它解决了 AI 代理通过提示注入泄露 API 密钥的问题。
随着AI代理在编程、运维等领域广泛应用,传统的凭证管理方式面临严峻挑战。当代理需要访问GitHub、Slack、Stripe等API时,通常直接使用环境变量中的API密钥,这为提示注入攻击留下了巨大隐患。恶意用户可能通过构造特定PR或内容,诱使代理输出所有环境变量,从而导致机密泄露。
Outpost项目应运而生,它是一个基于能力的凭证代理,核心思想是“代理应获得能力,而非凭证”。代理通过Outpost代理所有API请求,只需声明需要做什么,而无需接触底层密钥。Outpost在代理与第三方API之间充当反向代理,负责注入认证信息、过滤请求、实施IP限制、速率限制,并生成结构化审计日志。
Outpost提供两种运行时:Python(FastAPI+Redis,支持插件扩展)和TypeScript(Hono+Redis/KV,可部署到Node和Cloudflare Workers)。两者共享相同的YAML配置格式和安全性模型,用户可根据部署目标选择。部署方式极其灵活:可在几分钟内通过Cloudflare Workers全球部署(免费层支持每日10万次请求),或通过Docker在任何VPS上自托管。
其安全模型的关键在于,代理永远不拥有密钥。即使代理被完全攻陷,攻击者也无法获取底层凭证。Outpost内置了敏感写入门控(自动标记POST/PUT/DELETE/PATCH请求)、路径白名单/黑名单、源IP CIDR白名单、以及多窗口原子速率限制等策略。此外,还支持10种内置认证模块(Bearer、Basic、API密钥、HMAC、OAuth2客户端凭证等),并通过Python/TS插件扩展支持TOTP、SigV4等自定义方案。
与常见的MITM正向代理方案(如Infisical/Agent Vault、mikekelly/gap)相比,Outpost无需安装CA证书,无需TLS拦截,只需更改base URL并添加X-Provider头部,大大简化了部署和安全信任模型。
项目提供了丰富的示例:3行YAML即可定义GitHub、Slack、Jira等提供商,且支持透明转发模式(默认直接转发所有路径)和严格白名单模式。对于希望进一步强化控制的用户,可以逐步添加路径限制、缓存TTL、分类速率桶等高级配置。
Outpost的出现恰逢其时——2023年AI助手编写代码,2024年AI代理开始使用工具,2025年AI代理开始操作生产系统。代理的爆炸半径呈数量级增长,而安全模型却未跟上。Outpost为生产环境中安全运行AI代理提供了重要保障。