トラブルシューティング · 2026-10-07 時点

Claude Code をサードパーティゲートウェイで使うときのエラーと公式修正(2026)

2026-10-07 時点で、サードパーティのゲートウェイや独自の ANTHROPIC_BASE_URL を使うときに Claude Code が出すよくある 400 エラーには、いずれも公式の修正か対処法があります。「400 … Input tag 'advisor_20260301'」は 2.1.276 以降で修正済み、ゲートウェイが構造化出力を拒否する場合は 2.1.288 で追加された CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS=1 を設定、ゲートウェイが beta ヘッダーを 400 以外のステータスで拒否したときのリクエスト失敗は 2.1.290 で修正されました。「Extra inputs are not permitted」については、公式のエラーリファレンスがゲートウェイによる anthropic-beta ヘッダーの除去を原因に挙げており、ヘッダーをそのまま転送させる必要があります。本ページでは Claude Code 公式の変更履歴とゲートウェイ文書の原文に沿って、エラー原文・原因・修正を一つずつ並べます。

更新日 2026-10-08

#ANTHROPIC_BASE_URL#anthropic-beta#Extra inputs are not permitted#advisor_20260301

覚えておきたい 4 つのバージョンとヘッダー

2.1.276

advisor_20260301 の 400 を修正

公式変更履歴によると、ANTHROPIC_BASE_URL がプロキシやゲートウェイを指していると、すべてのリクエストが「400 … Input tag 'advisor_20260301'」で失敗していました。2.1.275 のリグレッションで、2026-09-18 公開の 2.1.276 で修正されています。

2.1.288

CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS を追加

構造化出力を拒否するゲートウェイの背後で、セッションタイトル、メモリ想起、プロンプトフックが失敗する問題を修正。1 に設定すると output_config.format フィールドと対になる beta 値だけを外し、ほかのプレリリース機能は残ります。

2.1.290

400 以外での beta ヘッダー拒否を修正

公式変更履歴:プロキシやゲートウェイが Claude Code の beta ヘッダーの一つを 400 以外のステータスで、あるいは 2 つ目の beta と一緒に拒否したときのリクエスト失敗を修正(2026-10-05 公開)。

anthropic-version + anthropic-beta

ゲートウェイがそのまま転送すべきヘッダー

公式のゲートウェイ互換ガイドより:この 2 つはそのまま転送し、anthropic-beta を値ごとの許可リストで絞らないこと。値の集合は Claude Code のリリースごとに変わるためです。

ゲートウェイを挟むと 400 が出る理由

2026-10-07 時点で、サードパーティゲートウェイ経由の Claude Code の 400 には主に 2 つの出どころがあります。一つはクライアント側のリグレッションで、2.1.265〜2.1.267 の Artifact ツールのスキーマや 2.1.275 の advisor ツールのエントリがこれにあたり、アップグレードで直ります。もう一つは、ゲートウェイが beta ヘッダーと、それと対になるリクエストボディのフィールドを一緒に転送していないことです。公式の互換ガイドによると、Claude Code は ANTHROPIC_BASE_URL のゲートウェイを Anthropic 形式のエンドポイントとして扱い、api.anthropic.com に送るのと同じ beta ヘッダーとボディフィールドを送ります。ヘッダーを外してボディだけ通したり、スキーマの異なるサービスへボディを転送したりすると確実に 400 になり、両方がそろって欠けたときだけ機能が静かにオフになります。内容検査のためにボディを書き換えるゲートウェイも、同じようにこの対を壊すとされています。

2.1.285 以降:独自エンドポイントは既定で 1M

Claude Code 2.1.285(2026-09-29 公開)の変更履歴の原文は「Changed sessions behind a custom ANTHROPIC_BASE_URL to use the 1M context window of models that have one (Opus 4.7+, Sonnet 5+, Fable); run /autocompact 200k if your gateway stops at 200K」です。つまり 1M ウィンドウを持つモデル(Opus 4.7+、Sonnet 5+、Fable)は独自エンドポイントの下で 1M で動き、ゲートウェイが 200K までなら /autocompact 200k を実行します。公式のモデル設定ページは、ゲートウェイやその背後のサーバーが設けた低い上限を Claude Code は検出できないと明記しており、ゲートウェイが 200K トークンを超えるリクエストを拒否する場合は、Claude Code を起動する環境で CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000 を設定するよう案内しています。

タイムライン(GitHub の公開日)

2026-09-18

Claude Code 2.1.276 公開。ANTHROPIC_BASE_URL がプロキシやゲートウェイを指すと、すべてのリクエストが「400 … Input tag 'advisor_20260301'」で失敗する問題を修正(前日公開の 2.1.275 のリグレッション)。

