# 9router で QCode を使う

[9router](https://github.com/decolua/9router) は**ローカルのマルチプロバイダー AI ルーティングプロキシ**です。自分のマシン上で OpenAI 互換サービス（デフォルト `http://localhost:20128/v1`）を起動し、Claude Code、Cursor、Cline、Codex などのツールからのリクエストを一括で引き受け、設定したルールに従って複数の上流プロバイダーへ転送します（自動フォールバック / クォータ枯渇時の切り替え / 出力圧縮によるトークン節約などを含む）。概念的には QCode 自前の CCR に似ていますが、違いは 9router が**自分のマシン**上で動き、自分で管理する点です。

> 具体的な機能・ポート・UI は [9router 公式リポジトリ](https://github.com/decolua/9router) を参照してください。本記事では「QCode をどう追加するか」のみを扱います。

## いつ必要か

- **QCode に直接つなぐ方がシンプルで安定**：QCode しか使わないなら、ツールの BASE_URL を `api.qcode.cc` に向けるだけでよく、9router は不要です。
- **9router が向いている場面**：QCode を他のプロバイダー（サブスク版、無料枠、自前構築など）と**併用**したく、統一されたエントリーポイント、自動フォールバック、プロバイダー横断の切り替え、トークン圧縮が必要なとき、QCode を 9router のプロバイダーの一つ（主力またはフォールバック層）として登録できます。

## QCode をプロバイダーとして追加する

1. 9router のドキュメントに従って起動し、ローカルコンソール（デフォルト `http://localhost:20128`）を開きます。
2. **Providers（プロバイダー）** で**カスタム / OpenAI 互換（Compatible Node）**プロバイダーを新規追加します：
   - **Endpoint / Base URL**：
     - チャット（GPT 系）：`https://api.qcode.cc/openai/v1`
     - チャット（Claude 系、9router が Anthropic プロトコルノードに対応している場合）：`https://api.qcode.cc/api`
     - 画像（任意）：`https://api.qcode.cc/qcode-img/v1`（下記の注意を参照）
     - 中国本土ではドメインを `asia.qcode.cc` に変えるとレイテンシが下がります。
   - **API Key**：あなたの QCode API Key（`cr_` で始まる）。
   - **モデル / エイリアス**：必要に応じて `claude-opus-5`、`claude-sonnet-5`、`gpt-5.5`、`gpt-5.4`、`gpt-5.6-terra` などを登録します（`claude-sonnet-4-6` などの 4.x は販売中）。
3. この QCode プロバイダーを**ティア / フォールバックチェーン**に組み込みます（例：主力として、または他のプロバイダーがクォータを使い切った後のフォールバック層として）。
4. ツール（Claude Code / Cursor / Cline など）を 9router のローカルエントリー `http://localhost:20128/v1` に接続するだけです。以降は 9router がいつ QCode へルーティングするかを決めます。

## QCode 直接 vs 9router 経由

| | QCode 直接 | 9router 経由 |
|---|---|---|
| 設定の複雑さ | 低（BASE_URL を 1 つ入れるだけ） | 中（provider / tier / エイリアスの設定が必要） |
| マルチプロバイダーフォールバック | なし | あり（QCode を主力またはフォールバックにできる） |
| チーム共有 | 可（クラウドサービス） | 不可（9router はローカルのみ、設定はメンバー間で共有されない） |
| 利用統計 | QCode 管理画面 [probe.qcode.cc](https://probe.qcode.cc) で正確 | 9router は自身のルーティング選択のみを反映し、クォータは QCode 管理画面が基準 |
| 安定性 | 直接が最も安定 | ローカルプロキシ層が 1 つ増える |

## 注意事項

- **ローカルのみ**：9router はローカルで動き、設定はチームメンバー間で共有されません。
- **画像ルーティングは要自己検証**：9router は `/v1/images/generations` を公開していますが、「9router 経由で QCode の `gpt-image-2` を呼ぶ」のは**未検証**で、追加設定が必要な場合があります。安定性が必要なら画像は[直接 image-2](/docs/usage/image-2) を推奨します。
- **クォータは QCode 管理画面が基準**：9router の統計は QCode の実際のアカウントクォータと同じではありません（Key ごとの 1 日上限などは QCode 管理画面 / [probe.qcode.cc](https://probe.qcode.cc) が基準）。
- **プロトコルとパスの対応**：`/openai/v1` は OpenAI プロトコル、`/api` は Anthropic プロトコル、`/qcode-img/v1` は画像用です。詳細は [接続ポイントと API フォーマット](/docs/getting-started/endpoints-and-api-paths) を参照してください。

---

> 1 つの API Key で 3 つのプロトコル（Anthropic / OpenAI / Gemini）を共通利用でき、直接接続も 9router のようなルーター経由も可能です。[QCode.cc の料金](https://qcode.cc/pricing) をご覧ください。