Source: https://aiprimetech.io/ja/learn/use-claude-api-with-opencode/ [ホーム](/ja/) / [学習](/ja/learn/) / Claude向けOpenCode設定:opencode.jsonの設定、モデル、よくあるエラー # Claude向けのOpenCode設定:opencode.jsonの設定、モデル、よくあるエラー OpenCodeは次のファイルから設定を読み込みます: opencode.json。このゲートウェイ経由でClaudeを利用するには、Anthropicプロバイダーの次の値を変更し、 baseURLキーを設定します。以下では、動作する設定例をふたつ、重要なモデル設定とコンテキスト設定、そして当社の実際のリクエストログに基づく、このゲートウェイでOpenCodeユーザーが遭遇するエラーの解決方法を紹介します。 ## opencode.jsonの配置場所 OpenCodeはグローバル設定とプロジェクトごとの設定を統合します。 ~/.config/opencode/opencode.json はすべての環境に適用したい設定に使用し、 opencode.json はプロジェクトのルートに配置して、そのリポジトリに適用します。次の $schema 行を追加すると、ほとんどのエディターで自動補完と検証を利用できます。 キーをファイルに記載しないでください。環境変数に格納し、次の形式で参照してください: {env:AIPRIME_API_KEY}。次の方法で追加したキーは、 /connect OpenCode内で追加すると、次の場所に保存されます: ~/.local/share/opencode/auth.json; opencode auth list で、そこに保存されている内容を確認できます。 ターミナルコピー ``` export AIPRIME_API_KEY=your_gateway_key # add to ~/.bashrc or ~/.zshrc opencode auth list # credentials OpenCode already knows about ``` ## 方法1:組み込みのAnthropicプロバイダーをゲートウェイに接続 最小限の変更で済む方法です。OpenCode独自のAnthropicプロバイダーとそのモデル一覧を維持し、リクエストの送信先を上書きします。 opencode.jsonコピー ``` { "$schema": "https://opencode.ai/config.json", "provider": { "anthropic": { "options": { "baseURL": "https://aiprimetech.io/v1", "apiKey": "{env:AIPRIME_API_KEY}" } } }, "model": "anthropic/claude-sonnet-5", "small_model": "anthropic/claude-haiku-4-5" } ``` この baseURL の末尾に必要なのは /v1。OpenCodeのAnthropicプロバイダーはAI SDKの @ai-sdk/anthropicで、デフォルトは https://api.anthropic.com/v1です。次のパスを追加します: /messages 指定した値に追加します。これがない場合、 /v1 リクエストはウェブサイトに到達してHTMLを返し、OpenCodeはこれを解析エラーとして報告します。 ## 選択肢2:独自のモデル一覧を持つカスタムプロバイダー プロバイダーの設定を別に用意すると、ゲートウェイをAnthropicのログインから切り離し、モデル選択欄に表示するモデルを厳密に指定し、モデルごとにコンテキストの上限を設定できます。 opencode.jsonコピー ``` { "$schema": "https://opencode.ai/config.json", "provider": { "aiprime": { "npm": "@ai-sdk/anthropic", "name": "AI Prime Tech", "options": { "baseURL": "https://aiprimetech.io/v1", "apiKey": "{env:AIPRIME_API_KEY}" }, "models": { "claude-sonnet-5": { "name": "Claude Sonnet 5", "limit": { "context": 200000, "output": 64000 } }, "claude-opus-5-5": { "name": "Claude Opus 5.5", "limit": { "context": 200000, "output": 64000 } }, "claude-haiku-4-5": { "name": "Claude Haiku 4.5", "limit": { "context": 200000, "output": 32000 } } } } }, "model": "aiprime/claude-sonnet-5", "small_model": "aiprime/claude-haiku-4-5" } ``` 優先的に選ぶのは @ai-sdk/anthropic をClaudeに使用します。ネイティブのMessages APIを使用するため、プロンプトキャッシュと思考機能がAnthropicの設計どおりに動作します。ゲートウェイはOpenAI形式にも対応しているため、 @ai-sdk/openai-compatible も同じ https://aiprimetech.io/v1 ベースURLで動作し、同じキーでGPTモデルを使用する場合はこちらの経路を使います。 ## モデルとコンテキストの上限 | モデルID | 用途 | claude-sonnet-5 | コーディングとエージェント作業の標準モデル:高速、高性能、中程度の価格。 | claude-opus-5-5 | より難しい推論、大規模なリファクタリング、長時間のエージェント実行。 | claude-fable-5-1 | 最も高性能で最も高価。最も難しいタスクに絞って使いましょう。 | claude-haiku-4-5 | 低価格で高速:タイトル、要約、分類、小さな処理。 model はメインエージェントが使用するモデルです。 small_model はセッションタイトルの生成など、低コストの補助タスクを処理します。 limit.context の数値は、セッションをいつ圧縮するかをOpenCodeに伝えます。長いセッションで次のエラーが発生する場合: prompt is too long、この値を下げてください(200000が安全な値です)。これにより、エンドポイントの受け入れ上限を超えて送信する前に、OpenCodeが早めに要約を行います。 モデルIDは完全に一致する文字列で指定します。次のような古い名前: claude-3-5-sonnet-20241022 や日付付きのスナップショットは提供されていません。上記のIDか、ダッシュボードの一覧にあるIDを使用してください。 ## OpenCodeを起動する前にキーとURLを確認する ターミナルからリクエストを送信すれば、OpenCodeの設定とは独立して、キーとURLが正しいかを確認できます。 ターミナルコピー ``` curl -s https://aiprimetech.io/v1/messages \ -H "x-api-key: $AIPRIME_API_KEY" \ -H "anthropic-version: 2023-06-01" \ -H "content-type: application/json" \ -d '{"model":"claude-haiku-4-5","max_tokens":20,"messages":[{"role":"user","content":"ping"}]}' ``` JSONの応答に content 配列が含まれていれば、ゲートウェイ側は正常であり、残っている問題は次の設定にあります: opencode.json. Invalid API key は、変数が空であるか、誤ったキーが格納されていることを意味します。 ## トラブルシューティング:OpenCodeユーザーが遭遇するエラー このゲートウェイでOpenCodeを使用する際によく発生するエラーと、それぞれの解決方法を紹介します。 | 表示される内容 | 原因 | 対処方法 | JSON の解析エラー、次で始まるレスポンス < | baseURL なしで /v1:リクエストがAPIではなくウェブサイトに到達しています | 末尾を baseURL 置き換え先: /v1 | 404 page not found | /v1 が重複し、パスが次のようになっています: /v1/v1/messages | 次の値をそのまま使用してください: https://aiprimetech.io/v1 | Invalid API key | OpenCodeを起動したシェルで変数がエクスポートされていないか、別のキーが使用されています | echo $AIPRIME_API_KEY, opencode auth listしてから、OpenCodeを再起動してください | モデルがサポートされていない/モデルが見つからない | エンドポイントで提供されていないIDです。古い日付付きの名前が原因であることがよくあります | 上の表にあるIDを使用してください | prompt is too long: N tokens > N tokens | セッションがモデルの受け入れ上限を超えました | /compactし、次の値を下げてください: limit.context | Concurrency limit exceeded for user | 並列サブエージェントがキーの同時実行数の上限を超えています | 同時に実行するサブエージェントを減らすか、サポートに同時実行数の上限引き上げを依頼してください | Insufficient account balance | 残高がない | [チャージ](/ja/topup/) して、再試行してください | No available accounts または This request could not be completed | 上流側で一時的な処理容量の問題が発生しています | メッセージを再送信してください。問題が続く場合はモデルを切り替えてください クライアントではなくモデル側で発生するエラーについては、次を参照してください: [Claude APIエラーガイド](/ja/learn/claude-api-errors-troubleshooting/). ## よくある質問 OpenCodeの設定ファイルはどこにありますか? グローバル設定は~/.config/opencode/opencode.jsonに、プロジェクトごとの設定はリポジトリのルートにあるopencode.jsonに保存されます。OpenCodeは両方をマージします。 APIキーを使ってOpenCodeでClaudeを使用するにはどうすればよいですか? provider.anthropic.options.baseURLを/v1で終わるゲートウェイURLに、apiKeyを{env:YOUR_VAR}に設定するか、npmに@ai-sdk/anthropicを指定したカスタムプロバイダーを追加し、model: provider/model-idでモデルを選択します。 OpenCodeで解析エラーが発生したり、応答が「<」で始まったりするのはなぜですか? baseURLに/v1がないため、リクエストがAPIではなくウェブサイトに到達しています。@ai-sdk/anthropicには完全なプレフィックスが必要です。例:https://aiprimetech.io/v1. OpenCodeでClaude ProまたはMaxのログインを使用できますか? OpenCodeのドキュメントには、AnthropicがサードパーティーのPro/Maxプラグインを禁止しており、OpenCodeは1.3.0にそれらの同梱を停止したと記載されています。サポートされている接続方法はAPIキーの使用です。 数分でClaudeの利用を開始 APIキーを取得 — Anthropicアカウントもウェイトリストへの登録も不要です。[APIキーを取得](/register) AI Prime Techは独立したAPIゲートウェイです。Anthropicとの提携関係はなく、同社の承認を受けておらず、同社の再販業者でもありません。Claudeおよび関連するモデル名は、それぞれの所有者の商標です。 ## Claude APIのその他のガイド [Claude APIキーの取得方法](/ja/learn/how-to-get-a-claude-api-key/)[Claude API の料金を解説](/ja/learn/claude-api-pricing-explained/)[Claude APIを最も安く利用する方法](/ja/learn/cheapest-way-to-use-claude-api/)[Claude APIでCursorを無制限に利用](/learn/use-claude-api-with-cursor/)[Claude Codeへの無制限アクセス](/ja/learn/use-claude-api-with-claude-code/)[Claude APIゲートウェイとAnthropicへの直接接続の比較](/ja/learn/claude-api-vs-anthropic-direct/)[OpenAI互換API経由でClaudeを使う](/ja/learn/openai-compatible-claude-api/)[Claude モデルを解説:Claude Opus、Sonnet、Haiku、Fable のモデル比較 — すべての Claude API モデル、Anthropic のモデル名と料金(2026)](/ja/learn/claude-api-models-compared/)[暗号資産でClaude APIの料金を支払う](/ja/learn/claude-api-with-crypto-payment/)[ウェイティングリストなしでClaude APIを利用](/ja/learn/claude-api-without-waitlist/)[Claudeのトークン使用量を削減する方法](/ja/learn/how-to-reduce-claude-token-usage/)[Claude APIでClineを無制限に利用](/ja/learn/use-claude-api-with-cline/)[Claude APIでRoo Codeを無制限に利用](/ja/learn/use-claude-api-with-roo-code/)[JetBrains IDEでClaudeを無制限に利用](/ja/learn/use-claude-api-with-jetbrains/)[Claude APIでAiderを無制限に使う](/ja/learn/use-claude-api-with-aider/)[VS CodeでClaudeを無制限に利用](/ja/learn/use-claude-api-with-vscode/)[ClaudeでHermesエージェントを無制限に実行する](/ja/learn/run-hermes-agent-with-claude-api/)[ClaudeでOpenClawを無制限に実行](/ja/learn/run-openclaw-with-claude-api/)[Anthropic互換APIとは](/ja/learn/anthropic-compatible-api/)[Claude CodeのAPIキー — ANTHROPIC_API_KEY:取得方法、設定方法、代わりにclaude setup-tokenを使うべき場合](/ja/learn/claude-code-api-key-setup/)[Claude Code APIのコスト — 料金と削減方法](/ja/learn/claude-code-api-costs/)[Claude APIエラーを解説:サーバーエラー500、過負荷529、レート制限429、不正なリクエスト400 — それぞれの解決方法](/ja/learn/claude-api-errors-troubleshooting/)[Claude APIクレジットの購入方法 — Claudeクレジットがどの「Claudeアカウント購入」のオファーよりも優れている理由](/ja/learn/buy-claude-api-credits/)[Claudeの無料API:無料のClaude APIキーはあるのか、2026に実際に無料で使えるものは?](/ja/learn/claude-api-free-trial/)[Claude APIとClaude Pro/Maxサブスクリプション — どちらを選ぶべきか](/ja/learn/claude-api-vs-subscription/)[ClaudeでCodex CLIを実行する](/ja/learn/use-claude-api-with-codex/)[Claudeをn8nに接続する](/ja/learn/use-claude-api-with-n8n/)[LiteLLMからClaudeへのルーティング](/ja/learn/use-claude-api-with-litellm/)[Kilo CodeでClaudeを使う](/ja/learn/use-claude-api-with-kilo-code/)[GitHub CopilotにClaudeを導入する](/ja/learn/use-claude-api-with-github-copilot/)[ゲートウェイ経由でZedをClaudeに接続する](/ja/learn/use-claude-api-with-zed/)[Cherry StudioをClaudeに接続](/ja/learn/use-claude-api-with-cherry-studio/)[LangChainのChatAnthropic:インポート、base_url、ストリーミング、ツール、エラー](/ja/learn/use-claude-api-with-langchain/)[Anthropic Python SDK:インストール、base_urlの設定、ストリーミング、エラー処理](/ja/learn/anthropic-python-sdk/)[Vercel AI SDKでClaudeを使用:createAnthropicのbaseURL、ストリーミング、問題の修正](/ja/learn/use-claude-api-with-vercel-ai-sdk/)[ClaudeでFactory Droidを実行](/ja/learn/use-claude-api-with-factory-droid/)[Claude Code APIの仕組みを解説](/ja/learn/claude-code-api/)[アプリケーションへのClaude APIの統合](/ja/learn/claude-api-integration/)[Claudeを無制限に利用する方法 — 「Claude Codeのクラック版」が存在しない理由](/ja/learn/get-unlimited-claude-usage/)