Claude Codeは強力なAIコーディング環境ではありますが、AnthropicのモデルをそのままAPI課金で使い続けると、利用量によってはコストがかさみます。そこで本記事では、OpenRouterというサービスを経由して、Claude Codeからコストパフォーマンスに優れた3つのモデルとしてGLM-5.2、Qwen3.5 397B A17B、Kimi K2.6を切り替えながら使う方法を、実際の設定手順とともに解説します。
私の場合、Google Antigravity IDEでClaudeの拡張機能でClaude Codeを利用しているのですが、一定のディレクトリでAntigravity IDEを起動すると、自動的に格安AIモデルのセットに切り替わるようにしています。

Windows・Mac・Linuxのいずれでも手順は共通です。複数台のパソコンを使い分けているんですが、設定を1つにまとめて全台で共有する方法も最後に紹介します。
OpenRouterとは
OpenRouterは、さまざまなAIモデルプロバイダーへのアクセスを1つのAPIキー・1つの請求にまとめてくれる中継サービスです。Anthropic、OpenAI、Google、そしてGLMやQwen、Kimiといった各社のモデルを、共通の方式(OpenAI互換/Anthropic互換)で呼び出せます。
メリットを整理すると次の通りです。
- モデルごとに別々のアカウント・キー・支払いを用意しなくてよい
- 1つのキーで400以上のモデルを使い分けられる
- 利用量とコストを1つのダッシュボードで把握できる
- キーごとに利用上限額を設定できる(後述のセキュリティ対策に有効)
そして重要なのは、OpenRouterはAnthropic互換のエンドポイントを提供している点です。これにより、Claude Code側はほとんど設定を変えるだけで、接続先をAnthropicからOpenRouterに切り替えられます。
なぜClaude Codeと組み合わせるのか
Claude Codeは本来Anthropicのモデル(Opus / Sonnet / Haiku)を使いますが、この3つの「枠」に任意のモデルを割り当てることができます。つまり、
- 重い作業の枠 → 高性能だが割安なモデル
- 日常作業の枠 → バランス型のモデル
- 軽い作業の枠 → 最も安いモデル
というふうに、作業の重さに応じてモデルを使い分けて、全体のコストを抑える運用が可能になります。本記事ではこの「3枠方式」を使います。
今回使う3つのコスパモデル
今回割り当てるのは、コーディング用途で評価が高く、かつ低価格な以下の3モデルです。価格は記事執筆時点のもので、いずれもOpenRouter経由で利用します(最新の価格はOpenRouterの各モデルページでご確認ください)。
| モデル | 提供元 | 入力(100万トークン) | 出力(100万トークン) | 主な用途の目安 |
|---|---|---|---|---|
| GLM-5.2 | Z.ai | 約 $0.95 | 約 $3.00 | 設計・複雑な作業 |
| Qwen3.5 397B A17B | Alibaba | (要確認) | (要確認) | 日常のコーディング |
| Kimi K2.6 | Moonshot AI | 約 $0.66 | 約 $3.41 | 軽い定型作業 |
比較のために挙げると、Anthropicの最上位モデルClaude Opusは入力$5・出力$25程度です。上の3モデルはおおむね入力$1未満・出力$3前後で、桁が一つ違う水準のコスト感です。とくに大量のトークンを扱うコーディング作業では、この差が月額に大きく効いてきます。
ポイント:モデルのスラッグ(識別名)はバージョン更新で変わることがあります。Qwenの価格や正確なスラッグも含め、設定前に最新の値を確認する手順を後述します。推測で入力すると「is not a valid model ID」というエラーになるため、確認のひと手間が結果的に近道です。
■AIモデルのコスト比較(クリックで詳細ページにリンクします)

