CLAUDE LABEN
FORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられていますFORK — Claude Code 2.1.212で/forkの挙動が変わりました。会話を新しいバックグラウンドセッションへ複製し、作業を続けたまま並走できます。従来のセッション内サブエージェントは/subtaskに移りましたLIMITS — WebSearchの呼び出しがセッション単位で既定200回に制限されました。サブエージェントの起動も既定200回が上限で、暴走した検索・委譲のループを止められますMCPBG — 2分を超えるMCPツール呼び出しは自動的にバックグラウンドへ移り、セッションが固まらなくなりました。しきい値はCLAUDE_CODE_MCP_AUTO_BACKGROUND_MSで調整できますPLANFIX — プランモードがtouchやrmといったファイルを変更するBashコマンドを、許可プロンプトもcanUseToolコールバックも通さずに実行してしまう不具合が修正されましたSONNET5 — Claude Sonnet 5は導入価格として入力100万トークンあたり2ドル、出力10ドルで提供中です。8月31日を過ぎると3ドルと15ドルに戻りますIPO — Anthropicが早ければ10月の株式公開を視野に、引受銀行が投資家との面談を組み始めたと報じられています
記事一覧/API & SDK
API & SDK/2026-03-31上級

Claude API ストリーミング × リアルタイムチャットUI 本番実装ガイド

Claude APIのストリーミングレスポンスとServer-Sent Eventsを活用し、Next.js App RouterでリアルタイムチャットUIを本番品質で組み上げる手順を、SSEプロトコル・Tool Use統合・接続復旧・コスト最適化まで通しで整理します

streaming16api38realtime3chat-uinext-jssse2production87

プレミアム記事

ストリーミングが解く課題と複雑さ

Claude APIのストリーミング機能は、従来の「リクエスト→全応答待機→表示」という同期的なフローを、「リクエスト→部分的応答をリアルタイムで受け取り→UI更新」という体験へと変革します。特にチャットアプリケーションでは、ユーザーが「AIが考えている」様子をリアルタイムで目撃することで、エンゲージメントと信頼度が劇的に向上します。

しかし、ストリーミングは実装の複雑さをもたらします。接続の途中切断、タイムアウト、Tool Use(関数呼び出し)中の状態管理、レート制限の監視など、本番環境では非機能要件が急増します。

私は2014年から iOS/Android の個人開発を続けており、累計5,000万ダウンロードに到達するまでに、ネットワーク越しのリアルタイム体験を何度も実装してきました。Claude API ストリーミングは、その延長線上にありながらも、**「途中で AI の思考が中断する」「Tool Use を挟む」**という独特の難所を持っています。本ガイドは、その難所を実運用の観点から潰していく構成です。

Claude APIストリーミングの仕組み

Server-Sent Events(SSE)プロトコル

Claude APIのストリーミングはHTTP標準のServer-Sent Events(SSE)を採用しています。SSEはHTTP接続を保持したまま、サーバーから複数のイベントをクライアントへ継続的に送信する仕組みです。

SSEの特徴:

  • HTTP/1.1標準のテキストベースプロトコル
  • ブラウザのEventSourceで自動再接続(ハートビート機構あり)
  • WebSocketより実装が簡潔(但し双方向非対応)
  • ファイアウォール・プロキシ・CDLとの相性良好

Claude APIのイベントストリーム構造

Claude APIのストリーミングレスポンスは以下のイベント列で構成されます:

event: content_block_start
data: {"type": "content_block_start", "index": 0, "content_block": {"type": "text"}}

event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "text_delta", "text": "こんにちは"}}

event: content_block_delta
data: {"type": "content_block_delta", "index": 0, "delta": {"type": "text_delta", "text": "。本日のお"}}

event: message_delta
data: {"type": "message_delta", "delta": {"stop_reason": "end_turn"}, "usage": {"output_tokens": 42}}

event: message_stop
data: {"type": "message_stop"}

各イベントの役割:

  • message_start:メッセージの開始。model、usage(入力トークン)を含む
  • content_block_start:テキスト/Tool Useのブロック開始
  • content_block_delta:テキストまたはTool Use入力のデルタ(差分)
  • content_block_stop:ブロック終了
  • message_delta:メッセージレベルの更新(stop_reason、出力トークン数)
  • message_stop:メッセージ完全終了(接続を安全にクローズ可)

実装上の重要ポイント

イベント順序への依存禁止: イベント到着順序を仮定した実装は脆弱です。常にindexフィールドに基づいてコンテンツを再構成してください。

Tool Useの段階: ストリーミング中にTool Use(tool_useコンテンツタイプ)が発生した場合、Tool Use完全性待機 → ツール実行 → 続きのストリーミング というフローになります。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
個人運用での実測値(P50/P95レイテンシ・1日あたりトークン消費・キャッシュヒット率)に基づいたストリーミング最適化の判断軸
途中切断・Tool Use 連鎖・レート制限が同時に起きる本番障害を、再接続キュー+指数バックオフ+会話履歴リプレイで吸収する設計
Cloudflare Workers × Edge ランタイムで Claude API ストリームを中継する際に、フロント側 EventSource のバッファ詰まりとデバウンスを避ける具体パターン
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Claude Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

API & SDK2026-06-27
Claude API のストリーミングが「エラーも出さずに」止まるとき — 沈黙する停止を検知して途中から続ける運用メモ
Claude API のストリーミングが例外も出さずに無言で止まる「沈黙停止」を、トークン間隔のウォッチドッグで検知し、受信済みテキストを引き継いで途中から再開する実装と、長時間の自動運用で崩れないためのタイムアウト予算の設計をまとめます。
API & SDK2026-04-26
Claude API × WebSocket × Redis Pub/Sub でスケーラブルなリアルタイム AI チャットサーバーを構築する — Node.js 本番設計・マルチユーザー対応・コスト制御の実装
Claude API × WebSocket × Redis Pub/Sub でリアルタイム AI チャットサーバーを本番運用する設計と実装。SSE との判断基準、マルチインスタンス対応、停止遅延がユーザーごとの予算精度をどう崩すかまで、計測コードつきで扱います。
API & SDK2026-07-03
同時リクエスト数はいくつまで持つのか — Little の法則と実測メモリで決める Claude API 本番デプロイのインフラ要件
同時リクエスト数・待ち行列長・メモリはいくつに設定すべきか。Claude API 本番デプロイのインフラ要件を Little の法則と実測ハーネスで数字から導く手順を、夜間バッチで OOM を踏んだ経験をもとに整理しました。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →