Швидкий старт
Увімкніть чернетки прогресу для кожного каналу за допомогою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.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, видалених повідомлень попереднього перегляду або невдалої
фіналізації нативного потоку.
Я досі бачу окремі повідомлення про прогрес.
Режим прогресу пригнічує типові окремі повідомлення про прогрес інструментів,
коли чернетка активна. Якщо окремі повідомлення все одно з’являються, перевірте,
що хід справді використовує режим прогресу, а не streaming.mode: "off" або шлях
каналу, який не може створити чернетку для цього повідомлення.
Teams поводиться інакше, ніж Discord або Telegram.
Microsoft Teams використовує нативний потік у особистих чатах замість універсального
транспорту попереднього перегляду з надсиланням і редагуванням. Teams також трактує streaming.mode: "block" як
блокову доставку Teams, оскільки він не має такого самого режиму блокового чернеткового перегляду,
який використовують Discord і Telegram.