2026-10-02

2.1.288 公開、CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS を追加。前日の 2.1.287 では、CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS がセッションタイトルとプロンプトフックのリクエストからも構造化出力の形式を外すようになりました。

2026-10-05

2.1.290 公開。ゲートウェイが beta ヘッダーを 400 以外のステータスで、または 2 つ目の beta と一緒に拒否したときのリクエスト失敗を修正。2026-10-07 時点の最新は 2.1.292(2026-10-06 公開)です。

確認済み vs 未確認

確認済み(原文で照合可能)

次の点は Claude Code 公式の変更履歴と文書で一字一句確認できます。2.1.276 で advisor_20260301 の 400(2.1.275 のリグレッション)を修正し、2.1.280 以降は advisor を有効にしていて同じ拒否を受けると、そのエントリを外して一度だけ再試行すること。2.1.287 で CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS が構造化出力の形式も対象にし、2.1.288 で CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS を追加したこと。2.1.290 で 400 以外のステータスによる beta ヘッダー拒否を修正したこと。2.1.285 以降、独自エンドポイントの下では 1M ウィンドウを持つモデルが既定で 1M になること。ゲートウェイは anthropic-version(現在 2023-06-01)と anthropic-beta をそのまま転送すべきこと。Claude Code の自動回復はエラー文言で照合するため、エラーのレスポンスボディも改変せず転送すべきこと。各バージョンの公開日は GitHub Releases によります。

未確認・公式に記載なし

公式が答えていない点が 3 つあり、ここから結論を出さないでください。第一に、2.1.290 の変更履歴にはエラー原文がなく、どの beta ヘッダーかも書かれていません。第二に、ゲートウェイがどのヘッダーを転送し、どのフィールドを検証し、コンテキスト上限がいくつかはそのゲートウェイ次第で、公式文書は代わりに答えません。Claude Code もゲートウェイ側の低い上限は検出できません。第三に、Claude Code が送る機能の集合はリリースごとに増え、公式は観測したリストに固定せず、新しいリリースでゲートウェイを試すよう勧めています。したがって本ページの一覧は最終版ではなく、QCode を含むどのゲートウェイについても、特定の beta 値を通すとは約束しません。

どれで直す?アップグレード、ゲートウェイ修正、変数

Claude Code のアップグレード vs 変数で応急処置

クライアントのリグレッションはアップグレードが先です。2.1.265〜2.1.267 のツールスキーマの 400 は 2.1.268 以降、2.1.275 の advisor_20260301 は 2.1.276 以降で直ります。すぐに上げられない場合の公式の応急策は、それぞれ Artifact ツールのオフ(CLAUDE_CODE_DISABLE_ARTIFACT=1)と CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1 です。アップグレードは公式セットアップページのとおり claude update、npm でインストールした場合は同じページにある npm install -g @anthropic-ai/claude-code@latest を使います。

DISABLE_EXPERIMENTAL_BETAS vs DISABLE_STRUCTURED_OUTPUTS

CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 は範囲が広く、context management とその context_management フィールド、strict や defer_loading などの beta ツールフィールド、構造化出力の output_config.format(2.1.287 以降)、output_config.task_budget、MCP ツール検索を外します。ただし拡張コンテキスト、インターリーブ思考、effort の beta 値は外さず、ANTHROPIC_BETAS で自分で追加した値も外しません。CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS=1(2.1.288 以降)は構造化出力の形式フィールドと対になる beta 値だけを外し、ほかのプレリリース機能は残します。

エラー原文 → 原因 → 修正(一つずつ)

