アップデート一覧に戻る
New releaseJul 25, 2026

aquaman v0.14.0

🔱 AIエージェント向け唯一の独立したクレデンシャルプロキシ:自己管理型ヴォールト分離と最小権限リクエストポリシーを実現。キーは元の保管場所に留まり、エージェントのメモリには決して触れません。1Password、keychain、keepassxcなどと互換性があります。

共有

🔱 Aquaman

CI codecov npm version npm downloads Security: process isolation TypeScript License: MIT

🔱 AIエージェント向けの唯一の独立した認証情報プロキシ:bring-your-own-vaultによる分離と最小権限のリクエストポリシー。あなたのキーは、すでに保管している場所にとどまり、エージェントのメモリには決して置かれません。1Password、keychain、keepassxcなどと互換性があります。

Claude Code、Codex、OpenClaw、Hermes、あるいはDocker Sandboxesをセットアップして、大事なAPIキーが平文で置かれた.envファイルを眺めている——そんな状況ではありませんか。あの記事を読みましたよね。エージェントがプロンプトインジェクションを受けたときに何が起きるか、ご存じのはずです。わかります。

Aquamanはこれを3層の防御で解決します:

  1. プロセス分離:APIキーは別のプロキシプロセスに存在し、送信時に注入されます。エージェントが保持するのはマーカーであり、キーそのものではないため、エージェント内でRCEが発生してもキーを読み取ることはできません。コーディングエージェントは、あなたが宣言した参照だけを、一度に1つのコマンドで取得します。
  2. リクエストポリシー:サービスごとのルールが、エージェントがどのエンドポイントを呼び出せるかを制御します。管理APIをブロックし、削除を防ぎ、下書きは許可しつつ送信は拒否します。拒否されたリクエストには本物の認証情報が渡されることはありません。
  3. 改ざん検知可能な監査:すべての認証情報の使用はSHA-256ハッシュチェーンで記録されます。何がアクセスされたかを証明し、事後に改ざんを検知できます。

パスを選ぶ

Aquamanは4つの連携パッケージとして提供され、1つのvaultと1つのデーモンを共有します。必要なものだけをインストールしてください:

パッケージ機能インストールするタイミング
aquaman-proxyコア:vault、デーモン、監査、ポリシー、CLI。誰もが必要とする部分。常に。
aquaman-pluginOpenClaw Gatewayアダプター。Gateway起動時にプロキシを起動し、モデルとTelegramのトラフィックをプロキシ経由でルーティングします。5つの認証モードにわたる25の組み込みサービス。OpenClaw Gatewayを運用している場合。https://clawhub.ai/plugins/aquaman-plugin でも入手可能です
aquaman-coderAIコーディングエージェントアダプター。プロジェクトスコープのaquaman://service/key参照を、Bashツール呼び出しごとに解決します。Claude CodeまたはCodexを使用している場合。
aquaman-hermesHermesエージェントホストプラグイン(Python、PyPIで提供)。Hermesを、ネイティブのANTHROPIC_BASE_URL/OPENAI_BASE_URLを介してオプトインのトークンゲート付きループバックリスナーに向けます。セッション内の/aquaman-statusコマンド、ツール、ヘルスプローブを追加します。分離はプロキシ側で行われ、プラグインは認証情報を保持しません。Hermesエージェントホストを運用している場合。pip install aquaman-hermes
Docker Sandboxesパッケージではありません:aquaman-proxyのみを必要とする別のパスです。Docker自身のプロキシがシークレットを注入し、aquaman getがあなたのvaultからそれらを提供します。許可リストと監査ログ付き。Docker Sandboxesでエージェントを運用している場合。クイックスタート5を参照してください。
NVIDIA OpenShellパッケージではありません:aquaman daemonがOpenShellゲートウェイの認証情報ドライバーになります。OpenShellがキーをサンドボックスから分離し、aquamanがあなたのvaultから参照によってそれを提供します。許可リストと監査ログ付き。OpenShellサンドボックスでエージェントを運用している場合。クイックスタート6を参照してください。

単一の aquaman CLI がこの 4 つすべてを提供します。vault と audit 用のトップレベルコマンド、OpenClaw 統合用の aquaman openclaw ...、コーディングエージェント統合用の aquaman coder ...(内部で aquaman-coder に委譲)、そして Hermes Python パッケージ用の aquaman hermes ... です。

クイックスタート

aquaman help と aquaman doctor が頼りになります。

1. Vault のみ(プロキシとシークレットだけ)

npm install -g aquaman-proxy
aquaman setup                                # backend wizard + store keys
aquaman daemon &                             # start the proxy
aquaman credentials list                     # verify

プロキシは ~/.aquaman/proxy.sock で待ち受けます(UDS、chmod 0o600)。任意のツールを http://aquaman.local/<service>/<path> に向けると、プロキシは選択した vault バックエンドからそのサービス用の認証ヘッダーを注入します。

2. OpenClaw Gateway

openclaw plugins install aquaman-plugin           # 1. install plugin + proxy
openclaw aquaman setup                            # 2. backend + keys + plugin wire-up
openclaw                                          # 3. done - proxy starts automatically

トラブルシューティング: openclaw aquaman doctor。

