Быстрый старт
Включите черновики прогресса для канала с помощьюstreaming.mode: "progress":
Что видят пользователи
Черновик прогресса состоит из двух частей:| Часть | Назначение |
|---|---|
| Метка | Короткая начальная строка или строка статуса, например Working или Shelling. |
| Строки прогресса | Компактные обновления запуска с теми же значками инструментов и форматтером деталей, что и подробный вывод. |
🛠️ Bash: run tests, 🔎 Web Search: for "discord edit message" или
✍️ Write: to /tmp/file.
По умолчанию они используют тот же компактный режим объяснения, что и /verbose; задайте
agents.defaults.toolProgressDetail: "raw" при отладке, если также хотите добавлять исходные
команды и детали.
Финальный ответ заменяет черновик, когда это возможно; иначе OpenClaw отправляет финальный
ответ обычным способом и очищает черновик или прекращает его обновлять в соответствии с
транспортом канала.
Выберите режим
channels.<channel>.streaming.mode управляет видимым поведением во время работы:
| Режим | Лучше всего для | Что появляется в чате |
|---|---|---|
off | Тихих каналов | Только финальный ответ. |
partial | Наблюдения за появлением текста ответа | Один черновик, редактируемый последним текстом ответа. |
block | Более крупных фрагментов предпросмотра ответа | Один предпросмотр, обновляемый или дополняемый более крупными фрагментами. |
progress | Ходов с большим числом инструментов или длительным выполнением | Один черновик статуса, затем финальный ответ. |
progress, когда пользователям важнее понимать, «что происходит», чем наблюдать
за потоковой передачей текста ответа токен за токеном.
Выбирайте partial, когда сам ответ является сигналом прогресса.
Выбирайте block, когда нужны обновления предпросмотра черновика более крупными текстовыми
фрагментами. В Discord и Telegram streaming.mode: "block" по-прежнему означает потоковый
предпросмотр, а не обычную блочную доставку. Используйте streaming.block.enabled или устаревший
blockStreaming, когда нужны обычные блочные ответы.
Настройка меток
Метки прогресса находятся вchannels.<channel>.streaming.progress.
Метка по умолчанию — auto; она выбирает значение из встроенного в OpenClaw набора
однословных меток:
Управление строками прогресса
Строки прогресса включены по умолчанию в режиме progress. Они приходят из реальных событий запуска: запусков инструментов, обновлений элементов, планов задач, одобрений, вывода команд, сводок патчей и похожей активности агента. Инструменты также могут выдавать типизированный прогресс, пока один вызов инструмента еще выполняется. Именно так медленная загрузка или поиск могут обновить видимый черновик до того, как инструмент вернет финальный результат. Обновление прогресса — это частичный результат инструмента с пустым содержимым модели и явными публичными метаданными канала:progress.text. Обычный результат
инструмента все равно приходит позже как content и details и является единственной частью,
возвращаемой модели.
Добавляя прогресс в инструмент, используйте короткое общее сообщение и откладывайте его до тех
пор, пока операция не будет ожидать достаточно долго, чтобы это стало полезным:
/verbose:
"explain" используется по умолчанию и делает черновики стабильными с лаконичными метками вроде
🛠️ check JS syntax for /tmp/app.js. "raw" добавляет базовую команду или детали, когда они
доступны; это полезно при отладке, но создает больше шума в чате.
Например, одна и та же команда выглядит по-разному в зависимости от режима детализации:
| Режим | Строка прогресса |
|---|---|
explain | 🛠️ check JS syntax for /tmp/app.js |
raw | 🛠️ check JS syntax for /tmp/app.js, node --check /tmp/app.js |
toolProgress: false OpenClaw все равно подавляет старые отдельные сообщения о прогрессе
инструментов для этого хода. Канал остается визуально тихим до финального ответа, кроме метки,
если она настроена.
Поведение каналов
Каждый канал использует самый чистый транспорт, который он поддерживает:| Канал | Транспорт прогресса | Примечания |
|---|---|---|
| Discord | Отправить одно сообщение, затем редактировать его. | Финальный текст редактируется на месте, когда он помещается в одно безопасное сообщение предпросмотра. |
| Matrix | Отправить одно событие, затем редактировать его. | Конфигурация потоковой передачи уровня аккаунта управляет черновиками уровня аккаунта. |
| Microsoft Teams | Нативный поток Teams в личных чатах. | streaming.mode: "block" сопоставляется с блочной доставкой Teams. |
| Slack | Нативный поток или редактируемый черновой пост. | Доступность треда влияет на то, можно ли использовать нативную потоковую передачу. |
| Telegram | Отправить одно сообщение, затем редактировать его. | Более старые видимые черновики могут заменяться, чтобы финальные временные метки оставались полезными. |
| Mattermost | Редактируемый черновой пост. | Активность инструментов сворачивается в тот же пост в стиле черновика. |
Финализация
Когда финальный ответ готов, OpenClaw старается сохранить чат чистым:- Если черновик может безопасно стать финальным ответом, OpenClaw редактирует его на месте.
- Если канал использует нативную потоковую передачу прогресса, OpenClaw завершает этот поток, когда нативный транспорт принимает финальный текст.
- Если финальный ответ содержит медиа, запрос одобрения, явную цель ответа, слишком много фрагментов или неудачное редактирование/отправку, OpenClaw отправляет финальный ответ через обычный путь доставки канала.
Устранение неполадок
Я вижу только финальный ответ. Проверьте, чтоchannels.<channel>.streaming.mode задан как progress для аккаунта или канала,
который обработал сообщение. Некоторые пути групп или ответов с цитированием могут отключать
предпросмотры черновиков для хода, когда канал не может безопасно редактировать нужное сообщение.
Я вижу метку, но не вижу строк инструментов.
Проверьте streaming.progress.toolProgress. Если он равен false, OpenClaw сохраняет поведение
единого черновика, но скрывает строки прогресса инструментов и задач.
Я вижу новое финальное сообщение вместо отредактированного черновика.
Это безопасный запасной вариант. Такое может происходить для ответов с медиа, длинных ответов,
явных целей ответа, старых черновиков Telegram, отсутствующих целей треда Slack, удаленных
сообщений предпросмотра или неудачного завершения нативного потока.
Я все еще вижу отдельные сообщения о прогрессе.
Режим progress подавляет стандартные отдельные сообщения о прогрессе инструментов, когда черновик
активен. Если отдельные сообщения все еще появляются, убедитесь, что ход действительно использует
режим progress, а не streaming.mode: "off" или путь канала, который не может создать черновик
для этого сообщения.
Teams ведет себя иначе, чем Discord или Telegram.
Microsoft Teams использует нативный поток в личных чатах вместо универсального
транспорта предпросмотра с отправкой и редактированием. Teams также обрабатывает streaming.mode: "block" как
блочную доставку Teams, потому что у него нет такого же блочного режима чернового предпросмотра,
который используется Discord и Telegram.