概述
trustless 是一个凭据代理 CLI,将 AI 代理与其使用的密钥解耦。传统方案中,代理会在上下文窗口里持有明文凭据(可能因提示注入或泄露而暴露);而 trustless 作为中间层:代理只按名称引用凭据,由 broker 在传输层/进程层解析实际值——代理永远不会持有明文值。
名称体现了架构思想:你不需要信任代理来保管密钥,因为代理在结构上就无法接触它们。
为什么用 trustless?
传统的 AI 代理配置会让代理直接访问凭据——无论是环境变量、配置文件,还是内联在提示词中。这意味着一次提示注入或过于冗长的调试输出就可能把密钥泄露给攻击者或不受信任的第三方 API。
trustless 反转了这一模型:代理说「使用 GITHUB_TOKEN」,broker 解析出值,代理只看到 API 响应——永远看不到密钥本身。
传统方式: agent → 看到密钥 → 使用密钥 → 密钥进入上下文 → 提示注入泄露
↑ 代理是受信任主体
trustless: agent → 说「使用 GITHUB_TOKEN」 → broker 解析 → agent 拿到 API 响应
↑ 代理是不可信调用方,broker 才是权威
竞品对比
「让密钥远离 AI 代理」这个领域已有多个工具。trustless 是唯一一个把子进程注入 + 输出脱敏、集成 DLP(出站请求脱敏)、现有密码管理器后端(pass / Bitwarden) 组合进单一零依赖二进制的工具。
| trustless | tene | vaulty | agent-secrets | secretless-ai | enject | |
|---|---|---|---|---|---|---|
| 注入方式 | 子进程 env + HTTP 代理 | 子进程 env | HTTP 代理 + MCP | 子进程 env(lease) | env + shell hook | 子进程 env |
| 现有后端(pass/Bitwarden) | ✅ | ❌ 自带 vault | ❌ 自带 vault | ❌ 自带 vault | ❌ keychain/1Password | ❌ 自带 vault |
| 输出脱敏 | ✅ run + proxy | ❌ | ✅ | ❌ | ❌ | ❌ |
| DLP(出站脱敏) | ✅ 集成 | ❌ | 部分(request) | ❌ | ❌ | ❌ |
| OAuth 令牌管理 | ✅(google/lark, refresh) | ❌ | ❌ | ❌ | ❌ | ❌ |
| 审计日志(结构化) | ✅ | ❌ | ✅ file | ✅ append-only | ❌ | ❌ |
| 随附 Agent 技能 | ✅ 4 种 | ✅ context files | 仅 MCP | ✅ skill | ✅ rules | ❌ |
| 依赖 | 0(单一二进制) | Go static | Go static | Go static | npm/npx | Go static |
| 许可证 | MIT | MIT | MIT | MIT | Apache-2.0 | MIT |
tene / vaulty / agent-secrets / secretless-ai / enject 按 2026 年 8 月状态对比。
实际差异:tene 或 enject 解决的是「代理读不到 .env」。trustless 还解决「代理运行命令时看不到密钥」(输出脱敏)和「代理调用 API 时密钥不会从机器外泄」(DLP)。如果你已经在用 pass 或 Bitwarden,无需迁移——trustless 直接读取你现有的存储。