CC逆引きリファレンス

stream-json 出力に部分メッセージやフックイベントを含めたい

12. CI/CD・自動化

コマンド / 機能

--include-partial-messages / --include-hook-events

stream-json の詳細度を上げる

概要

--include-partial-messages は生成中のテキストデルタを stream-json 出力に含め、--include-hook-events はフックのライフサイクルイベントを含めます。--replay-user-messages はラッパーUIが自分の入力を確認できるように stdin のユーザーメッセージを stdout に再送し、--prompt-suggestions はフォローアップのプロンプト候補を出力します。

設定例

# ストリーミングトークンをリアルタイムに受け取る
claude -p --output-format stream-json --include-partial-messages "長いレポートを生成して"

# フックの実行状況もイベントとして受け取る
claude -p --output-format stream-json --include-hook-events "デプロイして"

# ラッパーUIでユーザー入力をエコーバックさせる
claude -p --output-format stream-json --replay-user-messages < input.jsonl

# フォローアップの提案プロンプトを取得
claude -p --output-format stream-json --prompt-suggestions "このバグを直して"
公式ドキュメントを見る

こんな時に使う

  • 独自UIでリアルタイムにトークンを描画したい時
  • フックの実行状況を可視化したい時
  • チャットUIでユーザー発言を再表示したい時
  • 次の一手をユーザーに提案したい時

使い方

  1. 1--output-format stream-json と組み合わせて使用
  2. 2--include-partial-messages でテキストデルタイベントを追加
  3. 3--include-hook-events で PreToolUse/PostToolUse などのフックイベントを追加
  4. 4--replay-user-messages / --prompt-suggestions は必要に応じて追加

Tips

  • いずれも stream-json 出力専用の拡張フラグ
  • 部分メッセージはトークン単位で細かく届くため描画コストに注意
  • Agent SDK を使った独自クライアント構築で特に有用