概要
trustless は、AIエージェントとシークレット(APIキー・認証情報)を構造的に分離するCredential Broker CLIです。 エージェントは「この認証情報を使って」と名前で指示するだけで、実際の値は broker がトランスポート/プロセス層で解決します。 エージェントは平文の認証情報を決して保持しません。
名前の由来は「エージェントを信頼する必要がない」= agent を trusted principal と見なさず、broker が権限の源泉になる設計思想から来ています。
従来: agent → キーを見る → キーを使う → キーがコンテキストに残る → 漏洩
↑ agent を信頼する前提
trustless: agent → 「GITHUB_TOKENを使って」→ broker が解決 → agent はAPI応答のみ
↑ agent は信頼しない caller、broker が権限の源泉
競合比較
「AIエージェントからシークレットを遠ざける」領域には複数のツールがあります。trustless は サブプロセス注入と出力サニタイズ・統合DLP(送信リクエストの秘匿化)・ 既存パスワードマネージャバックエンド(pass / Bitwarden) を、単一静的バイナリ(外部モジュールは go-toml/v2 の1つのみ・ランタイム不要)に 組み合わせた唯一のツールです。
| trustless | tene | vaulty | agent-secrets | secretless-ai | enject | |
|---|---|---|---|---|---|---|
| 注入方式 | サブプロセス env + HTTP proxy | サブプロセス env | HTTP proxy + 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 | ❌ |
| 依存関係 | 1(go-toml/v2, pure Go) | 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 は既存ストアを読みます。