跳转到主要内容

输入指示器

在运行活跃期间,输入指示器会发送到聊天渠道。使用 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 秒。