コンテンツにスキップ
OmniRoute source

AgentRouter Setup Guide (日本語)

高度な設定:Claude Code 互換プロバイダータイプ経由で接続する

Section titled “高度な設定:Claude Code 互換プロバイダータイプ経由で接続する”

OmniRoute は、正しいワイヤーイメージで Anthropic Messages API と通信する Claude Code 互換プロバイダータイプ(anthropic-compatible-cc-*)を通じて、AgentRouter(および同様のリレー)もサポートしています。https://agentrouter.org を指定した汎用の openai-compatible-chat プロバイダーは、動作しません。Claude Code のように見えないリクエストは、上流の WAF によって拒否されます。


  • AgentRouter のアカウントと API キー。新規登録者は、プロジェクトの README にあるアフィリエイトリンク経由で無料クレジットを受け取れます。
  • ENABLE_CC_COMPATIBLE_PROVIDER 機能フラグを有効にして OmniRoute が実行されていること(以下を参照)。

1. CC 互換プロバイダータイプを有効にする

Section titled “1. CC 互換プロバイダータイプを有効にする”

Claude Code 互換プロバイダータイプは、公式 Claude Code クライアントを忠実に模倣したトラフィックを送信するため、機能フラグによって制限されています。OmniRoute を起動する前に、次の環境変数を設定して有効にします。

ターミナルウィンドウ
ENABLE_CC_COMPATIBLE_PROVIDER=true

Docker の例:

ターミナルウィンドウ
docker run -d --name omniroute \
--restart unless-stopped \
-p 20128:20128 \
-v omniroute-data:/app/data \
-e ENABLE_CC_COMPATIBLE_PROVIDER=true \
diegosouzapw/omniroute:latest

再起動すると、ダッシュボードには既存の OpenAI 互換および Anthropic 互換のフローに加えて、Claude Code 互換を追加オプションが表示されます。

2. ダッシュボードでプロバイダーを作成する

Section titled “2. ダッシュボードでプロバイダーを作成する”
  1. ダッシュボード → プロバイダー → プロバイダーを追加を開きます。
  2. Claude Code 互換を追加を選択します(上記のフラグが設定されている場合にのみ表示されます)。
  3. 各フィールドに入力します。
フィールド 値
名前 AgentRouter(または任意のラベル)
プレフィックス agentrouter(ログとダッシュボードに表示される分かりやすいエイリアス)
ベース URL https://agentrouter.org
チャットパス /v1/messages?beta=true(デフォルト — そのままにします)

正規のモデル識別子では、引き続き完全なプロバイダーノード ID (anthropic-compatible-cc-{uuid}/{model})を使用します。プレフィックスは、ログ出力を分かりやすくするために src/lib/usage/callLogs.ts によって解決される表示用エイリアスにすぎません。

  1. (任意)検証フィールドに API キーを貼り付け、確認をクリックして、保存前に接続を確認します。
  2. 追加をクリックします。

作成したら、プロバイダーを開き、AgentRouter API キー(sk-...)を使用して接続を追加します。接続の test_status が active に変わるはずです。

3. コンボ経由または直接使用する

Section titled “3. コンボ経由または直接使用する”

プロバイダーのプレフィックスを名前空間として使用し、モデルを参照します。

ターミナルウィンドウ
curl -X POST http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{
"model": "agentrouter/claude-opus-4-6",
"messages": [{"role": "user", "content": "hello"}],
"max_tokens": 100
}'

正規モデル ID anthropic-compatible-cc-{uuid}/claude-opus-4-6 も使用できます。 これはデータベースおよびコンボ設定に表示される ID です。

または、他のプロバイダーと同様に、ルーティング、フォールバック、クォータ管理を行うためのコンボに追加します。


参考として、cc-compatible ブリッジは上流への各リクエストで以下を送信します (open-sse/services/claudeCodeCompatible.ts を参照)。

ヘッダー 値
Authorization Bearer <api-key>
User-Agent claude-cli/2.1.258 (external, sdk-cli)
anthropic-version 2023-06-01
anthropic-beta claude-code-20250219,interleaved-thinking-2025-05-14,effort-2025-11-24
接続単位の redact-thinking ベータ切り替え 思考ストリームの編集を明示的に要求する上流に対して redact-thinking-2026-02-12 を追加します
接続単位の要約思考切り替え 表示モードがまだ設定されていない CC Compatible の思考リクエストに display: "summarized" を追加します
anthropic-dangerous-direct-browser-access true
x-app cli
X-Stainless-* 各種 Stainless SDK ヘッダー(言語、パッケージバージョン、OS、アーキテクチャなど)

