Skip to main content

📌 問題

Claude Code の実行中に、次のようなエラーが発生するユーザーがいます:
  • 400 ValidationException
  • Extra inputs are not permitted
  • cache_control.scope に言及するエラー
これらはほとんどの場合、Claude Code の実験的な beta パラメータが原因です。これらは、APIYI が提供する公式の Amazon Claude API(AWS Claude / Bedrock)チャネルではサポートされていません
このガイドは、AWS Claude (Bedrock) 公式チャネルを経由するリクエストにのみ適用されます。ネイティブの Anthropic API チャネルはこれらの beta パラメータをサポートしているため、下記の変更は不要です。

✅ 解決策(推奨)

Claude Code の実験的なベータ機能をオフにします。

Option 1: settings.json を編集する(推奨)

環境変数を Claude Code settings.json に追加してください:

Option 2: 一時的に適用する(現在のターミナルセッション)

ターミナルで次を実行してください:
その後、Claude Code をもう一度起動してください。
オプション 2 は現在のターミナルウィンドウにのみ影響し、閉じると失われます。恒久的に修正するには、オプション 1 またはオプション 3 を使用してください。

Option 3: 永続的に適用する(推奨)

お使いの環境に応じて、シェル設定にこの変数を書き込みます。

Mac / Linux (bash)

Mac (zsh、デフォルト)

Windows (PowerShell)

その後、ターミナルを再起動してください。

🔍 なぜこれが起こるのか(技術的な方へ)

Claude Code は既定で、次のような複数のベータ機能を有効にします。
  • cache_control
  • 拡張された tool フィールド
  • scope のような追加パラメータ
これらのパラメータは次のようになります。
  • 👉 ネイティブの Anthropic API ではサポートされています
  • 👉 しかし AWS Bedrock Claude では無効なフィールドとして拒否され、HTTP 400 になります
このスイッチをオフにすると。
  • ✔ リクエストは標準構造にフォールバックします
  • ✔ AWS Claude との完全な互換性が得られます

🚨 必要になる場面

以下のいずれかに当てはまる場合、この変数を設定することを強くおすすめします:
  • Claude Code を AWS Bedrock Claude と一緒に使っている
  • サードパーティのプロキシ(API gateway や中継サービス)を経由している
  • 400 / ValidationException エラーが発生している
参考:
  • Claude 公式 docs — 環境変数: code.claude.com/docs/en/env-vars
  • 関連 issue: github.com/anthropics/claude-code/issues/21676

🔎 モデルが属するグループを確認する

特定のモデルがどのグループで利用できるか分からない場合は、モデルの料金ページで確認できます。 APIYI のモデル料金ページを開き、モデル名を検索すると、利用可能なグループを確認できます。 たとえば、ClaudeCode グループは、最新の Claude モデルシリーズに加えて、別途設定されたglm-5.1qwen3.7-maxもサポートしています。

💡 まだ動作しませんか?

修正を適用した後もエラーが解消しない場合は、次を確認してください。
  • 環境変数が実際に反映されていること(echo $CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS を実行して、1 が表示されることを確認してください)
  • 本当に AWS Claude (Bedrock) のチャンネルを使用していること
  • 設定を変更した後に、ターミナルまたは IDE を再起動したこと

📞 サポート

まだ解決しない場合は、さらに詳しく調べられるように以下をお送りください:
  • エラーのスクリーンショット
  • リクエストログ(Request ID)
  • ご利用中のモデル名
原因を特定できるようお手伝いします。