①「400 … Input tag 'advisor_20260301'」ですべてのリクエストが失敗 → 2.1.275 の段階的展開中、advisor がオフでもリクエストに advisor ツールのエントリが入り、ツールの種類を検証するゲートウェイがリクエスト全体を拒否 → 2.1.276 以降へアップグレード。2.1.275 のままなら CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1。advisor をオンにしている場合は、2.1.280 以降エントリを外して一度だけ再試行し、終了するまでその base URL には advisor を送りません。②「API Error: 400 ... Extra inputs are not permitted ... context_management」→ プロキシや LLM ゲートウェイが anthropic-beta リクエストヘッダーを外したため、API がそれに依存するフィールドを拒否 → ゲートウェイで anthropic-beta をそのまま転送。代替策は CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1。この 400 は Claude Code が再試行しません。③ anthropic-beta ヘッダーに対する「Unexpected value(s)」エラー → ゲートウェイが beta 値を拒否 → CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1。ゲートウェイが beta ヘッダーを 400 以外のステータスで、または 2 つ目の beta と一緒に拒否して失敗する件は 2.1.290 で修正(変更履歴にこのケースのエラー原文はありません)。エラーレスポンスを書き換えるゲートウェイの背後で毎ターン「API Error: 400」で止まる件は 2.1.275 で修正済み。④ output_config を名指しする 400(多くは「Extra inputs are not permitted」)で、セッションタイトル、メモリ想起、プロンプトフックが失敗 → ゲートウェイの背後のサービスが構造化出力のフィールドを拒否 → 2.1.288 以降なら CLAUDE_CODE_DISABLE_STRUCTURED_OUTPUTS=1 で形式フィールドだけを外す。または CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1(2.1.287 以降この項目も対象。effort は残る)。⑤ thinking や adaptive を名指しする 400(例:「Input tag 'adaptive' found」)→ ゲートウェイの背後のモデルのビルドが adaptive reasoning を受け付けない → そのモデルを更新。Opus 4.6 と Sonnet 4.6 なら CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1 でも可。⑥ 2.1.265〜2.1.267 ですべてのリクエストが 400、ゲートウェイが独自の文言でツールの input schema や pattern を拒否 → Artifact ツールの input schema に含まれる正規表現を、こうしたエンドポイントが拒否 → 2.1.268 以降へアップグレード、または Artifact ツールをオフ。⑦「API returned an empty or malformed response (HTTP 200)」→ ゲートウェイや途中のプロキシが API 以外の応答(多くは HTML のエラーページやログインページ)を返した → curl で直接テストし、Claude API 以外の応答を返している区間を直す。ゲートウェイが非ストリーミングの応答を text/plain で返して同じエラーになる件は 2.1.271 で修正。⑧ ゲートウェイ独自の文言でコンテキスト上限を告げる 400(例:「ContextWindowExceededError」「prompt token count of N exceeds the limit of M」)→ ゲートウェイの上限がモデル本来のウィンドウより小さく、エラーも書き換えているため、Claude Code が自動で圧縮・再試行しない → まず /compact でセッションを回復。予防には CLAUDE_CODE_AUTO_COMPACT_WINDOW をゲートウェイの上限に設定(最小 100,000)。2.1.285 以降、ゲートウェイが 200K までなら /autocompact 200k を実行。

QCode では

2026-10-07 時点の QCode ドキュメントでは、Claude Code の接続は次のとおりです。ANTHROPIC_BASE_URL は https://api.qcode.cc/api(/v1 を付けず、末尾にスラッシュも付けない)、ANTHROPIC_AUTH_TOKEN にはコンソールで作成した cr_ で始まるキーを設定します。Claude モデルは Anthropic プロトコルのエンドポイントでしか使えません。QCode のトラブルシューティングページも同じ修正を挙げています。2.1.275 の「400 … Input tag 'advisor_20260301'」は 2.1.276 以上へアップグレード、「Unexpected value(s) … anthropic-beta」は CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 を設定、そして多くの問題は新しいバージョンで修正済みなので、最新版を使っているか確認するよう勧めています。まずドキュメントの curl セルフテストを実行してください。/api/v1/messages にボディなしで POST して 400 ならパスとキーはどちらも有効、401 ならキーが無効です。料金は token 単位の従量課金で、各モデルの単価は /models をご覧ください。

よくある質問

「400 … Input tag 'advisor_20260301'」はどう直す?

Claude Code 2.1.276 以降にアップグレードしてください。これは 2.1.275 のリグレッションで、段階的展開の間は advisor がオフでもリクエストに advisor ツールのエントリが入り、ツールの種類を検証するゲートウェイがリクエスト全体を拒否していました。2.1.276 以降は、advisor をオンにしない限り、ANTHROPIC_BASE_URL のゲートウェイ越しにはこのエントリを送りません。すぐ上げられない場合は CLAUDE_CODE_DISABLE_ADVISOR_TOOL=1 を設定します。advisor をオンにしていて同じ拒否を受けた場合、2.1.280 以降の Claude Code はエントリを外して一度だけ再試行し、終了するまでその base URL では advisor を外し、/advisor も使えなくなります。

「Extra inputs are not permitted」はゲートウェイの問題?

多くの場合そうです。公式のエラーリファレンスによると、Claude Code と API の間にあるプロキシや LLM ゲートウェイが anthropic-beta リクエストヘッダーを外したため、API がそれに依存するフィールドを拒否したものです。典型的な文面は「API Error: 400 ... Extra inputs are not permitted ... context_management」。根本対策はゲートウェイで anthropic-beta をそのまま転送すること、代替策は起動前に CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 を設定することです。公式は、この変数で制御されない beta もあること、context management やツールスキーマのフィールドによる 400 は Claude Code が再試行しないことも明記しています。

