# 4.2 アプリケーションルーティング ## 機能説明 アプリケーションルーティングとは、CC Switch のルーティングサービスが特定アプリの API リクエストをルーティングすることです。 ルーティングを有効にすると: - アプリの API リクエストがローカルルーティング経由で転送される - リクエストログと使用量の統計を記録できる - フェイルオーバー機能を使用できる ## 前提条件 アプリケーションルーティング機能を使用する前に、ルーティングサービスを起動する必要があります。 ## ルーティングの有効化 ### 操作場所 設定 → 詳細 → ルーティングサービス → アプリケーションルーティングエリア ### 操作手順 1. ルーティングサービスが起動していることを確認 2. 「アプリケーションルーティング」エリアを見つける 3. 必要なアプリのスイッチをオンにする ### ルーティングスイッチ | スイッチ | 作用 | |------|------| | Claude ルーティング | Claude Code のリクエストをルーティング | | Codex ルーティング | Codex のリクエストをルーティング | | Gemini ルーティング | Gemini CLI のリクエストをルーティング | 複数のアプリのルーティングを同時に有効にできます。 ## ルーティングの仕組み ### 設定の変更 ルーティングを有効にすると、CC Switch はアプリの設定ファイルを変更し、API エンドポイントをローカルルーティングに向けます。 **Claude 設定の変更**: ```json // ルーティング前 { "env": { "ANTHROPIC_BASE_URL": "https://api.anthropic.com" } } // ルーティング後 { "env": { "ANTHROPIC_BASE_URL": "http://127.0.0.1:15721" } } ``` **Codex 設定の変更**: ```toml # ルーティング前 base_url = "https://api.openai.com/v1" # ルーティング後 base_url = "http://127.0.0.1:15721/v1" ``` **Gemini 設定の変更**: ```bash # ルーティング前 GOOGLE_GEMINI_BASE_URL=https://generativelanguage.googleapis.com # ルーティング後 GOOGLE_GEMINI_BASE_URL=http://127.0.0.1:15721 ``` ### リクエストの転送 ルーティングサービスがリクエストを受信すると: 1. リクエスト元を識別(Claude/Codex/Gemini) 2. そのアプリで現在有効なプロバイダーを検索 3. プロバイダーの実際のエンドポイントにリクエストを転送 4. リクエストログを記録 5. アプリにレスポンスを返却 ## ルーティングステータスの表示 ### メイン画面の表示 ルーティングを有効にすると、メイン画面に以下の変化があります: - **ルーティング Logo の色**:無色から緑に変化 - **プロバイダーカード**:現在アクティブなプロバイダーに緑の枠が表示 ### プロバイダーカードの状態 | 状態 | 枠の色 | 説明 | |------|----------|------| | 現在有効 | 青 | 設定ファイル内のプロバイダー(非ルーティングモード) | | ルーティングアクティブ | 緑 | ルーティングが実際に使用しているプロバイダー | | 通常 | デフォルト | 使用されていないプロバイダー | ## ルーティングの無効化 ### 操作手順 1. ルーティングパネルで対応するアプリのルーティングスイッチをオフにする 2. またはルーティングサービスを直接停止 ### 設定の復元 ルーティングを無効にすると、CC Switch は以下を実行します: 1. アプリの設定をルーティング前の状態に復元 2. 現在のリクエストログを保存 ## ルーティングとプロバイダーの切り替え ### ルーティングモードでのプロバイダー切り替え ルーティングモードでプロバイダーを切り替える場合: 1. メイン画面でプロバイダーの「有効化」ボタンをクリック 2. ルーティングサービスが新しいプロバイダーを使用してリクエストを即座に転送 3. **CLI ツールの再起動は不要** これがルーティングモードの大きなメリットです:プロバイダーの切り替えが即座に反映されます。 ### 非ルーティングモードでのプロバイダー切り替え 非ルーティングモードでプロバイダーを切り替える場合: 1. 設定ファイルを変更 2. CLI ツールの再起動が必要 ## 複数アプリのルーティング 複数のアプリを同時にルーティングでき、それぞれ独立して管理されます: - 独立したプロバイダー設定 - 独立したフェイルオーバーキュー - 独立したリクエスト統計 ## 使用シーン ### シーン 1:使用量の監視 ルーティング + ログ記録を有効にして、API の使用状況を監視します。 ### シーン 2:素早い切り替え ルーティングを有効にすると、プロバイダーの切り替えに CLI ツールの再起動が不要になります。 ### シーン 3:フェイルオーバー ルーティングの有効化はフェイルオーバー機能を使用するための前提条件です。 ## 注意事項 ### パフォーマンスへの影響 ルーティングにより少量のレイテンシ(通常 < 10ms)が追加されますが、ほとんどのシーンでは無視できます。 ### ネットワーク要件 ルーティングモードでは、CLI ツールがローカルルーティングアドレスにアクセスできる必要があります。 ### 設定のバックアップ ルーティングを有効にする前に、CC Switch は元の設定をバックアップし、無効化時に復元します。 ## よくある質問 ### ルーティング後にリクエストが失敗する 確認事項: - ルーティングサービスが正常に実行されているか - プロバイダーの設定が正しいか - ネットワークが正常か ### ルーティングを無効にしても設定が復元されない 考えられる原因: - ルーティングサービスの異常終了 - 設定ファイルが他のプログラムに変更された 解決方法: - プロバイダーを手動で編集して保存し直す - または再度ルーティングを有効にしてから無効にする