Ищете планирование? О выборе подходящего механизма см. Автоматизация. Эта страница — журнал активности фоновой работы, а не планировщик.
Не каждый запуск агента создаёт задачу. Циклы Heartbeat и обычный интерактивный чат задач не создают. Все выполнения Cron, создания ACP, создания субагентов и отправленные через Gateway команды агента CLI создают задачи.
Кратко
- Задачи — это записи, а не планировщики: Cron и Heartbeat определяют, когда выполняется работа, а задачи отслеживают, что произошло.
- ACP, субагенты, все задания Cron и операции CLI создают задачи. Циклы Heartbeat их не создают.
- Каждая задача проходит через
queued → running → terminal(успешно выполнена, завершилась с ошибкой, превысила время ожидания, отменена или потеряна). - Задачи Cron остаются активными, пока среда выполнения Cron продолжает владеть заданием; если состояние среды выполнения в памяти утрачено, обслуживание задач сначала проверяет долговременную историю запусков Cron и только затем помечает задачу как потерянную.
- Завершение инициирует отправку уведомления: отделённая работа после завершения может уведомить напрямую или активировать сеанс запросившего агента либо Heartbeat, поэтому циклы опроса состояния обычно не подходят.
- Изолированные запуски Cron и завершения субагентов по возможности закрывают отслеживаемые вкладки браузера и процессы дочернего сеанса перед окончательной служебной очисткой.
- При доставке изолированного запуска Cron устаревшие промежуточные ответы родительского агента подавляются, пока ещё завершается работа дочерних субагентов; если итоговый вывод дочернего агента поступает до доставки, предпочтение отдаётся ему.
- Уведомления о завершении доставляются непосредственно в канал или ставятся в очередь до следующего Heartbeat.
openclaw tasks listпоказывает все задачи;openclaw tasks auditотображает проблемы.- Терминальные записи хранятся 7 дней (записи
lost— 24 часа), после чего автоматически удаляются.
Быстрый старт
- Просмотр списка и фильтрация
- Просмотр
- Отмена и уведомления
- Аудит и обслуживание
- Ход задачи
Что создаёт задачу
Настройки уведомлений по умолчанию для Cron и медиа
Настройки уведомлений по умолчанию для Cron и медиа
Задачи Cron (в основном и изолированном сеансе) используют политику уведомлений
silent: они создают записи для отслеживания, но не генерируют собственные уведомления о задачах; доставкой управляет Cron.Запуски image_generate, music_generate и video_generate на основе сеанса также используют политику уведомлений silent. Они по-прежнему создают записи задач, но после завершения управление возвращается исходному сеансу агента посредством внутренней активации, чтобы агент мог написать последующее сообщение и самостоятельно прикрепить готовые медиафайлы. Запросивший агент соблюдает обычный контракт видимых ответов: автоматически отправляет итоговый ответ, если это настроено, либо использует message(action="send") вместе с NO_REPLY, если сеанс требует ответов через инструмент сообщений. Если сеанс запросившего агента больше не активен или его активная активация завершается сбоем, а агент завершения пропускает часть либо все созданные медиафайлы, OpenClaw отправляет идемпотентное прямое резервное сообщение только с недостающими медиафайлами исходному адресату канала.Защита от параллельного создания медиа
Защита от параллельного создания медиа
Пока задача создания медиа на основе сеанса остаётся активной,
image_generate, music_generate и video_generate защищают от случайных повторных попыток: повторный вызов с тем же запросом возвращает состояние соответствующей активной задачи вместо запуска дубликата, а другой запрос может запустить собственную задачу. Используйте action: "status", если требуется явно запросить ход выполнения или состояние со стороны агента.Что не создаёт задачи
Что не создаёт задачи
- Циклы Heartbeat в основном сеансе; см. Heartbeat
- Обычные интерактивные циклы чата
- Прямые ответы
/command
Жизненный цикл задачи
Переходы выполняются автоматически: события жизненного цикла запуска агента (начало, завершение, ошибка) обновляют состояние задачи; управлять им вручную не требуется.
Завершение запуска агента является авторитетным для записей активных задач. Успешный отделённый запуск получает итоговое состояние
succeeded, обычные ошибки запуска — failed, превышение времени ожидания — timed_out, а отмена или прерывание — cancelled. После перехода задачи в терминальное состояние последующие сигналы жизненного цикла не могут изменить его на менее окончательное: отменённая оператором или уже находящаяся в состоянии failed/timed_out/lost задача сохраняет это состояние, даже если позднее поступает сигнал об успешном завершении.
lost учитывает среду выполнения:
- Задачи ACP: только активный внутрипроцессный цикл ACP в Gateway подтверждает, что запуск продолжается; одних сохранённых метаданных сеанса недостаточно. Автономный аудит CLI действует консервативно и никогда не восстанавливает задачи ACP.
- Задачи субагентов: базовый дочерний сеанс исчез из хранилища целевого агента (либо содержит маркер восстановления после перезапуска).
- Задачи Cron: среда выполнения Cron больше не отслеживает задание как активное, а долговременная история запусков Cron не содержит терминального результата этого запуска. Автономный аудит CLI не считает авторитетным собственное пустое внутрипроцессное состояние среды выполнения Cron.
- Задачи CLI: для задач с ID запуска или исходным ID используется активный контекст запуска, поэтому оставшиеся записи дочернего сеанса или сеанса чата не сохраняют их активными после исчезновения запуска, принадлежащего Gateway. Устаревшие задачи CLI без идентификатора запуска по-прежнему используют дочерний сеанс как резервный источник. Запуски
openclaw agentна основе Gateway также получают итоговое состояние из результата своего запуска, поэтому завершённые запуски не остаются активными до тех пор, пока процесс очистки не пометит их какlost.
Доставка и уведомления
Когда задача достигает терминального состояния, OpenClaw уведомляет вас. Предусмотрено два способа доставки: Прямая доставка — если у задачи указан целевой канал (requesterOrigin), сообщение о завершении отправляется непосредственно в этот канал (Discord, Slack, Telegram и т. д.). Сведения о завершении групповых задач и задач каналов вместо этого направляются через сеанс запросившего агента, чтобы родительский агент мог написать видимый ответ. Для завершений субагентов OpenClaw также сохраняет привязанную маршрутизацию по ветке или теме, когда она доступна, и может дополнить отсутствующие to / учётную запись сохранённым маршрутом сеанса запросившего агента (lastChannel / lastTo / lastAccountId), прежде чем отказаться от прямой доставки.
Доставка через очередь сеанса — если прямая доставка завершается сбоем или источник не задан, обновление помещается в очередь как системное событие в сеансе запросившего агента и отображается при следующем Heartbeat.
Таким образом, обычный рабочий процесс основан на отправке уведомлений: один раз запустите отделённую работу, а затем позвольте среде выполнения активировать вас или уведомить о завершении. Опрашивайте состояние задачи только для отладки, вмешательства или явного аудита.
Политики уведомлений
Настройте объём уведомлений о каждой задаче:
Измените политику во время выполнения задачи:
Справочник CLI
tasks list
tasks list
openclaw tasks без аргументов действует как openclaw tasks list.tasks show
tasks show
tasks cancel
tasks cancel
tasks.cancel). Для задач, отслеживаемых CLI, отмена регистрируется в реестре задач (отдельного дескриптора дочерней среды выполнения нет). Статус меняется на cancelled, и при необходимости отправляется уведомление о доставке.уведомление о задачах
уведомление о задачах
аудит задач
аудит задач
openclaw status.Результаты проверки задач:Результаты проверки TaskFlow:
обслуживание задач
обслуживание задач
- Для задач ACP требуется активный внутрипроцессный цикл в Gateway; задачи субагентов проверяют свою базовую дочернюю сессию.
- Задачи субагентов, у дочерней сессии которых есть метка восстановления после перезапуска, помечаются как потерянные, а не рассматриваются как имеющие восстанавливаемые базовые сессии.
- Задачи Cron проверяют, остаётся ли задание во владении среды выполнения Cron, а затем восстанавливают терминальный статус из сохранённых журналов запусков Cron и состояния задания, прежде чем перейти к
lost. Только процесс Gateway является авторитетным источником для хранящегося в памяти набора активных заданий Cron; автономный аудит CLI использует постоянную историю, но не помечает задачу Cron как потерянную только потому, что локальный набор пуст. - Задачи CLI с идентификатором запуска проверяют владеющий ими активный контекст запуска, а не только строки дочерней или чат-сессии.
- При завершении задачи субагента система по возможности закрывает отслеживаемые вкладки браузера и процессы дочерней сессии, прежде чем продолжить очистку после объявления.
- При завершении изолированного запуска Cron система по возможности закрывает отслеживаемые вкладки браузера и процессы сессии Cron до полного завершения запуска.
- При необходимости доставка изолированного запуска Cron ожидает завершения последующих действий дочернего субагента и не объявляет устаревший текст подтверждения родительской задачи.
- Для доставки результата завершённой задачи субагента используется только последний видимый текст ассистента из дочерней сессии. Вывод tool/toolResult не преобразуется в текст результата дочерней задачи. Терминальные запуски, завершившиеся с ошибкой, объявляют статус ошибки без повторной передачи сохранённого текста ответа.
- Ошибки очистки не скрывают фактический результат задачи.
cron:<jobId>:run:<runId> старше 7 дней, сохраняя строки для выполняющихся заданий Cron и не изменяя строки сессий, не относящихся к Cron.список | просмотр | отмена потоков задач
список | просмотр | отмена потоков задач
Доска задач чата (/tasks)
Используйте /tasks в любой чат-сессии, чтобы просмотреть связанные с ней фоновые задачи. На доске отображается до пяти активных и недавно завершённых задач с указанием среды выполнения, статуса, времени и сведений о ходе выполнения или ошибке.
Если в текущей сессии нет видимых связанных задач, /tasks вместо этого показывает локальное для агента количество задач, чтобы вы всё равно могли получить общее представление без раскрытия сведений о других сессиях.
Для просмотра полного операторского журнала используйте CLI: openclaw tasks list.
Control UI
В боковой панели веб-интерфейса Control UI есть страница Задачи с активными и недавно завершёнными фоновыми задачами в реальном времени. Используйте её, чтобы просматривать ход выполнения, открывать связанные сессии, обновлять журнал или отменять задачи в очереди и выполняющиеся задачи. В панелях чата также есть сворачиваемая область Фоновые задачи, относящаяся к агенту этой панели: выполняющиеся задачи и субагенты с элементом управления остановкой, раздел завершённых задач и ссылки «Просмотреть стенограмму» на дочернюю сессию каждой задачи. Откройте её с помощью переключателя активности в заголовке панели (или плавающей кнопки активности в однопанельном чате).Интеграция со статусом (нагрузка задач)
openclaw status содержит краткую строку о задачах:
queued + running), сбоев (failed + timed_out + lost), результатов аудита и всех отслеживаемых записей; в полезной нагрузке JSON количество также разбивается по средам выполнения (acp, subagent, cron, cli).
И /status, и инструмент session_status используют учитывающий очистку снимок задач: предпочтение отдаётся активным задачам, просроченные строки скрываются, а терминальные задачи отображаются только в течение короткого недавнего периода (5 минут), причём при отсутствии активной работы основное внимание уделяется сбоям. Благодаря этому карточка статуса показывает то, что важно прямо сейчас.
Хранение и обслуживание
Где хранятся задачи
Записи задач и состояние доставки сохраняются в общей базе данных состояния OpenClaw SQLite:OPENCLAW_STATE_DIR, чтобы переместить весь корневой каталог состояния (по умолчанию ~/.openclaw) в другое место; путь общей базы данных изменится вместе с ним.
Реестр загружается в память при первом использовании, и каждая операция записи сохраняется обратно в SQLite, поэтому записи сохраняются после перезапуска Gateway. Рост WAL ограничивается стандартным порогом автоматических контрольных точек SQLite и периодическими контрольными точками PASSIVE; при завершении работы и явном обслуживании используются контрольные точки TRUNCATE, благодаря чему при обычном закрытии освобождается место WAL без ожидания активных читателей фоновым процессом очистки.
Устаревшие вспомогательные хранилища из старых установок (tasks/runs.sqlite, flows/registry.sqlite) импортируются в общую базу данных с помощью openclaw doctor.
Автоматическое обслуживание
Процесс очистки запускается каждые 60 секунд (первый проход — примерно через 5 секунд после запуска Gateway) и выполняет четыре действия:1
Согласование
Проверяет, имеют ли активные задачи авторитетное обеспечение в среде выполнения. Для задач ACP требуется активный внутрипроцессный цикл, задачи субагентов используют состояние дочерней сессии, задачи Cron — владение активным заданием и постоянную историю запусков, а задачи CLI с идентификатором запуска — владеющий контекст запуска. Если состояние обеспечения отсутствует более 5 минут (30 минут для нативных задач субагентов без дочерней сессии), задача помечается как
lost.2
Восстановление сессий ACP
Закрывает терминальные или потерявшие родителя одноразовые сессии ACP, принадлежащие родителю, а устаревшие терминальные или потерявшие родителя постоянные сессии ACP закрывает только при отсутствии активной привязки к беседе.
3
Проставление отметок очистки
Устанавливает временную метку
cleanupAfter для терминальных задач (время перехода в терминальное состояние + период хранения). В течение периода хранения потерянные задачи по-прежнему отображаются в аудите как предупреждения; после истечения cleanupAfter или при отсутствии метаданных очистки они становятся ошибками.4
Удаление устаревших данных
Удаляет записи после наступления даты
cleanupAfter.Хранение: записи терминальных задач хранятся 7 дней (записи
lost — 24 часа), а затем автоматически удаляются. Настройка не требуется.Связь задач с другими системами
Задачи и Task Flow
Задачи и Task Flow
Task Flow — это уровень оркестрации потоков над фоновыми задачами. Один поток может координировать несколько задач на протяжении своего жизненного цикла, используя управляемый или зеркальный режим синхронизации. Используйте
openclaw tasks для просмотра отдельных записей задач и openclaw tasks flow для просмотра управляющего потока.Задачи и Cron
Задачи и Cron
Определения заданий Cron, состояние выполнения и история запусков хранятся в общей базе данных состояния OpenClaw SQLite. Каждый запуск Cron создаёт запись задачи — как в основной, так и в изолированной сессии — с политикой уведомлений
silent, поэтому запуски Cron отслеживаются без создания собственных уведомлений о задачах.См. Задания Cron.Задачи и Heartbeat
Задачи и Heartbeat
Запуски Heartbeat являются циклами основной сессии — они не создают записи задач. Когда задача завершается, она может инициировать пробуждение Heartbeat, чтобы вы оперативно увидели результат.См. Heartbeat.
Задачи и сессии
Задачи и сессии
Задача может ссылаться на
childSessionKey (где выполняется работа) и requesterSessionKey (кто её запустил). Её agentId определяет агента, выполняющего работу, а поля инициатора и владельца сохраняют контекст запуска и управления. Сессии представляют контекст беседы, а задачи обеспечивают отслеживание активности поверх него.Задачи и запуски агентов
Задачи и запуски агентов
Поле
runId задачи ссылается на выполняющий работу запуск агента. События жизненного цикла агента (запуск, завершение, ошибка) автоматически обновляют статус задачи — управлять жизненным циклом вручную не требуется.См. также
- Автоматизация — все механизмы автоматизации в одном обзоре
- CLI: задачи — справочник команд CLI
- Heartbeat — периодические циклы основного сеанса
- Запланированные задачи — планирование фоновой работы
- TaskFlow — оркестрация потоков поверх задач