CodeRouterのエージェントとモデル
このページでは、Macとcmux Cloudマシンで各エージェントがCodeRouterに接続する方法と、各エージェントがモデルを選ぶ方法を説明します。
| エージェント | Macの場合 | Cloudマシンの場合 |
|---|---|---|
| Codex | cr codex | 自動 |
| OpenCode | cr opencode | 自動 |
| Pi | cr pi (実験的) | 自動 |
| Claude Code | CodeRouter APIキー | 自動 |
Macの場合
crはインストール済みのエージェントを起動し、その実行に限ってCodeRouterに向けます。エージェントはPATH上にある必要があります。エージェント名の後はすべてそのまま渡されます。
Codex
cr codexはCodeRouterのモデルプロバイダーでCodexを実行します。exec、review、resumeなどのサブコマンドも同じように動作します。cr nakedはCodeRouterを経由せずに通常のCodexを実行します。
cr codex
cr codex exec "fix the failing test"
cr codex -m <model>
cr nakedOpenCode
cr opencodeはチームのOpenCode Goアカウントのモデルを読み込み、--modelを指定しない限り最初のモデルを使います。--modelの値はそれらのモデルのいずれかである必要があります。他のプロバイダーを使う場合は通常のopencodeを実行してください。
cr opencode
cr opencode --model <model>Pi
cr piはCodexと同じモデルを持つcoderouterプロバイダーをPiに追加し、--modelを指定しない限り最初のモデルを使います。プロバイダーは固定なので、--providerは拒否されます。Piのサポートは実験的です。
cr pi
cr pi --model <model>Claude Codeとその他のAPIクライアント
crにはClaude Code用のランチャーはありません。Mac上のClaude Code、またはAnthropic Messages APIやOpenAI Responses APIを使うツールをルーティングするには、CodeRouter APIキーを作成し、ツールをcoderouter.devに向けてください。
CodeRouterダッシュボードのAPIキーセクションでキーを作成します。キーはcrk_で始まり、一度だけ表示されます。キーの作成や失効には、そのチームでAPIキーを管理する権限が必要です。個人チームでは常にこの権限があります: cmux.com/dashboard/coderouter
# Claude Code and Anthropic Messages API clients
export ANTHROPIC_BASE_URL=https://coderouter.dev
export ANTHROPIC_API_KEY=crk_...
claude
# OpenAI Responses API clients
export OPENAI_BASE_URL=https://coderouter.dev/v1
export OPENAI_API_KEY=crk_...組織のAPIキーはチームの共有アカウントだけを使います。個人チームのキーは非公開のアカウントも使えます。CodeRouterが提供するのはOpenAI Responses APIで、Chat Completionsではありません。
ブラウザを開けないマシンでは、cr login --api-keyでキーを使ってcrにサインインし、CODEROUTER_API_KEYで1回のコマンドにキーを渡せます。キーはダッシュボードで失効させるか、そのキーを使うマシンでcr logoutを実行してください。
cr login --api-key <key>
CODEROUTER_API_KEY=<key> cr codex exec "run the tests"cmux Cloudマシンの場合
Cloudマシンでは設定は不要です。各エージェントはCodeRouterの非公開アドレスを通じてチームのCodeRouterアカウントを使い、シェルまたはエージェントの初回起動時にcmuxがその設定を書き込みます:
- Claude Codeには、すべてのシェルではなく起動のたびにANTHROPIC_BASE_URLとプレースホルダーのANTHROPIC_API_KEYが渡されるため、自分のサインインより優先されることはありません。初回起動時の質問にはすでに回答済みです。
- Codexには~/.codex/config.tomlにcmuxモデルプロバイダーが設定されます。
- Piには~/.pi/agent/models.jsonにプロバイダーの上書きが設定されます。
- OpenCodeは初回起動時にCodeRouterからプロバイダーリストをダウンロードして~/.config/cmux/opencode-team.jsonに保存し、実行のたびに自分の設定に追加します。
cmuxは各ファイルが存在しないときだけ書き込むため、自分で編集した内容は保持されます。すでに別のモデルプロバイダーを指定しているCodexの設定は変更しません。
代わりに自分のアカウントを使うには、マシンでcr use ownを実行し、エージェントの通常の方法でサインインします:Claude Codeでは/login、またはcodex login、opencode auth login。cr use teamでチームに戻し、cr use own codexで1つのエージェントだけを切り替え、cr useで各エージェントのサインイン方法を確認できます。選択しない場合、マシンでサインイン済みのエージェントは自分のアカウントを使い、チームにアカウントがないエージェントは通常のサインインを表示します。変更はエージェントの次回起動時に適用されます。
エージェントは通常どおり実行します。cmux coderouter agentは単独のプロンプトをエージェントの単発実行形式に変換します。マシン内では現在のターミナルで実行し、Macではcmux vm agentと同様に、指定したマシン上でエージェントを起動します。
# Inside a Cloud machine
claude
codex
cmux coderouter agent claude "summarize the current checkout"
# From your Mac
cmux coderouter agent codex --machine brave-otter -- "run the tests"Cloudマシンは、そのマシンを所有するチームのアカウントを使います。利用可能なアカウントがないとエージェントが報告した場合は、アカウントを追加するか、既存のアカウントをそのチームと共有してください。
モデル
CodexとPiは、CodeRouterが選んだアカウントのモデルカタログを使います。カタログは/v1/modelsで提供されるため、Codexのモデル選択にはアカウントで使えるモデルが表示されます。モデルはCodexの-mフラグまたは/modelコマンドで選びます。OpenRouterキーの場合、CodeRouterはOpenAIのモデルIDをそのままではなくopenai/<model>として送ります。
OpenCodeにはチームのOpenCode Goアカウントのモデルが表示されます。
Claude Codeは--modelまたは/modelで選んだモデルを送り、CodeRouterはそれを選ばれたアカウントに転送します。サブスクリプションとAPIキーのアカウントは、Anthropicがそのアカウントに許可しているモデルを提供します。
Bedrockアカウントは組み込みの対応表でClaudeのモデルIDをBedrockのモデルIDに変換し、BedrockのIDはそのまま通します。対応表にないモデルはnot_found_errorを返します。別のモデルを対応付けるには、--modelを付けてアカウントを追加してください:
cmux coderouter claude add bedrock --region us-east-1 \
--model <claude-model-id>=<bedrock-model-id>Cloudマシン内では、cmux coderouter modelsがCodexのモデルカタログをJSONで出力します。
# Inside a Cloud machine
cmux coderouter models