Infisical/agent-vault
A HTTP credential proxy and vault for AI agents like Claude Code, OpenClaw, Hermes, custom agents + harnesses, and more.
Agent Vault – AIエージェント用のセキュアな資格情報プロキシ
何であるか – Agent Vaultは、AIエージェント(例:Claude、GPTベースのボット、カスタムエージェント)とそれらが呼び出す外部APIの間に立つオープンソースサービスです。シークレット(APIキー、トークンなど)を格納し、出力HTTPリクエストにリアルタイムで挿入するため、エージェントは実際の資格情報を一切見ることはありません。
なぜ重要か – 大規模言語モデルエージェントは、プロンプトインジェクション攻撃によって、環境に存在するすべてのシークレットを漏洩させられる可能性があります。エージェントのプロセスから資格情報を削除し、信頼できるプロキシに渡すことで、資格情報の流出リスクを大幅に低減できます。
コアコンポーネント
| コンポーネント | 役割 |
|---|---|
サーババイナリ (agent-vault) |
管理API(デフォルトポート14321)と透過的なHTTP/HTTPS MITMプロキシ(デフォルトポート14322)を実行。マスターパスワードで暗号化されたシークレットを格納(デフォルトはSQLite、オプションでPostgreSQL)。 |
| CLI | サーバの起動、Vaultの作成、資格情報の追加、エージェントの作成、プロキシ経由でエージェントプロセスを実行するためのコマンドを提供(agent-vault run -- <command>)。 |
| Web UI | Vaultの作成、資格情報の追加、サービスルールの定義、エージェントトークンの発行を行うためのシンプルなUI。 |
| プラグイン可能な資格情報ストア | Infisicalなどの外部シークレットマネージャーと連携可能で、動的シークレットなどの高度な機能を活用できます。 |
| TypeScript SDK | オーケストレーターが短期間有効なトークンをプログラムで発行し、サンドボックスエージェントがプロキシを経由するための環境変数を生成できます。 |
動作方法(概要)
- サーバのデプロイ – エージェントとは別マシンに(Docker、バイナリ、またはコンパイル済みGoで)デプロイ。マスターパスワードを設定。サーバはSQLite/PostgreSQLデータベースをそのパスワードで暗号化。
- Vaultの作成 – サーバ内にVaultを作成し、資格情報(例:
ANTHROPIC_API_KEY)を追加。 - サービスルールの定義 – プレースホルダー値(例:
__anthropic_api_key__)やヘッダー名を実際のシークレットにマッピング。 - エージェントレコードの作成 – 特定のVaultを使用できる権限を持つトークンを取得。
- エージェントの実行環境で以下の設定を実施:
AGENT_VAULT_ADDR=http://<host>:14321 AGENT_VAULT_TOKEN=<agent‑token> AGENT_VAULT_VAULT=<vault‑name> ANTHROPIC_API_KEY=__anthropic_api_key__ # ダミーのプレースホルダー HTTPS_PROXY=http://<host>:14322 - CLI経由でエージェントを実行(
agent-vault run -- <your‑agent‑command>)。CLIはプロキシを起動し、マスターキャッシュ証明書を挿入し、すべての出力HTTPSトラフィックをプロキシ経由で転送。 - エージェントが
api.anthropic.comにリクエストを送信すると、プロキシはプレースホルダーを実際のキー(または適切なAuthorizationヘッダー)に置き換え、リクエストを転送。 - すべてのトラフィックは、設定されたサービスルールに基づいてログ記録、フィルタリング、または拒否可能。
主な機能
- 資格情報ブローカリング – 実際のシークレットはVaultから出ない。プロキシがリクエスト時にダミーのプレースホルダーを実際の値に置き換える。
- プラグイン可能なシークレットバックエンド – 組み込みの暗号化ストアまたはInfisicalとの接続により、動的シークレットを活用可能。
- 透過的な統合 –
HTTPS_PROXY/HTTP_PROXYを尊重するあらゆるツール(CLIツール、SDK、Dockerなど)と互換。コード変更不要。 - マルチテナント & エージェントごとのトークン – エージェントごとに隔離されたアクセスを提供。サンドボックスワークロード向けに短期間有効なトークンを設定可能。
- エグレスフィルタリング & ストライクト・ディナイモード – エージェントが接続可能なホスト名/サービスを定義。一致しないリクエストは403でブロック可能。
- リクエストログ記録 & オーディット – インジェクトされたリクエストを確認し、エージェントの挙動をデバッグまたは監視可能。
- 単一バイナリまたはDockerイメージとしてデプロイ可能 – macOS、Linux、ARM、x86で動作するシンプルなインストールスクリプト(
curl … | sh)。 - オプションのPostgreSQLバックエンド – 複数レプリカ間でのスケーリングを可能にする。
- TypeScript SDK – コンテナベースのサンドボックス向けに、プログラムでトークンを発行し、環境変数を生成可能。
一般的な利用シーン
| シナリオ | Agent Vaultが提供する機能 |
|---|---|
| リモートコーディングエージェント(例:Claude Code) | ANTHROPIC_API_KEY と GITHUB_PAT を一度だけ格納。エージェントはキーを一切見ることなく、コミットやPRを送信可能。 |
| 汎用エージェント(OpenClaw、Hermesなど) | センタライズされたシークレット管理。各エージェントは、呼び出せるサービスに制限されたトークンを取得。 |
| カスタムエージェント / ハーネス | 開発者は単一の HTTPS_PROXY 行とプレースホルダー環境変数を追加するだけで、プロキシが資格情報のインジェクションを処理。 |
| 一時的なサンドボックス | オーケストレーターがSDK経由で短期間有効なトークンを発行し、CA証明書をマウントし、サンドボックスに使用可能なプロキシ設定を提供。 |
| エンタープライズ展開 | PostgreSQL、SSO保護UI、IP許可リスト、および商業版「Infisical Agent Vault」による追加のアクセス制御機能を活用。 |
クイックスタート
# インストール(macOS/Linux、Intel/ARM)
curl --proto '=https' --proto-redir '=https' --tlsv1.2 -fsSL https://get.agent-vault.dev | sh
# マスターパスワードのエクスポート(安全に保管)
export AGENT_VAULT_MASTER_PASSWORD=super‑secret
# サーバの起動(./dataにSQLite DBを作成)
agent-vault server -d
- ブラウザで
http://localhost:14321を開き、最初のオーナーユーザーを作成。その後、Vault、資格情報、サービスルールを追加。 - UIまたはCLI(
agent-vault agent create …)でエージェントトークンを作成。 - エージェントのコンテナまたはVMで、CLIを同様にインストールし、以下のコマンドを実行:
export AGENT_VAULT_ADDR=http://<host>:14321
export AGENT_VAULT_TOKEN=<token>
export AGENT_VAULT_VAULT=my‑vault
export ANTHROPIC_API_KEY=__anthropic_api_key__
agent-vault run -- python my_agent.py
エージェントは実際のキーを一切見ることなく、外部APIと通信可能になります。
開発と貢献
- バックエンドはGo、フロントエンドUIはVite/Reactで構築。
- 一般的なコマンド:
make build– Goバイナリとフロントエンドアセットをコンパイル。make test– ユニットテストを実行。make dev– ホットリロード付きのバックエンド・フロントエンド開発サーバを起動。make docker–infisical/agent-vaultDockerイメージを生成。
- リポジトリはMITライセンス。
ee/フォルダには商業Infisicalライセンスが必要なオプションのエンタープライズ機能が含まれます。
ライセンス
MIT Expatライセンス(リポジトリの LICENSE ファイルを参照)。コアは完全にオープンソース。プレミアム拡張機能は商業ライセンスで制限されています。
TL;DR
Agent Vaultは、安全なMITMスタイルのHTTPプロキシとして機能し、リクエスト時に適切な資格情報を挿入することで、AIエージェントにAPIキー、トークン、その他のシークレットを含ませません。単一バイナリ(またはDockerイメージ)で、プラグイン可能なシークレットストア、エージェントごとのトークン、標準プロキシ環境変数を尊重するあらゆるツールと互換。資格情報安全なAIエージェント展開を簡単かつ確実に実現します。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- Dispatch