npm を直接使いますか? npm install -g aquaman-proxy && aquaman openclaw setup も同じことを行います - プロキシ CLI をインストールし、キーを保存し、プラグインを ~/.openclaw/extensions/aquaman-plugin/ にインストールし、認証情報を接続します (OpenClaw ≥ 2026.6.5 では SecretRef 参照、古いバージョンでは auth-profiles.json のプレースホルダー)。

aquaman openclaw setup は models.providers.<svc>.baseUrl と channels.telegram.apiRoot をプロキシのループバックリスナーに向けます。これは OpenClaw のモデルトランスポートとそのチャネルがそれぞれ独自の HTTP クライアントを構築し、fetch インターセプターをバイパスするためです。Telegram 以外のチャネルはエンドポイントのオーバーライドを公開していないため、それらのトークンは保存および移行されますが、egress 時に注入されません (packages/plugin/README.md を参照)。openclaw.json のプラグイン設定の下にチャネルを追加してください。サポートされているものには Slack、Discord、Telegram、MS Teams、Matrix、LINE、Twitch、Twilio、BlueBubbles、Mattermost、Nostr、Tlon、Feishu、Google Chat、ElevenLabs、xAI、Cloudflare AI Gateway、Mistral、Hugging Face などがあります (合計 25 個)。

3. AI コーディングエージェント (Claude Code、Codex)

npm install -g aquaman-proxy aquaman-coder        # 1. install daemon + adapter
aquaman setup                                      # 2. vault wizard
aquaman daemon &                                   # 3. start the proxy

aquaman coder project add my-app --path ~/code/my-app \
  --env ANTHROPIC_API_KEY=aquaman://anthropic/api_key \
  --env GITHUB_TOKEN=aquaman://github/token         # 4. declare a project
aquaman coder setup claude-code                    # 5. wire Claude Code hooks
                                                   #    (or: aquaman coder setup codex)
aquaman doctor                                     # 6. verify - should show both vault + coder green

実際に確かめてみましょう(30秒でわかる体験): Claude Code(または Codex)を再起動し、~/code/my-app 内で新しいセッションを開き、エージェントに次を実行するよう依頼してください:

printenv | grep ANTHROPIC_API_KEY

トランスクリプトには次のように表示されます:

ANTHROPIC_API_KEY=[REDACTED:injected-value]

⏺ ANTHROPIC_API_KEY is set and available (injected via aquaman vault). 

子プロセスは実際のキーを見ることができました(テスト、ビルド、MCPサーバー、インポートスクリプトなど、実際にキーを必要とするものはすべて動作します)。一方、エージェント、つまりマシン上でどのコードを実行するかを決定するものは、その値を決して見ることができません。したがって、会話履歴も、モデルプロバイダーのログも、後でターミナルのスクリーンショットを撮る誰も、その値を見ることはありません。

自分のターミナルからも使えます。 同じラッパーはエージェントなしでも動作します。対象のプロジェクトに cd して、コマンドの前にプレフィックスを付けるだけです:

cd ~/code/
aquaman-coder exec -- python app/scripts/import.py

同じ環境変数注入、stdout/stderr に対する同じリダクション。Makefile のターゲット、シェルエイリアス、CI ランナーなど、本来 .env ファイルに手を伸ばすようなあらゆる場所に組み込めます。

Claude Code や Codex が ~/code/my-app でシェルコマンドを実行すると、aquaman のフックが updatedInput.command を介してコマンドを書き換え、aquaman-coder exec の下にラップします。このラッパーは次のことを行います:

  • 各 aquaman://service/key 参照をブローカー経由(UDS 上の POST /broker/resolve)で解決します。認証情報はエージェントのライフタイム全体ではなく、1 つのコマンドのために実体化されます。
  • stdout/stderr をリダクターに通し、解決された各値に対して値ベースのパターンを先頭に付加します: 注入された文字列は、その形状に関係なくリダクションされます(Atlassian トークン、Notion シークレット、内部 API キーなど、既知のプロバイダー形式に一致する必要はありません)。汎用的な形状ベースのパターン(sk-ant-、ghp_、sk_live_、AKIA…、JWT、PEM ブロック、ATATT3xF…)は、我々が注入しなかったシークレットを子プロセスが表面化させた場合の多層防御として、その後で引き続き実行されます。
  • コマンドの終了時にクリーンアップします。

Claude Code サンドボックス: デフォルトで Unix ソケットをブロックするため、aquaman coder setup claude-code は macOS 上でプロキシソケットを許可リストに追加します(sandbox.network.allowUnixSockets)。Linux と WSL2 はこのリストを無視するため、唯一の選択肢は sandbox.network.allowAllUnixSockets: true であり、これはサンドボックス化されたコマンドに対してすべての Unix ソケットを開放します。

Codex: セットアップ後、Codex の起動時フックレビューで aquaman フックを承認してください(Codex は信頼するまで新しいフックをスキップします)。そのサンドボックスもデフォルトでプロキシソケットをブロックするため、aquaman coder setup codex はそれを許可する config.toml のパーミッションプロファイルを出力します。Codex のフックはシェル出力を書き換えられないため、リダクションは aquaman-coder exec の内部で行われます。詳細は packages/coder/README.md を参照してください。

4. Hermes(エージェントホスト)

カテゴリ