Skip to content

原文(日本語に翻訳)

停止したAPIストリームの処理を改善しました。ストリームはデータなしで5分が経過すると中断し、無期限にハングする代わりに非ストリーミングでリトライするようになりました。

原文(英語)

Improved stalled API stream handling: streams now abort after 5 minutes of no data and retry non-streaming instead of hanging indefinitely

概要

APIストリームがデータを送信しない状態が5分間続いた場合、Claude Codeは自動的にストリームを中断し、非ストリーミングモードで同じリクエストをリトライするようになりました。これにより、ネットワーク障害やAPIの一時的な問題によってセッションが無期限に停止してしまう問題が解消されます。

基本的な使い方

この改善は自動的に機能します。特別な設定は不要です。

# 通常通り Claude Code を使用するだけ
# ストリームが停止した場合、5分後に自動的にリトライされます

動作の流れ

1. ストリーミングAPIリクエストを送信
2. ストリームが停止(データが来なくなる)
3. 5分間タイムアウトを待機
4. ストリームを中断
5. 非ストリーミングモードで同じリクエストをリトライ
6. レスポンスを受信して表示

実践例

長時間処理でのリカバリー

複雑なコード生成や長文の分析など、応答時間が長くなりがちなタスクでも自動リカバリーが機能します。

bash
# 大量のコードリファクタリングをリクエスト
# → ストリームが停止しても5分後に自動リトライ
claude "このプロジェクト全体をリファクタリングして、TypeScriptに移行してください"

不安定なネットワーク環境でも安心

Wi-Fiが不安定な環境や、VPN接続中でも自動的にリカバリーします。

注意点

  • タイムアウトは「データなし」の状態が5分続いた場合に発動します。通常の応答遅延(数秒〜数十秒)ではタイムアウトしません
  • リトライは非ストリーミングモードで行われるため、レスポンス表示が少し変わる場合があります(進捗表示なし)
  • 5分間のタイムアウトは固定値です(現バージョンでは設定変更不可)
  • 意図的に長時間待つ必要があるケースでは、セッション管理を見直すことを検討してください

関連情報