Claude Code が応答の途中で止まり、The response stopped arriving. The response above may be incomplete.(古い版では Connection closed mid-response)と出たときの手順です。まず画面に残った内容を確認して continue と送ります。何度も出るなら、長い出力を分けて書かせ、それでも出るなら回線側(ルータ、IPv6、MTU)を疑います。
確認環境は Claude Code 2.1.314、macOS 26.6.2、2026-10-31 です。
症状
応答の途中で、次のどれかで止まります。
API Error: The response stopped arriving. The response above may be incomplete.
API Error: Connection lost mid-response. The response above may be incomplete.
古い版では、同じ場面で次の文言が出ていました。
API Error: Connection closed mid-response. The response above may be incomplete.
API Error: Response stalled mid-stream. The response above may be incomplete.
結論
- 公式の Error reference では、v2.1.227 より前の
Connection closed mid-responseがConnection lost mid-responseに、Response stalled mid-streamがThe response stopped arrivingに改名されています。ネットで見つかる古い記事の対処は、新しい文言にもそのまま当てはまります - 応答の途中で失敗しても、Claude Code は完成済みの部分を残します。
continueと返信すれば、最後に完成したブロックの続きから書かせられます - 繰り返し出るときは、長い出力を分けて書かせ、回線側を見直します
文言の新旧対応
公式の記述に基づく対応表です。
| 古い版(v2.1.227 未満) | 新しい版 | 公式の説明 |
|---|---|---|
Connection closed mid-response |
Connection lost mid-response |
接続が切れた。プロキシやゲートウェイが応答の本体を途中で閉じた場合にも出る |
Response stalled mid-stream |
The response stopped arriving |
接続は開いたままデータが来なくなり、無通信監視(streaming idle watchdog)が切った |
このほか、同じ「The response above may be incomplete」の仲間として、公式は次の 4 つを挙げています。
-
Server error mid-response(途中で過負荷や 5xx が返った。v2.1.199 以降) -
Your computer went to sleep mid-response(応答中に PC がスリープした) -
Part of the response never arrived(ストリームのイベントが 1 つ欠けた) -
The response stream was malformed(イベントが壊れていた、または重複していた)
原因
公式の Error reference は、ストリーミング中の失敗のあとに再送すると同じツール呼び出しを 2 回実行しかねないため、Claude Code は再送せず、完成した出力を残して、この通知を付けると説明しています。
では、そもそもなぜ途中で切れるのか。公式は The response stopped arriving について「接続は開いたままだが、データが来なくなったので watchdog が切った」とだけ書いています。回線のどこで詰まったかは書かれていません。issue #69415 などでの報告では、原因は混在しています。以下は issue での分析で、公式の記述ではありません。
- NAT やルータが、無通信が続いた接続を切る
- IPv6 の経路に問題がある
- クライアント側の 180 秒の無通信打ち切りに当たる(issue #85322 の分析)
- 2.1.213 以降、接続エラーが 1 回起きるとプロセスが終わるまで keep-alive が無効になる(issue #100353 の分析)
手元で確かめた結果
エラーを意図的に起こすのは安全にできないので、Claude Code 2.1.314 の実行ファイルに含まれる文字列を、読むだけのコマンドで数えました。
B=$(readlink -f $(which claude))
for s in "The response stopped arriving" "Connection lost mid-response" "Connection closed mid-response" "Response stalled mid-stream"; do
printf '%s: ' "$s"; strings -a "$B" | grep -c -F "$s"
done
実際の出力は次のとおりです。
The response stopped arriving: 2
Connection lost mid-response: 2
Connection closed mid-response: 0
Response stalled mid-stream: 0
新しい 2 つの文言は 2.1.314 に含まれ、古い 2 つは含まれていません。公式の「v2.1.227 で文言が変わった」という記述と合っています。実際にエラーを出して画面を確かめたわけではありません。
直し方
1. まず continue と送る
対話セッションでは、画面に残っている内容を読んでから continue と送ります。公式によると、Claude Code は完成したブロックを残しますが、途中で切れた最後のブロックは捨てるため、最後の数文やツール呼び出しが欠けていることがあります。
-p(非対話)で使っているときは、セッションを再開してから continue を送ります。
claude -p --continue "continue"
公式の記述では、-p で応答にテキストだけが含まれツール呼び出しが無い場合は、Claude Code が自動で最大 3 回まで続きを促します(v2.1.246 以降)。この通知が見えるのは、その 3 回を使い切ったあとです。
2. 長い出力は分けて書かせる
大きなファイルや長い計画を 1 回で書かせると、モデルが静かな時間が長くなり、途中で切れやすくなります。「まず章立てだけ」「次に 1〜3 章」のように分けると収まった、という報告が複数あります(issue での報告で、公式の推奨ではありません)。
3. 無通信の許容時間を延ばす
The response stopped arriving は watchdog が切ったものなので、許容時間を延ばす手があります。issue の報告では、CLAUDE_STREAM_IDLE_TIMEOUT_MS と CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS の両方を上げると効いた、とあります(小さいほうが効くため、片方だけでは変わらないことがある、という指摘です)。
{
"env": {
"CLAUDE_STREAM_IDLE_TIMEOUT_MS": "600000",
"CLAUDE_BYTE_STREAM_IDLE_TIMEOUT_MS": "600000"
}
}
これを ~/.claude/settings.json に入れ、Claude Code を起動し直します。これらの変数の詳しい挙動は、Stream idle timeout の記事にまとめています。
4. 回線側を見直す
何度も同じ場面で切れるなら、ネットワークを疑います。issue での報告で、効いた例があるものです。
- ルータを再起動する。原因が ISP の回線の瞬断だった例もあります
- テザリングや VPN など、別の回線で試す
- IPv6 を無効にする
- MTU を下げる。macOS なら次のようにします(管理者権限が必要で、設定を変えるので、戻し方を控えてから行ってください)
networksetup -getmtu Wi-Fi
sudo networksetup -setMTU Wi-Fi 1492
MTU の下げ方は、接続エラー系の issue #13657 に成功報告があります。PPPoE 回線で MTU が 1500 のままだと、パケットが分割されて落ちる、という分析です。
5. 古い版なら更新する
公式の記述では、次のような版ごとの修正があります。古い版のままなら claude update で更新します。
- v2.1.222: 応答がすでに完了したあとに接続が切れても、完成した応答を保ち、エラーにしない。ゲートウェイ経由で keep-alive が届いているのに誤って切れる問題も解消
- v2.1.227: 文言の改名(上の表)
直らないとき
-
claude --versionで版を確かめ、issue #69336(正規の追跡 issue)に同じ症状があるかを探します - 一時的に 2.1.220 に下げて直った、という報告も issue にあります(推測を含む回避策で、公式の案内ではありません)
- 社内プロキシやゲートウェイ越しなら、応答を溜め込む機器が原因のことがあります。
ANTHROPIC_BASE_URL経由の接続は、公式の記述では byte-level の watchdog の対象です
同じ原因で出る別のメッセージ
接続エラー系では、Unable to connect to API (ECONNRESET) や API Error (Connection error.) · Retrying in <n> seconds… (attempt <n>/10) も、回線側の見直しが効くことの多い文言です。
Claude Code で出るほかの英文エラーと、それぞれの対処は、早見表にまとめています。
参考
- 公式 Error reference(The response above may be incomplete): https://code.claude.com/docs/en/errors#the-response-above-may-be-incomplete
- 公式 Error reference(Automatic retries): https://code.claude.com/docs/en/errors#automatic-retries
- issue #69415(Connection closed mid-response): https://github.com/anthropics/claude-code/issues/69415
- issue #69336(正規の追跡 issue): https://github.com/anthropics/claude-code/issues/69336
- issue #13657(MTU を下げて直った報告): https://github.com/anthropics/claude-code/issues/13657