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

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

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

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

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

* **Личные чаты**: набор начинается сразу после запуска цикла модели.
* **Групповые чаты с упоминанием**: набор начинается сразу.
* **Групповые чаты без упоминания**: набор начинается, когда допущенное выполнение получает
  видимую пользователю активность, например активность выполнения harness или текст сообщения.
* **Выполнения Heartbeat**: набор начинается при запуске выполнения Heartbeat, если
  разрешенная цель Heartbeat — чат с поддержкой набора, а набор не отключен.

## Режимы

Установите `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"}}
{
  session: {
    typingMode: "message",
    typingIntervalSeconds: 4,
  },
}
```

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

* Режим `message` не запускается от токенов беззвучного ответа, но активное выполнение
  все равно может показать набор до появления текста ассистента.
* `thinking` по-прежнему реагирует на потоковые рассуждения (`reasoningLevel: "stream"`),
  а также может начаться от активного выполнения до поступления дельт рассуждения.
* Набор Heartbeat — это сигнал активности для разрешенной цели доставки. Он
  начинается при запуске выполнения Heartbeat, а не следует таймингу потока `message` или `thinking`.
  Установите `typingMode: "never"`, чтобы отключить его.
* Heartbeat не показывает набор, когда `target: "none"`, когда цель не удается
  разрешить, когда доставка в чат отключена для Heartbeat или когда
  канал не поддерживает набор.
* `typingIntervalSeconds` управляет **частотой обновления**, а не временем запуска.
  Значение по умолчанию — 6 секунд.

## Связанные материалы

<CardGroup cols={2}>
  <Card title="Присутствие" href="/ru/concepts/presence" icon="signal">
    Как Gateway отслеживает подключенных клиентов и отображает их на вкладке Instances в macOS.
  </Card>

  <Card title="Потоковая передача и разбиение на фрагменты" href="/ru/concepts/streaming" icon="bars-staggered">
    Поведение исходящей потоковой передачи, границы фрагментов и доставка с учетом особенностей каналов.
  </Card>
</CardGroup>
