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

# Индикаторы набора текста

# Индикаторы набора текста

Индикаторы набора текста отправляются в чат‑канал, пока активен запуск. Используйте
`agents.defaults.typingMode` для управления тем, **когда** начинается набор текста, и `typingIntervalSeconds`
для управления тем, **как часто** он обновляется.

## Значения по умолчанию

Когда `agents.defaults.typingMode` **не задан**, OpenClaw сохраняет устаревшее поведение:

* **Прямые чаты**: набор текста начинается сразу после старта цикла модели.
* **Групповые чаты с упоминанием**: набор текста начинается сразу.
* **Групповые чаты без упоминания**: набор текста начинается только при начале потоковой передачи текста сообщения.
* **Запуски heartbeat**: индикатор набора текста отключён.

## Режимы

Установите `agents.defaults.typingMode` в одно из значений:

* `never` — индикатор набора текста никогда не показывается.
* `instant` — начинать набор текста **сразу при запуске цикла модели**, даже если запуск
  позже вернёт только токен тихого ответа.
* `thinking` — начинать набор текста при **первом дельта‑фрагменте рассуждений** (требуется
  `reasoningLevel: "stream"` для запуска).
* `message` — начинать набор текста при **первом не‑тихом текстовом дельта‑фрагменте** (игнорирует
  тихий токен `NO_REPLY`).

Порядок «насколько рано срабатывает»:
`never` → `message` → `thinking` → `instant`

## Конфигурация

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

Вы можете переопределить режим или частоту обновления для каждого сеанса:

```json5 theme={"theme":{"light":"min-light","dark":"min-dark"}}
{
  session: {
    typingMode: "message",
    typingIntervalSeconds: 4,
  },
}
```

## Примечания

* В режиме `message` индикатор не будет показан для ответов, состоящих только из тихих токенов (например, токена `NO_REPLY`,
  используемого для подавления вывода).
* `thinking` срабатывает только если запуск потоково передаёт рассуждения (`reasoningLevel: "stream"`).
  Если модель не выдаёт дельта‑фрагменты рассуждений, набор текста не начнётся.
* Heartbeat‑запуски никогда не показывают индикатор набора текста, независимо от режима.
* `typingIntervalSeconds` управляет **частотой обновления**, а не временем начала.
  Значение по умолчанию — 6 секунд.
