Show HN:OneCLI – 开源凭证网关,让 AI 代理不接触机密
摘要
OneCLI 是一个开源凭证网关,它能透明地将机密注入 AI 代理的请求,使 API 密钥对代理保持隐藏。
嗨,HN 的朋友们,我们是 Jonathan 和 Guy,OneCLI 的创建者(<a href="https://onecli.sh/">https://onecli.sh/</a>)。OneCLI 是一个面向 AI 代理的开源保险库。<p>传统保险库用于存储你的秘密,并按需以安全方式提供给你,同时信任用户会妥善保管。我们意识到,在代理的世界里情况并非如此——因为你不知道秘密交给代理后会发生什么,它会被保存在哪里,甚至可能被操纵着交出来……<p>基于这一认识,我们决定构建一个位于 AI 代理和它们调用的服务之间的网络网关。OneCLI 按主机/路径匹配请求,验证代理是否具有访问权限,将占位符替换为真实的凭证,然后转发请求。秘密可以存储在 OneCLI 保险库中(静态加密),也可以从你的 Bitwarden/1Password 钱包实时获取。<p>演示视频:<a href="https://www.youtube.com/watch?v=5e5pbPEzZfY" rel="nofollow">https://www.youtube.com/watch?v=5e5pbPEzZfY</a>。<p>我们开始做这件事纯属偶然,尽管我们的职业生涯都在安全领域。我们当时在开发一个名为 ChartDB 的开源数据库工具。今年一月 OpenClaw 兴起时,我们开始用它来在 ChartDB 之上编排代理。很快我们发现认证存在一个大问题:代理需要凭证来完成实际工作,但直接把秘密交给它们并非最佳选择——它们会把秘密记在内存中,还会以明文形式写入本地文件和会话。而且我们知道,代理很容易被骗取这些 API 密钥/秘密。因此,我们需要一种方式来控制代理,防止提示注入诱骗代理为攻击者滥用服务。不向代理提供密钥,同时对敏感操作添加警报或人工介入,以防有人操纵代理,并对访问日志进行审计。<p>我们每天都在使用它。我的 OpenClaw 通过 Attio、Gmail 和日历管理我的日常工作,敏感操作需要人工批准。这种批准在网络层强制执行,因此无论代理是通过 MCP、CLI、curl 还是它即时编写的代码来执行,都同样有效。Guy 用它来审查 PR,但未经他批准无法合并。<p>目前公司主要将其用于编码代理——这些代理会想尽各种办法提升权限以达到目标。有了 OneCLI,代理发现什么都没用:如果请求不在策略之内,就无法通过。<p>代理是用 Rust 编写的,仪表盘基于 Next.js,秘密使用 AES-256-GCM 进行静态加密。所有组件都在 Docker 容器中运行。它适用于任何代理框架(Claude Code、Codex、Cursor、OpenClaw、Hermes,或任何可以设置 HTTPS_PROXY 的工具)。<p>它无法阻止代理滥用其合法拥有的访问权限,因此请严格限定策略范围!<p>欢迎提问。我们相信不能信任模型的行为,必须设定确定性规则来保持控制。欢迎评论!
查看缓存全文
缓存时间: 2026/07/24 05:02
AI代理的秘密保险库。一次存储,随处注入。代理永远看不到密钥。
网站 · 文档 · Discord
相似文章
Show HN: 轻量级多AI代理对话方案,无需API付费
一种轻量级模式,用于编排多个AI代理(Claude、Codex、Gemini)之间的对话,通过CLI实现,无需API付费,利用会话恢复来维持跨代理交互的上下文。
你的 AI 代理历史记录正悄悄存储你粘贴进去的 API 密钥
一位开发者指出,AI 代理的历史文件会存储粘贴到提示中的 API 密钥,并介绍了一款开源命令行工具,可在本地扫描并遮盖这些密钥。
开源用于AI代理的Shell级别安全层
开源一个Shell级别的控制层,该层阻止危险命令、暴露虚假秘密并强制执行运行时策略,使AI代理在开发环境中更安全、更确定。
@IBuzovskyi: https://x.com/IBuzovskyi/status/2057914816015249515
Nous Research 发布了两个用于 AI 代理安全的基础设施组件:Bitwarden Secrets Manager 集成用于集中凭证管理,以及 iron-proxy 用于凭证保护,为自主代理形成了一个分层安全模型。
HKUDS/CLI-Anything
CLI-Anything 是一个开源框架,能够自动为任何软件生成命令行界面,使其对 AI 智能体可访问。它包含一个社区构建的 CLI 中心,并支持多种 AI 智能体平台。