事前準備
設定に入る前に、次の4つを用意します。
1. OpenRouterのアカウントとAPIキー
openrouter.ai でアカウントを作成し、キー発行ページ(openrouter.ai/keys)でAPIキーを取得します。キーは sk-or-v1- で始まる文字列です。
2. クレジットのチャージ
今回使う3モデルはいずれも有料モデルです。OpenRouterは従量課金制なので、少額($5〜$10程度)をチャージしておけば、しばらく不自由なく使えます。
無料モデルも存在しますが、共有枠のため混雑時にエラー(429 Too Many Requests)が出てばかりで使い物になりませんでした。私はとりあえずクレジットカードを登録して、10ドルだけ課金することからスタートしました。
3. プライバシー設定の確認
OpenRouterには、どのデータポリシーのプロバイダーにリクエストを流すかという設定があります(openrouter.ai/settings/privacy)。設定によっては一部モデルが弾かれることがあるため、うまく動かない場合はここを確認します。業務上の機密データを扱う場合は、この設定とモデルの提供元を必ず意識する必要があります(後述)。
4. Claude Code本体のインストール
各パソコンにClaude Code本体を入れます。現在はNode.js不要のネイティブインストーラーが推奨です。
- Windows(PowerShell)
powershell
irm https://claude.ai/install.ps1 | iex
- Mac / Linux
bash
curl -fsSL https://claude.ai/install.sh | bash
インストール後は、ターミナルを一度開き直してから claude --version を実行し、バージョンが表示されれば成功です。「コマンドが見つからない」と出る場合は、新しいターミナルでPATHが反映されていないだけのことが多いので、ターミナル(やエディタ)を再起動します。
設定手順:Claude CodeをOpenRouterに向ける
ここからが本題です。Claude Codeは起動時に設定ファイル settings.json を読み込み、その中の env ブロックを環境変数として扱います。この1ファイルを用意するだけで、接続先と使うモデルを指定できて便利です。
settings.json の置き場所
設定ファイルには2つの考え方があります。
- ユーザー単位:
~/.claude/settings.json(WindowsはC:\Users\<ユーザー名>\.claude\settings.json) → どのフォルダで起動しても有効。その1台に効く。 - プロジェクト単位:
<プロジェクトフォルダ>/.claude/settings.json→ そのフォルダをプロジェクトとして開いたときに有効。
どの起動方法(ターミナル、エディタ拡張、IDE内ターミナル)でも、同じ settings.json が読まれます。普段の入り口がターミナルでもエディタでも問題ありません。
私の場合、本番環境はClaude Opus/Sonetを使いますが、経費を節減したい場合だけ格安モデルを使いたいので「プロジェクト単位」にして使い分けるようにしています。
settings.json の中身
次のような内容を作成します。sk-or-v1-... の部分は”sk-or-v1”で始まる自分のAPIキーをコピペします。
json
{
"env": {
"ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
"ANTHROPIC_AUTH_TOKEN": "sk-or-v1-自分のキー",
"ANTHROPIC_API_KEY": "",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "z-ai/glm-5.2",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "qwen/qwen3.5-397b-a17b",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "moonshotai/kimi-k2.6"
}
}
各項目の意味は以下の通りです。
ANTHROPIC_BASE_URL:接続先。OpenRouterのAnthropic互換エンドポイントhttps://openrouter.ai/apiを指定します。末尾にスラッシュを付けないこと。また、PowerShellでAPIを直接叩くときに使う/api/v1とは別物なので混同に注意します。ANTHROPIC_AUTH_TOKEN:OpenRouterのAPIキーを入れます。ANTHROPIC_API_KEY:空文字""にします(未設定ではなく空文字)。これを空にしないと、Claude CodeがAnthropic本家に認証しにいってしまいます。ANTHROPIC_DEFAULT_OPUS_MODELほか:Opus / Sonnet / Haikuの3枠に、それぞれ使いたいモデルのスラッグを割り当てます。
ハマってしまったポイント:モデル名に「~」を付けない
Anthropicの最新版を指す ~anthropic/claude-opus-latest のような表記には先頭にチルダ(~)が付きますが、これは「最新版に自動解決するエイリアス」専用の記号なんですね。
GLM-5.2やKimi K2.6のようにバージョンが確定しているスラッグにチルダを付けると無効になり、「is not a valid model ID」というエラーになってしまいました。上の例のように、チルダなしで記述する必要がありました。
正確なスラッグを確認する方法
モデルのスラッグは更新で変わってしまうことがあります。設定前に、自分のアカウントで今有効なスラッグを確認しておくと確実です。ターミナルで以下を実行すると、該当モデルの正確なIDが一覧で得られます(PowerShellの例)。
$models = Invoke-RestMethod -Uri "https://openrouter.ai/api/v1/models"
$models.data |
Where-Object { $_.id -match "glm-5\.2|qwen3\.5|kimi-k2\.6" } |
Select-Object id, name | Sort-Object id
ここで表示された実際のIDを settings.json に使うわけです。とくにQwenは複数のバージョンが並ぶため、目的のもの(397B / A17B)を選びます。
文字コードの注意(Windows)
Windowsでメモ帳や一部の方法で保存すると、BOM付きUTF-8になってClaude Codeが読めないことがあります。VS Codeなどで「UTF-8(BOMなし)」で保存するか、確実を期すなら次の方法で書き込みます。
$dir = "$env:USERPROFILE\.claude"
New-Item -ItemType Directory -Force -Path $dir | Out-Null
$json = @'
{
"env": {
"ANTHROPIC_BASE_URL": "https://openrouter.ai/api",
"ANTHROPIC_AUTH_TOKEN": "sk-or-v1-自分のキー",
"ANTHROPIC_API_KEY": "",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "z-ai/glm-5.2",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "qwen/qwen3.5-397b-a17b",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "moonshotai/kimi-k2.6"
}
}
'@
[System.IO.File]::WriteAllText("$dir\settings.json", $json, (New-Object System.Text.UTF8Encoding $false))
モデルの切り替え方
設定を保存したら、Claude Codeを一度完全に終了して再起動します(設定は起動時に読み込まれるため)。もし以前Anthropicアカウントでログインしていた場合は、一度だけ /logout を実行してから再起動する必要がありました。キャッシュされたログインが設定を上書きすることがあるようです。
セッション中の切り替え
会話の途中で、「/model」と打つことでモデルの切り替えができます。

