コンテンツにスキップ

タイピングインジケーターの最適化ガイド

チャットボットを開発していると、ユーザーが「返信を待っているのか、それともフリーズしているのか」と不安になる瞬間があります。適切なタイミングでタイピング中であることを伝えるのは、ユーザー体験を損なわないために大切です。

逆に、何も返信しないのにタイピング中と表示され続けるのも、ユーザーを混乱させる原因になります。OpenClaw では、これらの表示タイミングを細かく制御できます。

  • OpenClaw の設定ファイルへのアクセス
  • agents.defaults.typingMode の設定権限
  • reasoningLevel: "stream" の設定(thinking モードを使用する場合)

5分でタイピングインジケーターを最適化しましょう。まずは agent 全体のデフォルト設定を記述します。おすすめは、思考プロセスが始まった瞬間に表示を開始する thinking モードです。

{
agent: {
typingMode: "thinking",
typingIntervalSeconds: 6,
},
}

特定のセッションだけ表示タイミングや更新頻度(cadence)を変更したい場合は、以下のように上書きできます。

{
session: {
typingMode: "message",
typingIntervalSeconds: 4,
},
}

表示が早い順に並べると以下の通りです。

  • instant: モデルのループが始まった瞬間に表示を開始します。
  • thinking: 最初の reasoning delta(思考データ)が届いたときに表示を開始します。
  • message: 最初のテキスト delta(実際の返信内容)が届いたときに表示を開始します。
  • never: タイピングインジケーターを一切表示しません。

設定が反映されない、または期待通りに動かない場合は以下の点を確認してください。

  • thinking モードで表示されない: このモードは、実行時に reasoningLevel: "stream" が設定されている必要があります。モデルが思考データを出力しない場合、タイピング表示は始まりません。
  • Heartbeat 実行時: Heartbeat による実行では、モード設定に関わらずタイピングインジケーターは常に非表示になります。
  • サイレント返信時の挙動: message モードを使用している場合、NO_REPLY トークンなどのサイレント返信のみの時はタイピング表示が出ません。
  • 更新タイミング: typingIntervalSeconds は表示を開始する時間ではなく、表示を維持するための「更新間隔」を制御します。デフォルトは 6 秒です。

設定の詳細や、特定の API との組み合わせに迷ったときは、AI Setup Assistant を活用してください。

OpenClaw

OpenClaw Expert

まだ解決しませんか?

このページで解決しない場合は、OpenClaw Expertに直接質問してください。