コンセプト内部

タイピングインジケーター

タイピングインジケーターは、ランがアクティブな間にチャットチャネルに送信されます。agents.defaults.typingMode でタイピングがいつ開始するかを、typingIntervalSecondsどのくらいの頻度で更新するかを制御します。

デフォルト

agents.defaults.typingMode設定されていない場合、OpenClawは従来の動作を維持します:

  • ダイレクトチャット: モデルループが開始するとすぐにタイピングが開始されます。
  • メンション付きグループチャット: タイピングがすぐに開始されます。
  • メンションなしグループチャット: メッセージテキストのストリーミングが開始された時のみタイピングが開始されます。
  • ハートビートラン: タイピングは無効です。

モード

agents.defaults.typingMode を次のいずれかに設定します:

  • never — タイピングインジケーターを一切表示しません。
  • instantモデルループが開始するとすぐにタイピングを開始します。後でランがサイレント返信トークンのみを返した場合でも同様です。
  • thinking最初の推論デルタでタイピングを開始します(ランに reasoningLevel: "stream" が必要です)。
  • message最初の非サイレントテキストデルタでタイピングを開始します(NO_REPLY サイレントトークンは無視されます)。

「どれだけ早く発動するか」の順序: nevermessagethinkinginstant

設定

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

セッションごとにモードや間隔を上書きできます:

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

注意点

  • message モードでは、サイレントのみの返信(例:出力を抑制するために使用される NO_REPLY トークン)に対してタイピングは表示されません。
  • thinking は、ランが推論をストリーミングする場合(reasoningLevel: "stream")にのみ発動します。モデルが推論デルタを出力しない場合、タイピングは開始されません。
  • ハートビートは、モードに関係なくタイピングを表示しません。
  • typingIntervalSeconds は開始時間ではなく、更新間隔を制御します。デフォルトは6秒です。

Markdown フォーマット使用状況トラッキング