Claude Code向けCC Switch:アカウント、プロバイダー、設定の管理
午前9:05、Claude Codeの接続先を会社のゲートウェイに設定します。11:30には、個人のAnthropicアカウントが必要になります。昼食後には、顧客のリポジトリで専用のMCPサーバーとモデルエイリアスが必要になります。一日の終わりには、 ~/.claude/settings.json が三回編集され、あるシェルには古いトークンが残ったままで、次のリクエストがどのエンドポイントに送られるのか、誰にも確信がありません。
CC Switchは、デスクトップアプリケーションで管理する名前付きプロファイルによって、この運用上の問題に対処します。認証情報、プロバイダーのURL、MCP定義、エージェント固有の設定ファイルを手動で移し替える代わりに、有効にするプロファイルを選択します。技術的に重要なのは、これがアカウントの仮想化ではなく、設定管理だという点です。Claude Codeは引き続き通常のローカルファイルと環境設定を読み取り、CC Switchはそこに書き込む内容を調整します。
その利便性は大きい一方で、信頼境界の重要性も同じくらい大きくなります。開発者アカウントを切り替えられるユーティリティには、開発者の認証情報を読み書きする権限が必要です。導入前に、どのファイルを変更するのか、独自のデータベースがどこにあるのか、それらのファイルがどのように保護されているのかを正確に把握しておく必要があります。
CC SwitchによるClaude Code管理で実際にできること
CC Switchは、コーディングエージェント向けのオープンソースのデスクトップ設定マネージャーです。対応する連携先は時間とともに増えているため、固定の一覧を標準として採用する前に、現在のリポジトリとリリースノートを確認してください。Claude Codeは主要な連携先であり、現在のバージョンではCodexやGemini CLIなど、ほかのコマンドライン型コーディングエージェントも対象としています。
Claude Codeの場合、プロバイダープロファイルには通常、次のものが含まれます。
- Anthropic互換のAPIエンドポイント
- APIキーまたは認証トークン
- モデルのマッピングまたはモデル関連の環境変数の値
- 追加の環境変数
- MCPサーバーの定義
- プロファイルに合わせて適用するClaude Codeの設定
これは、「アカウント」が単にAnthropicへのログインを意味しない場合に役立ちます。実際の運用では、開発者が次のものを切り替えて使うことがあります。
- Anthropic APIへの直接アクセス
- 組織の認証付きAPIゲートウェイ
- サードパーティーのAnthropic互換プロバイダー
- 個人用、ステージング用、本番用に分けた請求アカウント
- 互換性のあるリクエスト処理を提供するローカルまたはリモートのプロキシ
CC Switchはこれらの選択肢を一元管理し、選択した設定を有効化します。ただし、すべての互換エンドポイントの動作を同一にする わけではありません 。モデル名、認証ヘッダー、レート制限、プロンプトキャッシュ、未対応のAPIフィールドの違いは、引き続きプロバイダー側の責任範囲です。
| アプローチ | 切り替えの手間 | 認証情報の露出先 | MCP管理 | 適した用途 |
|---|---|---|---|---|
| シェルでの環境変数のエクスポート | 最初は少ないが、後にミスが起きやすい | シェル、履歴、子プロセス | 手動 | 一時的に使う単一のアカウント |
| 設定ファイルの手動編集 | 中程度 | エディター、バックアップ、ローカルファイル | 手動 | 安定した単一プロバイダー構成 |
| ラッパースクリプト | セットアップ後は少ない | スクリプトまたはシークレットマネージャー | スクリプト次第 | ツールを保守する意欲のあるチーム |
| CC Switchのプロファイル | デスクトップUIで簡単に切り替え | CC Switchとエージェントの設定ファイル | 一元化されたUI | 複数のアカウント、プロバイダー、エージェント |
| 外部シークレットマネージャーとラッパー | セットアップコストが最も高い | シークレットマネージャーと実行時のプロセス | カスタム | 厳格な企業向け管理 |
この表からトレードオフがわかります。CC Switchは操作ミスを減らしますが、権限を持つローカルアプリケーションがもうひとつ増えることになります。
インストールと対応プラットフォーム
CC Switchは、プロジェクトのGitHub Releasesページで配布されています。現在、リポジトリではmacOS、Windows、Linuxのデスクトップ環境への対応が記載されていますが、リリース成果物はプラットフォームやバージョンによって異なります。導入予定のリリースに添付されているアセットを確認してください。ソースコードが存在するからといって、すべてのリリースで、あらゆるOSバージョン、CPUアーキテクチャ、パッケージ形式向けのビルドが提供されるとは限りません。
macOSでは、プロジェクトがHomebrew caskを使った手順を提供しています。
brew tap farion1231/cc-switch
brew install --cask cc-switch
ダウンロードしたバイナリを管理対象の環境で使用する前に、Homebrewが何をインストールしたかを確認してください。
brew info --cask cc-switch
brew list --cask cc-switch
codesign -dv --verbose=4 "/Applications/CC Switch.app" 2>&1
WindowsとLinuxのユーザーは、リリースで公開されているアセットからインストーラーまたはパッケージを入手してください。パッケージ名や配布チャネルは変わる可能性があるため、私は、古くなっている可能性のある winget、Scoop .deb、またはAppImageのコマンドを、対象リリースを固定してテストすることなく、ワークステーションの初期セットアップ用スクリプトに組み込むことは避けています。
導入を管理しながら進めるには、次の手順を踏みます。
- CC Switchのバージョンを固定します。
- リリースの想定チェックサムを記録します。
- 使い捨てのClaude Code設定でテストします。
- プロファイルの有効化時に変更されるすべてのファイルを一覧化します。
- 通知なく最新リリースに追従するのではなく、アップグレードの手順を定義します。
インストール前に簡単なスナップショットを取っておくと役立ちます。
mkdir -p /tmp/claude-config-before
cp -R ~/.claude /tmp/claude-config-before/ 2>/dev/null || true
# Install CC Switch, create a test profile, and activate it.
diff -ru /tmp/claude-config-before/.claude ~/.claude || true
これにより、書式の書き換え、フィールドの削除、想定外のスコープでのMCPエントリのマージなど、ドキュメントでは把握できない動作を検出できます。
プロバイダープロファイルの作成と切り替え
プロファイルは、一貫したセキュリティと請求のコンテキストを表すものにしてください。私は、次のように影響が伝わる名前を使っています。
anthropic-personalcompany-gateway-devcustomer-a-restrictedlocal-proxy-test
次のようなラベルは避けてください。 default-2。本番環境でインシデントが発生したとき、エディターを開かなくても、有効なプロファイル名だけで「このリクエストはどこに送られるのか」がわかるようにしておく必要があります。
Anthropic互換ゲートウェイを利用するClaude Codeプロファイルでは、概念的には次のような設定が生成される場合があります。
{
"env": {
"ANTHROPIC_BASE_URL": "https://ai-gateway.example.com/anthropic",
"ANTHROPIC_AUTH_TOKEN": "${TOKEN_MANAGED_BY_PROFILE}",
"ANTHROPIC_MODEL": "company-claude-default"
},
"permissions": {
"defaultMode": "default"
}
}
実際に必要な変数は、プロバイダーとClaude Codeのバージョンによって異なります。一部のサービスでは次の変数が必要です。 ANTHROPIC_API_KEY。一部のゲートウェイ連携では次の変数を使います。 ANTHROPIC_AUTH_TOKEN。認証が成功する「可能性を高める」ためだけに、両方を設定しないでください。Claude Codeがどの認証情報を優先するかを確認してください。優先順位の高い古い値が残っていると、誤ったアカウントでリクエストが送られる可能性があります。
切り替え後は、 新しい Claude Codeプロセスを起動してください。
claude
Claude Codeがすでに実行されている状態で切り替えたときに、実際に何が起こるかは誤解されがちです。このユーティリティはディスク上のファイルを更新できますが、実行中のプロセスがすでに継承した環境変数の値を確実に置き換えることはできません。そのため、既存のセッションは再起動するまで元のプロバイダーを使い続ける場合があります。
シークレットを表示せずに、実際に適用されている設定を検証してください。
python3 - <<'PY'
import json
from pathlib import Path
path = Path.home() / ".claude" / "settings.json"
data = json.loads(path.read_text())
env = data.get("env", {})
for key, value in sorted(env.items()):
if "KEY" in key or "TOKEN" in key or "SECRET" in key:
value = "<redacted>"
print(f"{key}={value}")
PY
よくある落とし穴は、Claudeが応答するかどうかだけをテストすることです。互換プロキシは、要求したモデルを別のモデルに通知なくマッピングしながら、有効な応答を返すことがあります。モデルの識別が重要な場合は、プロバイダーのリクエストログまたはゲートウェイの監査証跡を確認してください。
エージェント間のMCP設定
MCP設定は、一元管理が単なるトークン選択機能以上に役立つ領域です。開発者は複数のエージェントに、ファイルシステム、課題管理、データベース、ブラウザーの各サーバーを設定している場合があり、それぞれスキーマや保存場所が異なります。
一般的なMCPサーバー定義には、コマンドと引数が含まれます。
{
"mcpServers": {
"project-files": {
"command": "npx",
"args": [
"-y",
"@modelcontextprotocol/server-filesystem",
"/Users/alex/work/customer-a"
]
}
}
}
これは実行可能な設定として扱ってください。プロファイルを有効化すると、エージェントが次のものを起動できるようになる場合があります。 npx。また、パッケージを実行し、指定されたディレクトリをモデルが利用するツール層に公開できるようになる場合があります。
実際には、私はリポジトリの機密性に応じてMCPプロファイルを分けています。
- 汎用プロファイルでは、ドキュメントとリスクの低いツールを公開します。
- 顧客用プロファイルでは、その顧客の作業ディレクトリだけを公開します。
- データベースサーバーや本番環境の制御用サーバーは、グローバルに有効化しません。
- MCPサーバーが使用するトークンのスコープは、モデルプロバイダーのトークンとは独立して設定します。
また、エージェントに標準のMCPコマンドがある場合は、CC Switchが生成した結果と比較してください。Claude Codeでは、切り替え後に有効なサーバーを確認します。
claude mcp list
ひとつのMCP JSONオブジェクトを、すべてのコーディングエージェントにそのままコピーできるとは考えないでください。CC SwitchはUIでの管理を統一できますが、各連携先エージェントには、それぞれ独自のスキーマ、スコープのルール、ライフサイクルの動作があります。
認証情報の保存場所
監査すべき保存層は次のとおりです。
- CC Switchのアプリケーションデータ。プロファイルの保持に使われます。
- コーディングエージェント標準の設定。プロファイルを有効化すると、書き込みまたは更新が行われます。
CC Switchは、ホスト型のアカウントサービスではなく、ローカルのアプリケーションストレージを使用します。正確なパスはプラットフォームによって異なり、アプリケーションの進化に伴って変更されてきたため、古いIssueからコピーしたパスに頼らず、インストール済みのビルドから確認してください。一般的なOSのアプリケーションデータのルートディレクトリは次のとおりです。
macOS: ~/Library/Application Support/
Windows: %APPDATA%
Linux: ~/.local/share/ or an XDG data directory
認証情報の内容を出力せずに検索します。
find "$HOME/Library/Application Support" \
-maxdepth 3 -iname '*cc*switch*' -print 2>/dev/null
find "${XDG_DATA_HOME:-$HOME/.local/share}" \
-maxdepth 3 -iname '*cc*switch*' -print 2>/dev/null
Claude Codeの場合は、次を確認してください。 ~/.claude/。特に確認すべきなのは次のものです。 settings.json。該当する場合は、プロジェクトレベルのClaude設定も確認してください。ほかのエージェントでは、一般的に次のような別のディレクトリを使用します。 ~/.codex/ または ~/.gemini/ですが、ファイル名と認証情報の形式はエージェントのバージョンによって異なります。
「ローカルに保存されている」ことが「暗号化されている」ことを意味するとは限りません。インストール済みのCC Switchのバージョンが、該当するシークレットに対してオペレーティングシステムの認証情報保管庫を明示的に使用していない限り、アプリケーションのデータベースと生成されたエージェント用ファイルは、自分のユーザーアカウントから平文で読み取れる可能性があるものとして扱ってください。シークレットをターミナル、チケット、チャットセッションに貼り付けないよう注意しながら、ファイルの確認とリポジトリのコードレビューによって検証してください。
デスクトップからのトークンアクセスがセキュリティに与える影響
CC Switchは、必然的にデスクトップのユーザー権限で動作します。そのアカウントがトークンを読み取れる場合、同じユーザーとして実行されるマルウェアや別のプロセスも読み取れる可能性があります。CC Switchを使っても、エンドポイントのセキュリティ対策は必要です。
主なリスクは次のとおりです。
- 認証情報の集中: 複数のプロバイダーのトークンが、同じローカルのプロファイルストアに共存する可能性があります。
- 設定の上書き: プロファイルを有効にすると、エージェントが使用するファイルが置き換えられたり、マージされたりする可能性があります。
- バックアップからの漏えい: アプリケーションデータやドットファイルが、暗号化されていないバックアップに含まれる可能性があります。
- プロセスへの継承: 以前から開いているターミナルや実行中のエージェントには、以前の認証情報が残ることがあります。
- MCPの実行: プロファイルによって、ファイルシステムやネットワークにアクセスできるコマンドが有効になる可能性があります。
- サプライチェーン経由のリスク: 更新をインストールすると、新しいデスクトップコードが保存済みのトークンにアクセスできるようになります。
- 画面やログからの情報開示: UIの診断情報やバグレポートによって、エンドポイントや認証情報のデータが明らかになる可能性があります。
このユーティリティには、最小権限の原則に基づく制御を適用してください。
chmod 700 ~/.claude
chmod 600 ~/.claude/settings.json
プロバイダーが対応している場合は、有効期間の短いゲートウェイトークンや失効可能なゲートウェイトークンを優先してください。利便性のためのプロファイルに、本番環境の管理者認証情報を入れてはいけません。端末を運用から外した後は、トークンをローテーションしてください。プロファイルを削除しても、認証情報が別の場所にコピーされていない証拠にはなりません。
企業に導入する場合、私なら次の要件を設けます。
- レビュー済みリリースへのバージョン固定
- フルディスク暗号化
- バックアップの取り扱いの制限
- プロバイダー側での利用額の上限と監査ログ
- 開発者ごと、環境ごとの個別トークン
- 文書化された失効手順
- MCPコマンドとアクセス可能なパスの定期的なレビュー
CC Switchは、ローカルで複数のプロバイダーを使うワークフローに適した実用的なツールです。ただし、ハードウェアで保護されたシークレット、一時的な認証情報、または中央で強制される設定をポリシーで要求する環境に、そのまま適合するとは限りません。そのような場合は、企業用ゲートウェイとシークレットマネージャーに連携したランチャーのほうが、妥当性を説明しやすい設計となる可能性があります。
実践上のポイント
- 手作業での編集を繰り返すことで、アカウント、エンドポイント、MCPの設定ミスが生じている場合は、CC Switchを使用してください。
- 展開前に、プロジェクトの現在のGitHubリリースで、各プラットフォーム向けの配布物を確認してください。
- 各プロファイルには、プロバイダー、所有者、環境がわかる名前を付けてください。
- 実行中のプロセスには古い値が残ることがあるため、切り替え後はClaude Codeを再起動してください。
- 生成されたファイルを確認し、
claude mcp listを使用して実際に適用されている状態を検証してください。 - CC Switchのローカルデータと、そこから設定されるエージェントの設定ファイルは、機密性の高い認証情報ストアとして扱ってください。
- MCPサーバーの権限範囲は、APIトークンと同じくらい慎重に設定してください。コマンドの実行やファイルの公開が可能だからです。
- リリースのバージョンを固定し、設定の差分をテストし、トークンを失効させる手段を維持してください。
- 周辺の管理策がそのリスクに明示的に対応していない限り、影響の大きい本番環境の認証情報をデスクトップの切り替えツールに保存しないでください。
Claude Opus 5.5、Sonnet 5、Haiku 4.5、Fable 5.1に加え、GPT-6のモデルを、単一のAPIキーで利用できます。従量課金制で、サブスクリプションは不要です。
APIキーを取得 →