0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Claude Code v2.1.239|Bedrock で API 課金が 2 倍になっていた|毎日Changelog解説

0
Posted at

Claude Codeの公式Changelogをリリースから最速で翻訳・解説しています。

v2.1.239 で、Bedrock 経由のストリーミングがプロキシに阻まれたとき、毎ターンを非ストリーミングで投げ直して課金対象の API 呼び出しが 2 倍になっていたバグが直りました。トリガーはプロキシがレスポンスの Content-Type ヘッダを落とすことだけ。症状が出る場所は課金額だけです。

拾いどころ

変更 効く相手
Bedrock ストリーミングの二重課金の修正 プロキシ配下で Bedrock を使っている環境
/claude-api upgrade の追加 anthropic 0.x のまま止まっている Python プロジェクト
Esc とキュー済みプロンプトの競合修正 ターンの途中で Esc を押す運用
.worktreeinclude / BOM / pluginRoot の黙殺修正 設定を書いたのに効いていなかった人
コスト見積もりへの 1.1 倍反映 データレジデンシー(米国内推論)ワークスペース
Windows のセッション間メッセージング解禁 複数マシンで Claude Code を並べている環境

Bedrock のストリーミングが落ちると、課金される API 呼び出しが 2 倍になっていた

プロキシがレスポンスの Content-Type を剥がすと、Claude Code はストリーミングを失敗と判断し、同じターンを非ストリーミングで投げ直していました。 ストリーミングでの 1 回目と、投げ直した 2 回目。合計 2 回が課金対象になります。

Fixed Bedrock streaming behind proxies that strip the response Content-Type header, which silently doubled billed API calls by re-running every turn non-streaming

原文が silently と書いている通り、画面側に異常は出ません。非ストリーミングでの応答は正常に返るので、ストリーミングが落ちたこと自体に気づく手がかりが無い。レスポンスヘッダを書き換えるプロキシが間に入っていれば、それだけで成立します。

v2.1.238 以前の Bedrock + プロキシ構成では、課金対象の API 呼び出し回数が実際の作業量の 2 倍に膨らんでいます。

Bedrock まわりはもう 1 件。SSO プロファイルと awsAuthRefresh を組み合わせた構成が、HTTPS プロキシ配下だと起動時にハングしていた問題も v2.1.239 で直りました。原因は認証情報の事前チェックが HTTPS_PROXY を見ていなかったこと。

/claude-api upgrade で anthropic 0.x を 1.x へ移す

/claude-api upgrade

Python プロジェクトの anthropic 0.x を 1.x へ移行するサブコマンドが v2.1.239 で追加されました。同時に /claude-api スキルの Python リファレンスも 1.x 準拠に更新されています。

changelog が名指ししている差分はタイムアウトの型。1.x でタイムアウトを指定するのは httpx.Timeout ではなく anthropic.Timeout です。

Esc を押した瞬間に、セッションだけ先に手を離す

プロンプトをキューに入れた状態で Esc を押すと、次のターンが早期に完了扱いになる競合がありました。Claude 側はまだ動いているのにセッションは idle 表示。その状態で再送信すると、同じ操作がもう一度走ります。

セッション周辺の修正はほかにも並びます。リネーム後に 64 KB 以上の会話が書かれるとカスタムセッション名が /resume から消える問題、claude -c_-. の違いしかないパスの別ディレクトリからセッションを拾う問題、all-projects モードで削除済み worktree へ cd しろと言われる問題(現在のディレクトリで再開するようになりました)。いずれもセッション再開の周辺です。

書いたのに効いていなかった設定

設定 何が起きていたか
.worktreeinclude**/ 始まりのパターン 対象が gitignore されたディレクトリにあると、何にもマッチしなかった
agents / skills / commands の .md 先頭に UTF-8 BOM が付いていると、警告も無く読み込まれなかった
marketplace の metadata.pluginRoot 効果を持たず、bare な plugin ソース名がドキュメント通りに解決されなかった
claudeMdExcludes rules ディレクトリ名やシンボリックリンク名を書くと、シンボリックリンクの .claude/rules を除外できなかった
effort / ultracode ステータスバッジのカスタムテーマ色 上書きが無視されていた

設定が読まれず、エラーも警告も出ない。共通しているのはそこです。どれも v2.1.239 で塞がりました。

2.1.239 は掃除に寄った回

追加された機能は /claude-api upgrade、Windows でのセッション間メッセージング解禁、Alpine/musl ビルドでの画像ペースト・クリップボード・音声キャプチャのアドオン読み込み、これまで対象外だった Bedrock/Vertex/Foundry でのフルスクリーン描画の初回案内まで。残りの大半は Bedrock、/resume、フルスクリーン描画、キーバインドといった既存の運用が引っかかっていた箇所の修正です。2.1.232 の回帰だったセッション名同期の暴走も、ここで重複排除とレート制限が入りました。

前回: Claude Code v2.1.237〜v2.1.238|長時間セッションのメモリリークが直る|毎日Changelog解説

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?