AI生成コードのためのシークレットハイジーン。プロンプト、ツール入力、生成コード、既存ファイル内のハードコードされた認証情報を検出します。
pip install aigate && aigate setup-all
以上です。これにより、バックグラウンドプロキシ(レッドモード)、ファイルスキャン用のPostToolUseフックがインストールされ、Claude CodeにMCPサーバーが登録されます。環境変数を有効にするにはターミナルを再起動してください。
Python 3.11以上とjqが必要です。
3つのレイヤー、1つの検出エンジン:
| レイヤー | スコープ | 方法 |
|---|---|---|
| プロキシ | ネットワークレベル | AI APIへのHTTPSリクエストを傍受します。マシンから送信される前にシークレットを編集します。 |
| フック | Claude Code | PostToolUseがWrite/Edit後にファイルをスキャンします。PreToolUseがツール入力を編集します。 |
| MCPサーバー | 任意のエージェント | エージェントが呼び出す3つのツールで、コードのスキャン、シークレットの保存、ファイルの監査を行います。 |
setup-allは3つすべてをインストールします。必要なものだけ選択することもできます:
aigate install-hook # フックのみ(プロキシなし)
claude mcp add aigate aigate-mcp # MCPサーバーのみ
aigate setup && aigate start # プロキシのみ
aigate scan-dir . # ディレクトリ内のシークレットを検索
aigate scan-dir . --fix --dry-run # 変更内容をプレビュー
aigate scan-dir . --fix # 環境変数参照に置き換え、.envに保存
AWSキー、APIトークン(OpenAI、Anthropic、GitHub、GitLab、Slack、SendGrid、Square)、データベースURL、秘密鍵、GCPサービスアカウント、Tailscaleキー、envファイルのシークレット、高エントロピーのパスワード/トークンフィールド。
検出されたシークレットは従来の環境変数名にマッピングされます:
aigate start -m block # リクエストを拒否(デフォルト)
aigate start -m redact # シークレットを環境変数プレースホルダに置き換え
aigate start -m warn # 転送 + 警告ログ
aigate start -m audit # 転送 + サイレントログ
aigate stop-proxy && aigate uninstall-hook && claude mcp remove aigate
pip uninstall aigate && rm -rf ~/.aigate ~/.mitmproxy
シェルプロファイルから# aigate: proxy env varsと# aigate: trust mitmproxy CA以降の行を削除してください。
CA証明書の削除 — macOS: sudo security delete-certificate -c mitmproxy /Library/Keychains/System.keychain | Debian: sudo rm /usr/local/share/ca-certificates/mitmproxy-aigate.crt && sudo update-ca-certificates --fresh | RHEL: sudo rm /etc/pki/ca-trust/source/anchors/mitmproxy-aigate.pem && sudo update-ca-trust
| トークン | 環境変数 |
|---|
sk-ant-* | ANTHROPIC_API_KEY |
sk-*, sk-proj-* | OPENAI_API_KEY |
ghp_*, github_pat_* | GITHUB_TOKEN |
glpat-* | GITLAB_TOKEN |
xoxb-* | SLACK_BOT_TOKEN |
SG.* | SENDGRID_API_KEY |
AKIA* | AWS_ACCESS_KEY_ID |