你的 AI 编程代理不应该看到你的 API 密钥。

trustless 让凭据远离代理的上下文窗口。密钥在进程层注入、从输出中脱敏、在出站流量中被掩码 —— 代理拿到的是 API 响应,永远不是密钥。

Go零依赖单二进制MIT321 tests (-race)cosign 签名 · SBOM
curl -fsSL https://raw.githubusercontent.com/ikkun1222/trustless/main/scripts/install.sh | sh

Linux / macOS · 直接读取你现有的 pass / Bitwarden 存储 —— 无需迁移,无需新 vault

为什么用 trustless

AI 编程代理(Claude Code、OpenCode、Codex)需要 API 密钥才能调用服务。传统配置把密钥放进 .env 或代理的环境变量 —— 这意味着密钥存在于代理的上下文窗口里,提示注入或过于啰嗦的调试日志都可能把它泄露出去。

trustless 反转了这个模型:代理只按名称引用密钥,由 broker 在进程层/传输层解析真实值。代理永远不会持有明文。

传统方式:   agent → 看到密钥 → 使用密钥 → 密钥进入上下文 → 泄露
trustless:  agent → 说「使用 GITHUB_TOKEN」→ broker 解析 → agent 拿到 API 响应

四层结构

trustless run

把凭据作为环境变量注入子进程,然后对 stdout/stderr 脱敏 —— 原始值、base64、URL 编码变体都不会出现在代理可见的输出里。

trustless proxy

按主机注入 header/query 的 HTTP 正向代理(EDINET、e-Stat、xAI、OpenRouter 等)。HTTPS 走 MITM。代理端无需改配置。

trustless serve

面向任何 OpenAI 兼容端点的集成 DLP 反向代理。出站 LLM 请求经过模式扫描(关键词 → RE2 → 熵检测),在离开机器前被掩码。SIGHUP 热重载。

trustless dlp scrub

预防总会失败,所以还有擦除。对会话数据库和日志做两层脱敏(已知值 + 模式),FTS 重建 + VACUUM —— 字节真正消失,而不是藏起来。

OAuth 令牌(Google、Lark)自动刷新,每次解析都会写入追加式结构化审计日志(文件或 journald)。

竞品对比

「让密钥远离 AI 代理」这个领域已有多个工具。trustless 是唯一一个把子进程注入 + 输出脱敏集成 DLP(出站脱敏)现有密码管理器后端组合进单一零依赖二进制的工具。

trustlesstenevaultyagent-secrets
注入方式子进程 env + HTTP 代理子进程 envHTTP 代理 + MCP子进程 env(lease)
现有后端(pass/Bitwarden)❌ 自带 vault❌ 自带 vault❌ 自带 vault
输出脱敏✅ run + proxy
DLP(出站脱敏)✅ 集成部分(request)
OAuth 令牌管理✅(google/lark, refresh)
依赖0(单一二进制)Go staticGo staticGo static
许可证MITMITMITMIT

对比基于 2026 年 8 月状态。

为什么可以信任它

完整的文档、安装方式和设计文档在 GitHub 仓库—— 也可以直接浏览本站的 文档。 发现了漏洞或缺失的层级?开个 issue —— 这个项目的全部意义就在于:威胁模型是移动的目标。