輸入指示器

執行進行中時,輸入指示器會傳送到對話頻道。使用 agents.defaults.typingMode 控制何時開始顯示輸入狀態,typingIntervalSeconds 控制多久刷新一次。

預設值

agents.defaults.typingMode 未設定時,OpenClaw 維持舊有行為:

  • 直接對話:模型迴圈開始時立即顯示輸入狀態。
  • 群組對話(有提及):立即顯示輸入狀態。
  • 群組對話(無提及):只在訊息文字開始串流時才顯示輸入狀態。
  • 心跳執行:停用輸入指示器。

模式

agents.defaults.typingMode 設為以下任一值:

  • never — 完全不顯示輸入指示器。
  • instant模型迴圈一開始就顯示輸入狀態,即使執行最終只回傳靜默回覆的 Token。
  • thinking — 在第一個推理差異出現時開始顯示(需要該次執行的 reasoningLevel: "stream")。
  • message — 在第一個非靜默的文字差異出現時開始顯示(忽略 NO_REPLY 靜默 Token)。

觸發時機的先後順序: nevermessagethinkinginstant

設定

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

也可依 Session 覆蓋模式或刷新頻率:

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

備註

  • message 模式不會為純靜默回覆(例如用來抑制輸出的 NO_REPLY Token)顯示輸入狀態。
  • thinking 只在執行串流推理時觸發(reasoningLevel: "stream")。如果模型沒有產出推理差異,輸入狀態不會開始顯示。
  • 心跳永遠不會顯示輸入狀態,無論模式為何。
  • typingIntervalSeconds 控制的是刷新頻率,而非開始時間。預設為 6 秒。