Skip to main content
OpenClaw はエージェントが実行されている間、チャットチャネルに対してタイピングインジケーター(「入力中…」の表示)を送信します。agents.defaults.typingMode を使用して入力開始の タイミング を、typingIntervalSeconds を使用して更新の 頻度 を制御できます。

デフォルト設定

agents.defaults.typingMode未設定 の場合、OpenClaw は以下のレガシーな挙動を維持します:
  • ダイレクトチャット: モデルのループが開始されると即座に入力表示を開始します。
  • メンション(言及)ありのグループチャット: 即座に入力表示を開始します。
  • メンションなしのグループチャット: メッセージテキストのストリーミングが開始された時点で入力表示を開始します。
  • ハートビート(定期実行): 入力表示は無効化されます。

モード一覧

agents.defaults.typingMode に以下のいずれかを設定できます:
  • never: いかなる場合もタイピングインジケーターを表示しません。
  • instant: モデルのループが開始された直後 に入力表示を開始します。たとえその後の実行結果がサイレントリプライ(返信なし)であっても表示されます。
  • thinking: 最初の推論(Reasoning)の差分が生成された時点 で入力表示を開始します(実行時に reasoningLevel: "stream" が必要です)。
  • message: 最初の(サイレントでない)テキストの差分が生成された時点 で入力表示を開始します(NO_REPLY トークンによるサイレントな応答は無視されます)。
表示開始の早さの順序: never (なし) → message (遅い) → thinkinginstant (早い)

構成例

{
  agent: {
    typingMode: "thinking",
    typingIntervalSeconds: 6,
  },
}
セッションごとにモードや更新間隔を上書きすることも可能です:
{
  session: {
    typingMode: "message",
    typingIntervalSeconds: 4,
  },
}

補足事項

  • message モードでは、サイレントリプライ(出力を抑制するために NO_REPLY トークンが使われた場合など)では入力表示は行われません。
  • thinking モードは、推論プロセスのストリーミング (reasoningLevel: "stream") が行われる場合にのみ機能します。モデルが推論の差分を出力しない場合、入力表示は開始されません。
  • モードに関わらず、ハートビート実行時には入力表示は行われません。
  • typingIntervalSeconds は、開始タイミングではなく 更新の頻度 を制御します。デフォルトは 6 秒です。