ゲートウェイはどのリクエストヘッダーを転送すべき?

anthropic-version と anthropic-beta をそのまま転送します。ゲートウェイの先が Claude Platform on AWS なら anthropic-workspace-id も必要です。anthropic-version の現在の値は 2023-06-01。anthropic-beta は丸ごとそのまま転送し、値ごとの許可リストで絞らないでください。値の集合は Claude Code のリリースごとに変わるためです。認証情報は、設定した認証用の変数に応じて Authorization か x-api-key に入ります。「そのまま転送」と書かれていないものは、ゲートウェイ側で読み取っても無視してもかまいません。また、Claude Code の自動再試行はエラー文言で照合するため、エラーのレスポンスボディも改変せずに転送するよう公式は求めています。

ANTHROPIC_BETAS と CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS の違いは?

向きが逆です。ANTHROPIC_BETAS は追加で送る anthropic-beta 値のカンマ区切りリストです。公式によると Claude Code は必要な beta ヘッダーをすでに送っており、この変数は Claude Code がネイティブ対応する前に Anthropic API の beta を先取りで有効にするためのものです。CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 はプレリリースの anthropic-beta 値と、それと対になるボディフィールドを外す変数で、ゲートウェイが「Unexpected value(s)」や「Extra inputs are not permitted」を返すときに使います。後者は ANTHROPIC_BETAS で自分で足した値は外さないので、ゲートウェイが拒否しているのがその値なら、ANTHROPIC_BETAS から自分で取り除いてください。

ゲートウェイが 200K までしか対応しない。2.1.285 以降はどうする?

/autocompact 200k を実行してください。2.1.285 の変更履歴が示している対処です。2.1.285 以降、1M ウィンドウを持つモデル(Opus 4.7+、Sonnet 5+、Fable)は独自の ANTHROPIC_BASE_URL の下で 1M で動き、公式のモデル設定ページは、ゲートウェイが設けた低い上限を Claude Code は検出できないと書いています。毎回の起動で効かせるなら、Claude Code を起動する環境で CLAUDE_CODE_AUTO_COMPACT_WINDOW=200000 を設定します。ゲートウェイが ContextWindowExceededError のような独自の文言で超過を返す場合、Claude Code は自動で圧縮・再試行しないので、まず手動で /compact を実行してください。

QCode でこれらのエラーが出たら、最初に何を確認する?

まず Claude Code のバージョンを確認し、最新版にアップグレードしてください。QCode ドキュメントも、多くの問題は新しいバージョンで修正済みだとしています。2026-10-07 時点の最新は 2.1.292 で、公式のアップグレードコマンドは claude update です。次に設定を確認します。ANTHROPIC_BASE_URL は https://api.qcode.cc/api(/v1 なし、末尾スラッシュなし)、認証情報は ANTHROPIC_AUTH_TOKEN に入れます(Authorization: Bearer ヘッダーとして送られます)。それでも「Unexpected value(s) … anthropic-beta」が出るなら、QCode ドキュメントのとおり CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1 を設定してください。

情報源

バージョン番号と修正内容:Claude Code 公式の変更履歴(GitHub の anthropics/claude-code リポジトリにある CHANGELOG.md の 2.1.268、2.1.271、2.1.275、2.1.276、2.1.280、2.1.285、2.1.287、2.1.288、2.1.290 の各項目)。公開日(UTC)は同じリポジトリの GitHub Releases から。原因と修正:code.claude.com の「Connect Claude Code to an LLM gateway」のトラブルシューティング表、Claude Code gateway compatibility guide、Error reference、環境変数・モデル設定・Advanced setup の各ページ。QCode の接続方法と確認手順:docs.qcode.cc のトラブルシューティング、環境変数設定、エンドポイントと API 形式の各ページ。いずれも 2026-10-07 に取得。

新しいバージョンで、もう一度つなぐ

Base URL に https://api.qcode.cc/api、ANTHROPIC_AUTH_TOKEN にキーを設定すれば、cr_ キー 1 つで Claude Code を接続できます。料金は token 単位の従量課金で、各モデルの単価は /models をご覧ください。

関連記事

本ページのバージョン番号、エラー原文、公式の説明は 2026-10-07 に Anthropic 公式の変更履歴と文書で照合したもので、公式ページが優先します。上流の変更は予告なく行われることがあります。個々のゲートウェイが転送するヘッダーやコンテキスト上限は、その提供元の文書に従ってください。モデルの提供状況は /models をご確認ください。

まず試して、それから決める

どのプランか迷ったら、まずスターター($8.57/月)から。満足したらアップグレードし、旧プランの残り価値は按分で残高に戻ります。