起動時に指定する
そのセッションを最初から特定の枠で始めたい場合は、起動時にフラグを付けます。
claude --model z-ai
動作確認
再起動後、次の手順で正しく動いているか確認します。
/statusを実行 → 接続先がhttps://openrouter.ai/api、認証がANTHROPIC_AUTH_TOKENになっていることを確認/model qwenなどで各枠に切り替え、簡単な質問を投げてエラーが出ないか確認- openrouter.ai/activity にアクセスし、どのモデルへのリクエストが記録されているかを確認
3枠すべてで応答が返り、ダッシュボードにリクエストが表示されていれば、セットアップは完了です。
複数台・複数OSで使う場合のコツ
複数のパソコン(Windows・Mac・Linux混在)で同じ環境を使いたい場合でも、設定を台数分つくり直す必要はありません。settings.json の中身はOSを問わず共通だからです。
おすすめは、クラウドの共有ドライブにプロジェクトを置き、その中に .claude/settings.json を1つ用意する方法です。
私の場合、Google共有ドライブなどに置いておき、どのパソコンからそのフォルダを開いても、全台が同じ設定を自動的に読み込むようにしています。
各パソコンで必要な作業は、
- Claude Code本体のインストール(各OSで1回)
- その共有フォルダを開いて
claudeを起動するだけ
これだけで、設定作業ゼロで同じ環境が再現できます。
*MacやLinuxでは共有ドライブのマウント先パスがWindowsと異なる点にだけ注意が必要です。
コストの確認
実際に使ったトークン数と料金は、openrouter.ai/activity でモデル別に確認できます。
導入直後は一度眺めておくと、どの作業がどれだけコストを使っているかの感覚がつかめます。
「重い作業を安易にOpus枠(高性能モデル)で回していないか」を見直すだけでも、コストは大きく変わります。
注意点:非Anthropicモデルを使う上で
最後に、実運用で押さえておきたい注意点をまとめます。
1. ツール呼び出し・推論モードの相性
Claude Codeはツール呼び出し(ファイル編集やコマンド実行など)を多用します。今回の3モデルは非Anthropicモデルのため、この相性に差が出ます。一般に、Kimi K2.6はツール周りが比較的安定しています。GLM-5.2やQwen3.5のような推論型モデルは、思考(thinking)の扱いで挙動が変わる場合があります。実際に使ってみて空振りや不自然な挙動があれば、その枠だけ別モデルに差し替える、という調整がおすすめです。
2. データの取り扱い・機密性
今回のモデルはいずれも海外(とくに中国系)の提供元です。顧客の機密情報や個人情報を扱う業務では、データがどこで処理されるか、提供元のデータポリシーがどうなっているかを確認すべきでしょう。
守秘義務の重い分野では、機密データを外部の格安モデルに流すこと自体を避け、社内向けの非機密作業に限定する、といった線引きをして運用しています。
コスト最適化は、扱うデータの性質と切り離して考えないことが大切だと思っています。
3. APIキーの管理
共有ドライブに settings.json を置く場合、そのドライブにアクセスできる人はAPIキーを見られます。
他のスタッフもアクセスする場合は、利用上限額を設定した専用キーを発行して使うと、万一漏れても被害を限定できるかと思います。
OpenRouterは1アカウントで複数キーを発行でき、キーごとに上限を設定できるので便利です。
まとめ
OpenRouterを経由すれば、Claude Codeの使い慣れた操作感はそのままに、コストパフォーマンスに優れたモデルへ手軽に切り替えられます。まとめると、
- 設定は
settings.jsonのenvブロック1つにまとまる(OS共通) - 3枠(Opus / Sonnet / Haiku)に好きなモデルを割り当て、
/modelで切り替え - モデル名は正確なスラッグで、チルダは付けない
- 機密データの扱いとキー管理には十分注意する
作業の重さに応じてモデルを使い分けることで、コストを抑えつつ快適な開発環境を維持できます。
導入を検討される際の参考になれば幸いです。
本記事の手順・価格は執筆時点の情報です。サービスの仕様やモデルの提供状況・価格は変わることがあるため、設定前にOpenRouterおよびClaude Codeの最新情報をご確認ください。


コメント