Цель
Цель — это одна устойчивая задача, привязанная к текущему сеансу OpenClaw. Она дает агенту и оператору общую цель для длительной работы, не превращая эту цель в фоновую задачу, напоминание, задание cron или постоянное поручение. Цели являются состоянием сеанса. Они перемещаются вместе с ключом сеанса, переживают перезапуски процесса, отображаются в/goal, доступны модели через
инструменты цели и появляются в нижней строке TUI, когда у активного сеанса есть цель.
Быстрый старт
Задать цель:Для чего нужны цели
Используйте цель, когда у сеанса есть конкретный результат, который должен оставаться видимым на протяжении многих ходов:- Завершение PR: исправить, проверить, выполнить autoreview, отправить изменения и открыть или обновить PR.
- Отладочный прогон: воспроизвести ошибку, определить ответственную поверхность, внести исправление и доказать исправление.
- Проход по документации: прочитать релевантные документы, написать новую страницу, добавить перекрестные ссылки и проверить сборку документации.
- Задача обслуживания: изучить текущее состояние, внести ограниченные изменения, запустить нужные проверки и сообщить, что изменилось.
Справочник команд
/goal без аргументов выводит сводку текущей цели:
/goalили/goal statusпоказывает текущую цель./goal start <objective>создает новую цель для текущего сеанса./goal set <objective>и/goal create <objective>являются псевдонимамиstart./goal pause [note]приостанавливает активную цель./goal resume [note]возобновляет приостановленную, заблокированную, ограниченную по использованию или ограниченную бюджетом цель./goal complete [note]отмечает цель достигнутой./goal done [note]является псевдонимомcomplete./goal block [note]отмечает цель заблокированной./goal blocked [note]является псевдонимомblock./goal clearудаляет цель из сеанса.
Статусы
Цели используют небольшой набор статусов:active: сеанс работает над целью.paused: оператор приостановил цель;/goal resumeснова делает ее активной.blocked: агент или оператор сообщил о реальном блокере;/goal resumeснова делает ее активной, когда появляется новая информация или состояние.budget_limited: настроенный бюджет токенов достигнут;/goal resumeперезапускает работу с той же целью.usage_limited: зарезервировано для остановок из-за лимитов использования;/goal resumeперезапускает работу, когда это разрешено.complete: цель достигнута. Завершенные цели являются терминальными; используйте/goal clearперед запуском другой цели.
/new и /reset очищают цель текущего сеанса, потому что они намеренно
начинают свежий контекст сеанса.
Бюджеты токенов
У целей может быть необязательный положительный бюджет токенов. Бюджет хранится вместе с целью и измеряется от свежего счетчика токенов сеанса на момент создания. Если у текущего сеанса при запуске цели есть только устаревшие или неизвестные данные об использовании токенов, OpenClaw ждет следующего свежего снимка токенов сеанса и использует его как базовую точку, поэтому токены, потраченные до появления цели, не списываются на цель. Когда использование токенов достигает бюджета, цель меняется наbudget_limited. Это
не удаляет цель и не стирает задачу. Это сообщает оператору и
агенту, что цель больше не выполняется активно, пока она не будет возобновлена или
очищена.
Бюджеты токенов — это ограничитель цели сеанса, а не лимит оплаты. Квота провайдера,
отчеты о стоимости и поведение окна контекста по-прежнему используют обычные
средства управления использованием и моделями OpenClaw.
Инструменты модели
OpenClaw предоставляет агентским harness три основных инструмента целей:get_goal: прочитать текущую цель сеанса, включая статус, задачу, использование токенов и бюджет токенов.create_goal: создать цель только тогда, когда инструкции пользователя, системы или разработчика явно запрашивают это. Завершается ошибкой, если у сеанса уже есть цель.update_goal: отметить цель какcompleteилиblocked.
/goal и команды сброса. Это не дает
агенту тихо менять цель, сохраняя при этом чистый путь для
агента, чтобы сообщить о достижении или настоящем блокере.
Инструмент update_goal должен отмечать цель как complete только тогда, когда задача
действительно достигнута. Он должен отмечать цель как blocked только тогда, когда одно и то же блокирующее
условие повторилось и агент не может добиться осмысленного прогресса без
нового ввода пользователя или изменения внешнего состояния.
TUI
TUI держит цель активного сеанса видимой в нижней строке рядом с агентом, сеансом, моделью, элементами управления запуском и счетчиками токенов. Примеры нижней строки:Pursuing goal (12k/50k)для активной цели с бюджетом токенов.Goal paused (/goal resume)для приостановленной цели.Goal blocked (/goal resume)для заблокированной цели.Goal hit usage limits (/goal resume)для цели, ограниченной лимитами использования.Goal unmet (50k/50k)для цели, ограниченной бюджетом.Goal achieved (42k)для завершенной цели.
/goal для полной задачи, заметки,
бюджета токенов и доступных команд.
Поведение каналов
Команда/goal работает в сеансах OpenClaw с поддержкой команд, включая
TUI и чат-поверхности, которые разрешают текстовые команды. Состояние цели привязано к
ключу сеанса, а не к транспорту. Если две поверхности используют один и тот же сеанс, они видят
одну и ту же цель.
Состояние цели не является директивой доставки. Оно не заставляет отвечать через
канал, не меняет поведение очереди, не одобряет инструменты и не планирует работу.
Устранение неполадок
Goal error: goal already exists означает, что у сеанса уже есть цель. Используйте
/goal, чтобы посмотреть ее, /goal complete, если она выполнена, или /goal clear перед
запуском другой задачи.
Goal error: goal not found означает, что у сеанса пока нет цели. Запустите ее с помощью
/goal start <objective>.
Goal error: goal is already complete означает, что цель является терминальной. Очистите ее
перед запуском или возобновлением другой задачи.
Если использование токенов выглядит как 0 или устаревшее, у активного сеанса может еще не быть свежего
снимка токенов. Использование обновляется по мере того, как OpenClaw записывает использование сеанса и
итоги, полученные из транскрипта.