
Claude Code、OpenClaw、Hermes、カスタムエージェント+ハーネスなどのAIエージェント向けのHTTP認証情報プロキシおよび保管庫。
HTTPクレデンシャルプロキシ&ボールト
Infisical によるオープンソースのクレデンシャルブローカーで、エージェントとそれらが呼び出すAPIの間に位置します。
エージェントはクレデンシャルを保持すべきではありません。Agent Vaultはブローカーアクセスにより、クレデンシャル流出リスクを排除します。
初めてですか? ローンチブログ記事でAgent Vaultの全貌をご覧ください。
ドキュメント | インストール | チュートリアル | ビデオデモ | Slack
従来のシークレット管理では、アプリケーションやサービスにクレデンシャルを返却していました。しかしAIエージェントでは、プロンプトインジェクションによって騙されてシークレットを漏洩する可能性があります。これがクレデンシャル流出の問題です。
Agent Vaultは、すべてのAIエージェントのクレデンシャル流出を解決するために作成されました。AIエージェントに直接クレデンシャルを与える代わりに、Agent Vaultに(例:ANTHROPIC_API_KEY、GITHUB_PATなど)保存し、エージェントにHTTPリクエストをAgent Vault経由でルーティングさせます。Agent Vaultはすべてのリクエストを傍受し、クレデンシャルを添付してから対象の外部APIに転送します。
機能:
__anthropic_api_key__ のようなヘッダーのダミー値を実際のクレデンシャルに置換したり、通過する外部リクエストの認証ヘッダーを完全に置き換えることで、そのアクセスをブローカーできます。HTTPS_PROXY を使用するようにブートストラップし、Agent VaultのMITMアーキテクチャと互換性を持たせることで、インターフェースに依存しない非侵襲的なアプローチでクレデンシャルブローカーを行います。mitmproxy や squid など)は、クレデンシャルブローカーを実行しエージェントとうまく統合するために修正が必要です。Agent Vaultは、専用CLI、マルチテナンシー、そしてInfisical がバックアップするエージェント固有のロードマップを備え、あらゆるタイプのエージェントユースケースの人間工学に合わせて専用に設計されています。デフォルトでは、どのサービスにも一致しないリクエストは通常のプロキシトラフィックとして転送されます。ボールトを厳格な拒否モード(unmatched_host_policy=deny)に切り替えると、代わりに403で拒否されます。
Agent Vaultの背景にある全ストーリーはこちらをご覧ください。
Agent Vaultは、セキュアなリモートコーディングエージェント、汎用エージェント、カスタムエージェント+ハーネス、セキュアな一時サンドボックスなど、あらゆる種類のAIエージェントのユースケースで動作します。
ANTHROPIC_API_KEY と GITHUB_PAT をAgent Vaultに設定することで、Claude CodeがAnthropicおよびGitHub APIと連携してコーディングやPRの作成などを行えるようになります。同じ原則が他のコーディングエージェントにも適用されます。Agent Vaultはボールト兼プロキシサービスであり、サーバー兼CLIクライアントとして動作する単一のバイナリとして提供されます。クレデンシャルを保存し、MITMプロキシアーキテクチャを使用してAIエージェントにブローカーします。設計上、Agent VaultはAIエージェントとは別のマシンにデプロイされることを意図しており、AIエージェントがAgent Vault内のクレデンシャルに直接アクセスできないようにするためのセキュリティ保証を提供します。
┌─────────────────────────────────────────────────────────────────┐
│ Public internet │
│ │
│ api.anthropic.com api.github.com api.stripe.com ... │
│ ▲ ▲ ▲ │
└──────────┼───────────────────┼──────────────────┼───────────────┘
│ │ │
└───────────────────┼──────────────────┘
│ outbound HTTPS, Agent Vault
│ injects credentials on the way out
┌──────────────────────────────┼──────────────────────────────────┐
│ Private network │ │
│ │ │
│ ┌───────────────────────────┴────┐ ┌────────────────────┐ │
│ │ Agent Vault │ │ AI agent │ │
│ │ :14321 management UI / API │◀────│ HTTPS_PROXY= │ │
│ │ :14322 MITM proxy │ │ agent-vault:14322 │ │
│ └────────────────▲───────────────┘ └────────────────────┘ │
│ │ │
└───────────────────┼─────────────────────────────────────────────┘
│ operator access: keep private, or front
│ with TLS + auth (SSO reverse proxy, IP
│ allowlist, or VPN) if you need remote admin
│
Operator
以下の数ステップで、Agent Vaultを設定してAIエージェントのクレデンシャルをブローカーできます:
curl --proto '=https' --proto-redir '=https' --tlsv1.2 -fsSL https://get.agent-vault.dev | sh
Agent Vaultサーバーを起動し、マスターパスワードを設定します(安全な場所に保管してください)。このパスワードはデータ暗号化メカニズムの一部として使用され、最初の読み取り後にプロセスから削除されます。
export AGENT_VAULT_MASTER_PASSWORD=your-password
agent-vault server -d
Agent VaultはDockerでもデプロイできます:
docker run -it -p 14321:14321 -p 14322:14322 \
-e AGENT_VAULT_MASTER_PASSWORD=your-password \
-v agent-vault-data:/data infisical/agent-vault
サーバーはポート 14321 でHTTP APIを、ポート 14322 で透過的なHTTP/HTTPSプロキシを起動します。同じリスナーが https:// アップストリームの CONNECT メソッドと、http:// アップストリームの絶対形式フォワードプロキシリクエストを処理します。
Web UIは http://<host>:14321 で利用可能になり、インスタンスのオーナーとなる最初のユーザーを作成するよう求められます。
Agent Vaultでボールトを作成し、クレデンシャルを入力し、サービスルールを構成します。管理UIまたはAgent Vaultマシン上のCLIを介して行います。例えば、ANTHROPIC_API_KEY のクレデンシャルを作成し、Agent Vaultがダミー値 __anthropic_api_key__ を実際のキーに置換するサービスルールを作成できます。
長時間稼働するエージェントを表すエージェントを作成し、そのトークンを取得します。あるいは、一時的なサンドボックスエージェントを立ち上げる場合は、エージェントを使用してオーケストレーターバックエンドを表し、サンドボックスに渡す短期間有効なトークンを発行し、エージェントがそれを使用してAgent Vault経由でリクエストをプロキシできます。
AIエージェントの環境に以下の環境変数を設定します:
AGENT_VAULT_ADDR=http://<your-addr>:14321
AGENT_VAULT_TOKEN=<agent-token-from-agent-vault>
AGENT_VAULT_VAULT=<vault-in-agent-vault>
...
ANTHROPIC_API_KEY=__anthropic_api_key__ // dummy key that will be substituted by Agent Vault
curl --proto '=https' --proto-redir '=https' --tlsv1.2 -fsSL https://get.agent-vault.dev | sh
このワークフローから公開されたリリースアーカイブには、それらを生成したGitHub Actions実行に関連付けられたビルド来歴証明書が同梱されています。gh CLIで検証します(追加ツール不要、鍵管理不要):
gh attestation verify agent-vault_*.tar.gz --repo Infisical/agent-vault
checksums.txt も同じ証明書の対象であり、cosign署名は、そのパスを好むユーザー向けに cosign verify-blob で引き続き検証できます。
agent-vault run -- claude
agent-vault vault run -- agent
agent-vault vault run -- codex
agent-vault vault run -- opencode
または、エージェントがDockerで動作している場合は、Dockerfileを介してAgent Vault CLIをインストールし、バイナリを独自のイメージにコピーして、エージェントプロセスを起動するために使用できます:
# Add this line to your existing Dockerfile alongside your agent or app setup.
COPY --from=infisical/agent-vault:latest /usr/local/bin/agent-vault /usr/local/bin/agent-vault
...
ENTRYPOINT ["agent-vault", "run", "--", "claude"]
Agent Vaultをデプロイし、AIエージェントと統合する方法は多数あります。より完全なドキュメントを参照することをお勧めします。
Agent VaultがAIエージェントのクレデンシャルをどのようにブローカーするかを見てください。キーを一度保存すれば、すべての外部リクエストがプロキシ経由でルーティングされ、エージェントがシークレットを一切見ることなく実際のAPIを呼び出せるようになります。
完全なデプロイのウォークスルーをご希望ですか?別のマシン上のブローカーエージェントを使用したエンドツーエンドの例については、Run Hermes on a VPS をご覧ください。
レイテンシ:リクエストのレイテンシを削減するために、Agent VaultをAIエージェントと同じネットワーク内に配置すべきです。
トークン:Agent Vaultで長期間存続するエージェントを表すエージェントを作成すべきです。一時的なサンドボックスの場合は、サンドボックス化されたエージェントがAgent Vault経由でリクエストをプロキシするために使用する、短時間有効でボールトスコープのトークンを発行することをお勧めします。
デフォルトでは、Agent Vaultはすべての状態をローカルのSQLiteデータベースに保存します。セットアップは不要です。本番環境へのデプロイや複数インスタンスの実行時には、DATABASE_URL環境変数(または --database-url フラグ)にPostgreSQLの接続文字列を設定すると、Agent VaultはPostgresをバックエンドとして使用します。すべてのインスタンスが同じデータベースを共有するため、レプリカ間で状態が一貫します。
切り替え前に、agent-vault migrate-db --to postgres://... で既存データを移行してください。デプロイ例(Kubernetes、Docker Compose)、アーキテクチャノート、運用の詳細については PostgreSQLガイド を参照してください。
Agent VaultはTypeScript SDKを提供しています。オーケストレーターが短時間有効なトークンを発行し、プロキシ設定をサンドボックス化されたエージェントに渡して、そのエージェントがAgent Vault経由でリクエストをプロキシできるようにします。
npm install @infisical/agent-vault-sdk
import { AgentVault, buildProxyEnv } from "@infisical/agent-vault-sdk";
const av = new AgentVault({
token: "YOUR_TOKEN", // agent token
address: "http://localhost:14321",
});
const session = await av
.vault("my-vault")
.sessions.create({ vaultRole: "proxy" });
// certPath is where you'll mount the CA certificate inside the sandbox.
const certPath = "/etc/ssl/agent-vault-ca.pem";
// env: { HTTPS_PROXY, HTTP_PROXY, NO_PROXY, NODE_USE_ENV_PROXY,
// SSL_CERT_FILE, NODE_EXTRA_CA_CERTS, REQUESTS_CA_BUNDLE,
// CURL_CA_BUNDLE, GIT_SSL_CAINFO, DENO_CERT }
const env = buildProxyEnv(session.containerConfig!, certPath);
const caCert = session.containerConfig!.caCertificate;
// Pass `env` as environment variables and mount `caCert` at `certPath`
// in your sandbox — Docker, Daytona, E2B, Firecracker, or any other runtime.
// Once configured, the agent inside just calls APIs normally:
// fetch("https://api.github.com/...") — no SDK, no credentials needed.
完全なドキュメントは TypeScript SDK README を参照してください。
make build # Build frontend + Go binary
make test # Run tests
make web-dev # Vite dev server with hot reload (port 5173)
make dev # Go + Vite dev servers with hot reload
make docker # Build Docker image
このリポジトリは MIT expatライセンス の下で利用可能です。ただし、ee ディレクトリは例外で、Infisicalライセンスが必要なプレミアムエンタープライズ機能が含まれます。
Infisicalに興味がある場合、またはAgent Vaultのより商業的な道を模索している場合は、私たちのウェブサイト をご覧いただくか、ミーティングを予約 してください。
大小を問わず、コントリビューションを歓迎します。Agent VaultはInfisicalと同じコントリビューションガイドラインに従います。
開始方法 についてはガイドをご覧ください。
どこから始めればよいかわからない場合:
これを読んでいるということは、私たちが作成した製品を気に入っている可能性が高いです。あなたは私たちのチームにとって素晴らしい追加メンバーになるかもしれません。私たちは急速に成長しており、ぜひ参加してください。
プレビュー. Agent Vaultは活発に開発中であり、APIは変更される可能性があります。デプロイ前にセキュリティドキュメントを確認してください。