Skip to content

原文(日本語に翻訳) ​

インターリーブされたストリーミングコンテンツブロックが適切なメッセージマージを妨げることで引き起こされていた、並行エージェントを含むセッションでの API 400 エラー(「thinking blocks cannot be modified」)を修正しました。

原文(英語) ​

Fixed API 400 errors ("thinking blocks cannot be modified") that occurred in sessions with concurrent agents, caused by interleaved streaming content blocks preventing proper message merging.

概要 ​

複数のエージェントが並行して実行されるセッションで、ストリーミング中のコンテンツブロックが相互にインターリーブ(交差)することにより、メッセージのマージ処理が正しく行われず、"thinking blocks cannot be modified"というAPI 400エラーが発生する問題がありました。この修正により、並行エージェントセッションでのストリーミングメッセージマージが適切に処理され、エラーが解消されます。

基本的な使い方 ​

bash
# 並行エージェントを使用するセッション
# 修正前: 複数エージェントが同時実行されると 400 エラーが発生することがあった
# 修正後: 並行エージェントセッションが安定して動作する

claude
> 以下のタスクを並行して実行してください:
> - コードのテストを実行
> - ドキュメントを生成
> - 依存関係をチェック

実践例 ​

ユースケース1: 並行サブエージェントの活用 ​

bash
# Claude Codeのサブエージェント機能を使用した並行処理
claude
> 以下を並行して分析してください:
> 1. セキュリティの脆弱性チェック
> 2. パフォーマンスのボトルネック分析
> 3. コードスタイルの確認

# 修正前: エージェントが並行実行される際に
# "thinking blocks cannot be modified" エラーが発生
# 修正後: 全てのエージェントが正常に並行実行される

ユースケース2: 拡張思考(Extended Thinking)を使用したセッション ​

bash
# Claude 3.7 Sonnetなどの拡張思考機能を使用するモデルで
# 並行エージェントを実行する場合

# 拡張思考では"thinking blocks"が生成される
# 複数エージェントが同時に思考プロセスを実行する場合も安定

claude --model claude-sonnet-4-5
> 複雑な問題を複数の観点から同時に分析してください
# ← 思考ブロックが正しく処理される

ユースケース3: 長時間の並行エージェントワークフロー ​

bash
# CI/CDパイプラインでの並行エージェント実行
# 複数のエージェントが異なるタスクを並行実行

# エラーなしで以下のような並行ワークフローが実行可能
claude --print "以下を並行実行してください:
  - フロントエンドのテスト実行
  - バックエンドのテスト実行
  - E2Eテストの実行
  結果をまとめてレポートしてください"

注意点 ​

  • この修正はストリーミングコンテンツブロックのマージ処理に関する内部的な修正です
  • 拡張思考(Extended Thinking)機能を持つモデルを使用する場合に特に重要です
  • 並行エージェントを多用するユースケースではバージョン2.1.47への更新を推奨します
  • API 400エラーが発生していた場合、このバグが原因である可能性があります
  • エラーメッセージ「thinking blocks cannot be modified」が表示されていた場合、この修正で解消されます

関連情報 ​