TL;DR
- OpenRouter の
:freeモデルは商用利用可・レート制限付きで完全無料 -
ANTHROPIC_API_KEYを差し替えるだけで Claude Code のバックエンドを切り替えられる - Qwen3 / Gemini 2.0 Flash / Llama 4 など、2026年時点で有力モデルが揃っている
- 費用ゼロのまま「AIペアプログラミング」を試せる最速ルートを紹介する
背景
Claude Code(旧 claude-code CLI)は Anthropic の公式 CLI であり、ターミナルから直接 Claude と対話しながらコーディングを進められるツールだ。
しかし Anthropic の従量課金 を気にして導入をためらっているエンジニアも多い。
OpenRouter はさまざまな LLM プロバイダーへの統一 API ゲートウェイで、model_name:free という形式でモデルを指定すると、レート制限の範囲内で無料利用できる。
Claude Code は内部で OpenAI 互換 API を話すため、OpenRouter を中継すればAnthropic の API キーなしで起動できる。本記事ではその手順を5ステップで解説する。
注意: OpenRouter の
:freetier はレート制限が厳しく(1分あたり数十リクエスト程度)、本番自動化には向かない。個人学習・プロトタイピング用途を想定している。
前提環境
| 項目 | バージョン / 備考 |
|---|---|
| OS | macOS 14 / Ubuntu 22.04 LTS |
| Node.js | 20 以上 |
| Claude Code CLI | 最新版(npm でインストール) |
| OpenRouter アカウント | 無料登録のみ |
ステップ1: Claude Code CLI のインストール
npm install -g @anthropic-ai/claude-code
インストール後、バージョン確認:
claude --version
# claude-code/x.x.x
ステップ2: OpenRouter アカウントを作成してAPIキーを取得
- openrouter.ai にアクセスし、GitHub / Google アカウントでサインアップ
- ダッシュボード → Keys → Create Key をクリック
- キー名(例:
claude-code-dev)を入力して生成 - 表示された
sk-or-v1-xxxx...をコピーしてメモ帳等に保存
無料枠の確認方法:
Models ページで Free バッジのあるモデルを選ぶ。2026年時点で :free 対応の主要モデルは以下:
| モデル | 特徴 |
|---|---|
qwen/qwen3-8b:free |
軽量・高速・コード生成得意 |
google/gemini-2.0-flash-exp:free |
Google 製・マルチモーダル対応 |
meta-llama/llama-4-scout:free |
Meta 製・長コンテキスト |
mistralai/mistral-7b-instruct:free |
ヨーロッパ産・安定した出力 |
:freeモデルの最新一覧はhttps://openrouter.ai/models?q=freeで確認できる。ラインナップは随時変わる。
ステップ3: 環境変数の設定
Claude Code は ANTHROPIC_BASE_URL と ANTHROPIC_API_KEY を参照する。OpenRouter に向けるには以下を設定する。
bash / zsh の場合
# ~/.bashrc または ~/.zshrc に追記
export ANTHROPIC_BASE_URL="https://openrouter.ai/api/v1"
export ANTHROPIC_API_KEY="sk-or-v1-ここにOpenRouterのキー"
source ~/.zshrc
Fish shell の場合
set -Ux ANTHROPIC_BASE_URL "https://openrouter.ai/api/v1"
set -Ux ANTHROPIC_API_KEY "sk-or-v1-ここにOpenRouterのキー"
direnv を使ってプロジェクト単位で切り替える場合
プロジェクトルートに .envrc を作成:
export ANTHROPIC_BASE_URL="https://openrouter.ai/api/v1"
export ANTHROPIC_API_KEY="sk-or-v1-ここにOpenRouterのキー"
direnv allow .
これで cd したときだけ OpenRouter に切り替わる。Anthropic 本家を使うプロジェクトとの混在が管理しやすくなる。
ステップ4: モデルを指定して起動
Claude Code でモデルを指定する方法は2通りある。
方法A: 起動時フラグ
claude --model "qwen/qwen3-8b:free"
方法B: プロジェクト設定ファイル(推奨)
プロジェクトルートに claude.json(または .claude/settings.json)を置く:
{
"model": "qwen/qwen3-8b:free"
}
こうすると claude コマンドだけで自動的に指定モデルで起動する。
動作確認
claude
✓ Connected to OpenRouter (qwen/qwen3-8b:free)
> Hello! Write a Python function that reverses a string.
正常に応答が返れば設定完了だ。
ステップ5: 実用的な使い方パターン
パターンA: コードレビューさせる
# 既存ファイルを渡してレビュー
claude "このファイルのコードをレビューして改善点を教えて" < src/utils.ts
パターンB: テスト生成
cat src/calculator.ts | claude "このコードに対する Jest テストを書いて"
パターンC: リファクタリング提案
claude "src/api/handler.ts を読んで、エラーハンドリングを改善するリファクタリング案を出して"
パターンD: コミットメッセージの自動生成
git diff --staged | claude "この diff に対する Conventional Commits 形式のコミットメッセージを書いて"
レート制限への対処法
:free モデルは 429 Too Many Requests が頻繁に起きる。対処策を3つ挙げる。
1. exponential backoff を自前で挟む(bash)
retry_claude() {
local max=5
local delay=2
for i in $(seq 1 $max); do
claude "$@" && return 0
echo "Retry $i/$max in ${delay}s..."
sleep $delay
delay=$((delay * 2))
done
echo "All retries failed."
return 1
}
2. モデルをフォールバックリストで回す
OpenRouter の API は models 配列を受け付けるが、Claude Code CLI 経由では直接指定できない。代わりに モデル名をシェルスクリプトで順番に試す実装が現実的:
MODELS=(
"qwen/qwen3-8b:free"
"google/gemini-2.0-flash-exp:free"
"meta-llama/llama-4-scout:free"
)
for model in "${MODELS[@]}"; do
export ANTHROPIC_MODEL="$model"
result=$(claude "$@" 2>&1)
if echo "$result" | grep -qv "429"; then
echo "$result"
break
fi
done
3. 有料モデルと混合運用
個人の学習・調査目的は :free で、重要なコード生成は claude-sonnet-4-5(Anthropic 直接課金)に切り替える運用が現実的だ。.envrc でプロジェクトごとに分ける前述のアプローチが効く。
トラブルシューティング
Authentication error が出る
-
ANTHROPIC_API_KEYが OpenRouter のsk-or-v1-形式になっているか確認 - Anthropic の
sk-ant-形式のキーは OpenRouter では使えない
Model not found が出る
- OpenRouter のモデル名は大文字小文字を区別する
-
https://openrouter.ai/modelsで正確なスラッグを確認する -
:freeサフィックスを忘れずに
日本語の出力が乱れる
Qwen3 系モデルは日本語が得意だが、システムプロンプトが英語だと応答が英語になることがある。
claude --system "あなたは日本語で回答するAIアシスタントです。" "コードのバグを見つけて"
まとめ
| ステップ | 作業内容 |
|---|---|
| 1 | Claude Code CLI を npm でインストール |
| 2 | OpenRouter アカウントを作成・APIキー取得 |
| 3 |
ANTHROPIC_BASE_URL を OpenRouter に向ける |
| 4 |
--model フラグまたは設定ファイルでモデルを指定 |
| 5 | レート制限対策を入れて実用的に使う |
OpenRouter の :free モデルはレート制限があるものの、1円も払わずにAIペアプログラミングを体験できる最短ルートだ。コスト感覚をつかんだうえで有料プランに移行するのが、無駄のない導入フローといえる。
参考リンク
✍️ 本記事の著者: 合同会社ジモラボ
ジモラボは、八王子を拠点に AI を活用した SaaS を多数開発しています。本記事の技術検証もそうした開発過程の副産物です。
- 🌐 公式サイト: https://locallab.jp
- 🔍 AI SEO 最適化 SaaS: lookupai.jp
- 📺 YouTube: @locallab_llc
- ✉️ お問い合わせ: info@locallab.jp
興味を持っていただけたら、ぜひ各 SNS のフォローもお願いします!