開発者向け
たった一度のCLI呼び出しで、すべての機密情報を扱えます。
環境変数不要。設定ファイル不要。ログに機密情報は残りません。コードが必要とするすべての機密情報は、エージェントからはアクセスできないVaultから実行時に解決されます。
利用パターン
一度保存すれば、どこからでも取得可能。
各エージェントは、独自のトークン、スコープ、レート制限を使用して一度だけ初期化されます。その後、エージェントは実行時に機密情報を取得できます。鍵は暗号化された状態でVaultに保存され、環境変数やソースコードには決して保存されません。鍵をローテーションする場合は、VaultのUIで更新するだけで、すべてのエージェントが自動的に新しい鍵を適用されます。
# 初回セットアップ — プロンプトでトークンを貼り付けるか、パイプで渡します $ echo "$CLAVITOR_TOKEN" | clavitor-cli init # 単一の値 — パイプ経由で取得し、保存はしません $ clavitor-cli get "Deploy Key" --field private_key | ssh-add - # 設定ファイル全体 — 機密情報を解決し、安全なテンプレートをgitにコミット $ clavitor-cli render app.config.json | myapp --config - # プロキシ — ネットワーク層で資格情報を注入 $ export HTTPS_PROXY=http://localhost:1983 $ curl -H "Authorization: Bearer clavitor://OpenRouter/key" https://openrouter.ai/api/v1/models
3つの利用方法
Field、Render、または Proxy。
Field
単一の値。任意のコマンドやスクリプトにパイプで渡せます。機密情報はパイプ内にのみ存在し、変数やディスクには決して残りません。
Render
設定ファイル全体。起動時にすべての clavitor:// 参照を解決します。テンプレートは安全にコミットでき、解決後の設定はパイプ経由で渡されます。
Proxy
HTTPSプロキシ。ヘッダーから透過的に資格情報を解決します。エージェントは機密情報が必要な場所に clavitor:// と記述するだけで、プロキシが実際の値を注入します。ログにもエージェントのメモリにも何も残りません。
どれを使うべきですか?
| Feature | Field | Render | Proxy |
|---|---|---|---|
| ログへの漏洩防止 | |||
| あらゆる言語に対応 | |||
| あらゆるツールに対応 (curl, SDK, ブラウザ) | |||
| エージェントごとのスコープと監査 | |||
| 複数の機密情報を同時に扱う | |||
| コード変更が不要 | |||
| 設定ファイルのコミットが安全 | |||
| SSH / 非HTTPのユースケース |
クイック選択: スクリプトやCLIツールを作成中なら Field。設定ファイルを使用するサービスをデプロイするなら Render。API呼び出しを行うAIエージェントを実行するなら Proxy を使用してください。
他のあらゆる資格情報プロキシに勝る理由。
盗まれるものがありません。 クラウドホスト型のプロキシは標的になりやすく、一つ突破されると全顧客の資格情報が流出します。ローカルプロキシは自身の設定ファイルに資格情報を保存するため、マシン上のあらゆるエージェントから読み取られる可能性があります。Clavitorのプロキシは暗号化された設定ファイルのみを保持します。ディスク上に平文の機密情報は存在せず、強奪される資格情報ストアも存在しません。
エージェントによる解析を防ぎます。 侵害されたエージェントであっても、プロキシから資格情報を抽出することはできません。プロキシはAPIを公開せず、ダッシュボードを提供せず、コマンドを受け付けることもありません。ヘッダーを一つ読み取り、参照を一つ解決し、結果をアウトバウンドリクエストに注入するだけです。攻撃対象領域(アタックサーフェス)は存在しません。
ログには何も残りません。 エージェントは clavitor://Entry/field と記述します。標準出力、ログ、会話履歴に表示されるのはそれだけです。実際の資格情報は、1回のHTTPコールの間だけプロキシプロセス内にのみ存在します。ログアグリゲーター、クラッシュダンプ、CIアーティファクトもすべてクリーンです。
設定不要。 ルーティングテーブルも、APIマッピングも、管理すべき資格情報ファイルも必要ありません。ヘッダー内の clavitor:// 参照が唯一の指示となります。一度の init と一つの環境変数だけで完了します。
対応言語
あらゆる言語で動作します。SDKは不要です。
Bash
# プロキシが資格情報の注入を処理するため、コマンドに機密情報は含まれません $ export HTTPS_PROXY=http://localhost:1983 $ curl -H "Authorization: Bearer clavitor://OpenRouter API/key" \ https://openrouter.ai/api/v1/models
Go
key, _ := exec.Command("clavitor-cli", "get", "OpenRouter API", "--field", "key").Output()
client := openai.NewClient(option.WithAPIKey(strings.TrimSpace(string(key))))Python
import subprocess
# 直接渡すか、あるいはHTTPSプロキシを使用して鍵を一切保持しないようにします
stripe.api_key = subprocess.check_output(
["clavitor-cli", "get", "Stripe API", "--field", "key"]
).decode().strip()Rust
let key = std::process::Command::new("clavitor-cli")
.args(["get", "AWS Credentials", "--field", "secret_key"])
.output()?;
let client = aws::Client::new(String::from_utf8(key.stdout)?.trim());TypeScript / Node
import { execSync } from 'child_process';
const apiKey = execSync('clavitor-cli get "Anthropic API" --field key').toString().trim();
const client = new Anthropic({ apiKey });C# / .NET
using System.Diagnostics;
var psi = new ProcessStartInfo("clavitor-cli") { RedirectStandardOutput = true, UseShellExecute = false };
psi.ArgumentList.Add("get");
psi.ArgumentList.Add("Stripe API");
psi.ArgumentList.Add("--field");
psi.ArgumentList.Add("key");
var key = Process.Start(psi)!.StandardOutput.ReadToEnd().Trim();
var client = new StripeClient(key);PowerShell
# 単一の値 — パイプまたは直接使用
$key = clavitor-cli get "AWS Credentials" --field secret_key
Set-AWSCredential -AccessKey $env:AWS_ACCESS_KEY -SecretKey $key
# またはプロキシを使用 — スクリプト内に機密情報は一切含まれません
$env:HTTPS_PROXY = "http://localhost:1983"
Invoke-RestMethod -Uri "https://api.openai.com/v1/models" `
-Headers @{ Authorization = "Bearer clavitor://OpenAI/key" }Java
import java.nio.charset.StandardCharsets;
Process p = new ProcessBuilder("clavitor-cli", "get", "Stripe API", "--field", "key").start();
String key = new String(p.getInputStream().readAllBytes(), StandardCharsets.UTF_8).trim();
Stripe.apiKey = key;設定のレンダリング
設定ファイルをコミットしてください。機密情報ではありません。
clavitor-cli render は、ファイル内の clavitor://entry/field 参照をスキャンし、それぞれをVaultと照合して解決し、結果を出力します。テンプレートはgitで管理し、解決後の設定はパイプ経由で渡します。機密情報がディスクに触れることはありません。
# テンプレート (gitにコミット)
$ cat app.config.json
{"api_key": "clavitor://OpenRouter API/key", "db": "clavitor://Prod DB/password"}
# 解決後 (アプリケーションにパイプで渡され、ディスクには残りません)
$ clavitor-cli render app.config.json
{"api_key": "sk-or-v1-abc123...", "db": "hunter2"}JSON、YAML、TOML、.env、またはあらゆるテキストファイルに対応しています。clavitor:// が含まれていれば、解決されます。
その他の統合ガイド
インフラストラクチャ
Docker, Kubernetes, Terraform, Ansible, GitHub Actions, GitLab CI, SSH。設定ファイルにもログにも機密情報は残りません。
インフラガイド →AIエージェント
Claude Code, Codex, OpenClaw, Hermes, CrewAI, LangChain。スコープ付きトークン、監査トレイル、自動ロックダウン。
エージェントガイド →パターンは常に同じです。
たった一度のCLI呼び出しで、あらゆるコンテキストに対応。エージェントのスコープが閲覧権限を決定し、ティアが復号権限を決定します。監査ログがすべてのアクセスを記録します。