> ## Documentation Index
> Fetch the complete documentation index at: https://openclaw.zhcndoc.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 输入中指示器

在运行处于活动状态时，会向聊天频道发送输入中指示器。使用 `agents.defaults.typingMode` 来控制**何时**开始输入，以及使用 `typingIntervalSeconds` 来控制**多久**刷新一次（保活频率，默认 6 秒）。

## 默认值

当 `agents.defaults.typingMode` **未设置**时：

* **直接聊天**：一旦模型循环开始，立即开始输入。
* **带有提及的群聊**：立即开始输入。
* **没有提及的群聊**：当已接纳的运行出现对用户可见的活动时开始输入，例如 harness 执行活动或消息文本。
* **心跳运行**：如果解析后的心跳目标是支持输入的聊天，并且输入未被禁用，则在心跳运行开始时开始输入。

## 模式

将 `agents.defaults.typingMode` 设置为以下之一：

* `never` - 从不显示输入指示器。
* `instant` - 在**模型循环开始时就立即**开始输入，即使后续运行最终只返回静默回复令牌。
* `thinking` - 在**第一个推理增量**时开始输入，或者在该轮次被接受后在主动 harness 执行时开始输入。
* `message` - 在**第一个用户可见的回复活动**时开始输入，例如主动 harness 执行或非静默文本增量。像 `NO_REPLY` 这样的静默回复令牌不计为文本活动。

“触发时机有多早”的顺序：`never` -> `message`/`thinking` -> `instant`。

## 配置

设置代理级默认值：

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  agents: {
    defaults: {
      typingMode: "thinking",
      typingIntervalSeconds: 6,
    },
  },
}
```

为某个代理覆盖策略：

````json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  agents: {
    entries: {
      support: {
        typingMode: "message",
      },
    },
  },
}```

## 注意

- `message` 模式不会从静默回复令牌开始，但主动执行仍可能在任何助手文本可用之前显示输入中状态。
- `thinking` 仍会对流式推理（`reasoningLevel: "stream"`）作出响应，并且也可以在推理增量到达之前从主动执行开始。
- 心跳输入中状态是已解析投递目标的存活信号。它从心跳运行开始时触发，而不是跟随 `message` 或 `thinking` 流的时序。将 `typingMode: "never"` 设置为禁用它。
- 当心跳目标为 `"none"`、目标无法解析、心跳的聊天投递被禁用，或者通道不支持输入中状态时，心跳不会显示输入中状态。
- `agents.defaults.typingIntervalSeconds` 控制每个 agent 的**刷新频率**，而不是开始时间。默认值：6 秒。

## 相关

<CardGroup cols={2}>
  <Card title="Presence" href="/concepts/presence" icon="signal">
    网关如何跟踪已连接的客户端，用于 Control UI Devices 页面和 macOS Instances 选项卡。
  </Card>
  <Card title="Streaming and chunking" href="/concepts/streaming" icon="bars-staggered">
    出站流式行为、分块边界以及按频道的投递。
  </Card>
</CardGroup>
````