これにより、リクエストが上流の WAF / クライアント許可リストを通過できるようになります。


{"error":{"message":"unauthorized client detected, ..."}} — リクエストが Claude Code のワイヤーイメージと一致していません。これは、プロバイダーが anthropic-compatible-cc ではなく openai-compatible-chat として設定されている場合や、 起動時に ENABLE_CC_COMPATIBLE_PROVIDER=true フラグが設定されていなかった場合に発生します。

{"error":{"message":"无效的令牌","type":"new_api_error"}} (HTTP 401) — 「無効なトークン」。ワイヤーイメージは正しいものの、API キーが拒否されています。 AgentRouter ダッシュボードで新しいキーを生成し、接続を更新してください。

{"error":{"code":"content-blocked","type":"agent_router_api_error"}} (HTTP 400) — AgentRouter のモデレーションフックがリクエスト内容を拒否したか、 キーのプランで要求されたモデルの使用が許可されていません。別のプロンプトまたはモデルを試してください。 無害なプロンプトが継続的にブロックされる場合は、AgentRouter サポートにお問い合わせください。

特定のモデルでのみ発生する [400]: content-blocked — ほとんどの AgentRouter プランでは、 一部のモデル(例: claude-opus-4-6)のみ使用できます。その他のモデル ID は、 キーが有効でも unauthorized_client_error を返します。ご利用のプランで対象となるモデルを AgentRouter ダッシュボードで確認してください。

omniroute ログの Invalid JSON response from provider (reset after Ns) — 上流が JSON ではない本文(通常は WAF からの HTML エラーページ)を返しました。 これは通常、リクエストが AgentRouter バックエンドに到達しなかったことを意味します。 プロバイダー ID が anthropic-compatible-cc- で始まっていることを再確認してください (末尾のダッシュに注意してください。open-sse/services/claudeCodeCompatible.ts の CLAUDE_CODE_COMPATIBLE_PREFIX を参照)。また、機能フラグが有効になっていることも確認してください。

AgentRouter プロバイダーがすでに存在するにもかかわらず、 unauthorized client detected / HTML エラーページが発生する — 複数の AgentRouter プロバイダーがあり、リクエストが誤ったプロバイダーに送信されている可能性があります。 agentrouter プレフィックスを使用して、以前に手動作成した anthropic-compatible-*(cc ではない)または openai-compatible-chat-* プロバイダーが 残っている場合、そのプロバイダーが agentrouter/<model> モデル ID を所有している可能性があります (また、コンボがノード ID でそのプロバイダーを参照している場合もあります)。その結果、トラフィックは 正しいワイヤーイメージを標準で備えている組み込みの agentrouter プロバイダーではなく、 汎用的な User-Agent を送信して拒否されるプロバイダーへルーティングされます。モデルが実際にどこへ 解決されているかを omniroute ログで確認してください(ROUTING タグには agentrouter/<model> → <providerId>/<model> と表示されます)。<providerId> が agentrouter でない場合は、ネイティブプロバイダーに統合してください。コンボの参照先を agentrouter/<model>(providerId agentrouter)に変更し、重複している compatible プロバイダーを削除します。ネイティブプロバイダーでは、ワイヤーイメージの設定も customUserAgent も必要ありません。



OmniRoute ソースコード (a58000c7685f)

HagiCode

HagiCode は構造化ワークフロー、マルチエージェント実行、Hero Dungeon ビューを備えたエージェント型コーディングワークスペースです。

よりスマートで速く、楽しいエージェント型ワークフローで、使いやすいソフトウェアを形にします。

HagiCode ライトテーマのメイン画面
  • Smart構造化ワークフローは意図をアイデアから変更のリリースまで実行可能な道筋にします。
  • Efficientマルチエージェントのワークフローで調査、実装、レビューを並行して進めます。
  • FunHero Dungeon により長時間のコーディングを視覚的で協力的な体験にします。
HagiCode を見る