概要
Claude Code SDKは、エージェントとやり取りするための2つの異なる入力モードをサポートしています:- ストリーミング入力モード(デフォルト&推奨) - 永続的でインタラクティブなセッション
- 単一メッセージ入力 - セッション状態と再開を使用するワンショットクエリ
ストリーミング入力モード(推奨)
ストリーミング入力モードは、Claude Code SDKを使用する推奨の方法です。エージェントの機能へのフルアクセスを提供し、豊富でインタラクティブな体験を可能にします。 これにより、エージェントはユーザー入力を受け取り、中断を処理し、許可要求を表示し、セッション管理を処理する長時間実行プロセスとして動作できます。動作原理
利点
画像アップロード
視覚的分析と理解のためにメッセージに直接画像を添付
キューイングされたメッセージ
順次処理される複数のメッセージを送信し、中断する機能
ツール統合
セッション中のすべてのツールとカスタムMCPサーバーへのフルアクセス
フックサポート
さまざまなポイントで動作をカスタマイズするためのライフサイクルフックを使用
リアルタイムフィードバック
最終結果だけでなく、生成されるレスポンスをリアルタイムで確認
コンテキストの永続化
複数のターンにわたって会話コンテキストを自然に維持
実装例
単一メッセージ入力
単一メッセージ入力はより簡単ですが、より制限があります。単一メッセージ入力を使用する場合
以下の場合に単一メッセージ入力を使用してください:- ワンショットレスポンスが必要な場合
- 画像添付、フックなどが不要な場合
- Lambda関数などのステートレス環境で動作する必要がある場合
制限事項
単一メッセージ入力モードは以下をサポートしません:
- メッセージ内の直接的な画像添付
- 動的メッセージキューイング
- リアルタイム中断
- フック統合
- 自然な複数ターン会話