发现 AI 代理的未来

OneCLI

收录于 2026年5月4日
智能体与应用工具
开源
RustNext.jsMCPAI代理Web应用CLI智能体与应用工具协议/API/集成安全/隐私

面向 AI Agent 的开源凭证保管库与安全网关,实现密钥的透明拦截与零接触注入。

项目概述#

OneCLI 是一个专为 AI Agent 设计的开源凭证保管库与安全网关,核心理念为 "Store once. Inject anywhere. Agents never see the keys."。当多个 AI Agent 需要调用数十个外部 API 时,传统硬编码密钥方式存在极高泄露风险,OneCLI 通过透明拦截机制解决这一问题。

核心能力#

透明凭证注入#

Agent 发出包含占位符(如 FAKE_KEY)的普通 HTTP 请求,Rust 网关自动拦截并替换为真实密钥(REAL_KEY),Agent 永远不接触真实密钥。支持 HTTP 请求头和 URL 查询参数两种注入位置,同时支持 WebSocket 连接的凭证注入。

凭证安全与存储#

采用 AES-256-GCM 算法对密钥进行静态加密存储,仅在网关处理请求时实时解密。Rust 网关支持 MITM(中间人)拦截,可处理加密的 HTTPS 流量。

路由与匹配机制#

基于目标主机名(Host)和路径(Path)模式将凭证精准路由到正确的 API 端点。

多租户与权限管控#

  • 每个 Agent 拥有独立的访问令牌和权限范围(scoped permissions)
  • 双认证模式:单用户模式(本地使用,无需登录)和 Google OAuth(团队使用)
  • 审计日志:对敏感操作进行审计记录

外部集成#

  • Bitwarden Vault 联动:可连接 Bitwarden 密码管理器,按需拉取凭证注入,无需在服务器上持久化存储密钥
  • OAuth 流程集成:网关可自动处理 App Connection 与 OAuth 流程并注入凭证(代码中可见 Google Calendar、YouTube、OpenAI 等集成)

架构设计#

AI Agent ──HTTP请求(FAKE_KEY)──▶ Rust Gateway (:10255) ──凭证替换──▶ 外部 API
                                     │
                                     ▼
                               Web Dashboard (:10254)
                               (Next.js + Prisma + PostgreSQL)
                                     │
                                     ▲
                               Bitwarden Vault (可选)

核心模块#

  • Rust Gateway (apps/gateway/):高速、内存安全的 HTTP 网关,负责请求拦截与凭证注入,核心性能瓶颈模块
  • Web Dashboard (apps/web/):基于 Next.js 构建的管理界面与内部 API,管理 Agent、密钥映射及权限解析
  • Secret Store (packages/db/):基于 Prisma + PostgreSQL 的存储层,处理密钥的 AES-256-GCM 加解密与匹配逻辑
  • 共享 UI (packages/ui/):基于 shadcn/ui 的共享组件库

工程化机制#

  • 采用 pnpm workspace + Turborepo 进行 Monorepo 构建
  • 使用 mise 统一管理 Node.js、pnpm、Rust 等工具版本
  • 通过 Husky Git Hooks + Prettier 保障代码质量,CI/CD 依赖 GitHub Actions

安装部署#

一键安装(推荐)#

curl -fsSL https://onecli.sh/install | sh

Docker 部署#

git clone https://github.com/onecli/onecli.git
cd onecli
docker compose -f docker/docker-compose.yml up -d --wait

部署完成后:

  • Web Dashboard:http://localhost:10254
  • Rust Gateway:http://localhost:10255

快速上手:打开 Dashboard → 创建 Agent → 添加密钥 → 将 Agent 的 HTTP 网关指向 localhost:10255

本地开发#

前置依赖:mise、Rust、Docker(PostgreSQL)。

mise install && pnpm install
cp .env.example .env
pnpm db:generate && pnpm db:up && pnpm db:migrate
pnpm dev

关键配置#

环境变量说明默认行为
DATABASE_URLPostgreSQL 连接字符串需参照 .env.example 配置
NEXTAUTH_SECRET配置后启用 Google OAuth 多用户模式未配置则为单用户模式
GOOGLE_CLIENT_IDGoogle OAuth 客户端 ID
GOOGLE_CLIENT_SECRETGoogle OAuth 客户端密钥
SECRET_ENCRYPTION_KEYAES-256-GCM 加密主密钥系统自动生成

Agent 通过 Proxy-Authorization 请求头携带访问令牌与网关进行认证。

适用场景#

  • AI Agent 密钥集中管控与安全隔离
  • 多 Agent 团队协作与权限划分
  • 结合 Bitwarden 等密码管理器的按需凭证拉取
  • 作为 MCP 及 AI 工具链的安全凭证中间件
  • 密钥轮换与集中管控:一处修改密钥,所有 Agent 自动生效

待确认事项#

官方网站(onecli.sh)和文档站(docs.onecli.sh)在调查期间均无法访问(DNS 解析失败),无法确认是否为临时故障或已下线。以下信息存在不确定性:生产环境部署最佳实践、完整的外部服务集成列表、Windows 平台支持情况、Discord 社区具体链接。

保持更新

获取最新的 AI 工具和趋势,直接发送到您的收件箱。没有垃圾邮件,只有智能。