Bundled plugin guides
Plugin Workboard
Plugin Workboard добавляет необязательную доску в стиле Kanban в Control UI. Используйте ее, чтобы собирать рабочие карточки размера задачи для агента, назначать их агентам и отслеживать связанную фоновую задачу, запуск и сессию панели мониторинга из одной карточки.
Workboard намеренно небольшой. Он отслеживает локальную операционную работу для OpenClaw Gateway; это не замена GitHub Issues, Linear, Jira или другим системам управления командными проектами.
Состояние по умолчанию
Workboard — это встроенный Plugin, и по умолчанию он отключен, пока вы не включите его в конфигурации Plugin.
Включите его так:
openclaw plugins enable workboardopenclaw gateway restartЗатем откройте панель мониторинга:
openclaw dashboardВкладка Workboard появится в навигации панели мониторинга. Если вкладка видна,
но Plugin отключен или заблокирован plugins.allow / plugins.deny,
представление показывает состояние недоступного Plugin вместо локальных данных
карточек.
Что содержат карточки
Каждая карточка хранит:
- заголовок и заметки
- статус:
triage,backlog,todo,scheduled,ready,running,review,blockedилиdone - приоритет:
low,normal,highилиurgent - метки
- необязательный идентификатор агента
- необязательную связанную задачу, запуск, сессию или URL источника
- необязательные метаданные выполнения для запуска Codex или Claude, начатого из карточки
- компактные метаданные для попыток, комментариев, ссылок, подтверждений, артефактов, автоматизации, вложений, журналов воркеров, состояния протокола воркера, заявок, диагностики, уведомлений, шаблонов, состояния архива и обнаружения устаревших сессий
- недавние события карточки, такие как создание, перемещение, связывание, назначение заявки, Heartbeat, попытка, подтверждение, артефакт, диагностика, уведомление, dispatch, архивирование, устаревание или изменения, обновленные агентом
Карточки хранятся в состоянии Gateway этого Plugin. Они локальны для каталога состояния Gateway и перемещаются вместе с остальным состоянием OpenClaw этого Gateway.
Workboard хранит компактные метаданные для каждой карточки, чтобы операторы могли видеть, как карточка двигалась по доске, не открывая связанную сессию. События, сводки попыток, фрагменты подтверждений, связанные ссылки, комментарии, маркеры архива и маркеры устаревших сессий намеренно являются локальными метаданными; они не заменяют расшифровки сессий или историю issue в GitHub.
Выполнения карточек и задачи
Несвязанные карточки могут запускать работу из карточки. Автономные запуски используют путь запуска агента с отслеживанием задач в Gateway, затем Workboard связывает полученные задачу, идентификатор запуска и ключ сессии обратно с карточкой. Запуск использует настроенные в Gateway агента и модель по умолчанию. Действия Codex и Claude являются необязательными явными вариантами выбора модели:
- Run Codex или Run Claude запускает агентский запуск с поддержкой задачи,
отправляет prompt карточки и помечает карточку как
running. - Open Codex или Open Claude создает связанную сессию панели мониторинга без отправки prompt карточки и без перемещения карточки, чтобы вы могли работать вручную, пока она остается прикрепленной к доске.
Метаданные выполнения хранят выбранный движок, режим, ссылку на модель, ключ
сессии, идентификатор запуска, идентификатор задачи при наличии и статус
жизненного цикла на карточке. Выполнения Codex используют openai/gpt-5.5;
выполнения Claude используют anthropic/claude-sonnet-4-6.
Каждое связанное выполнение также записывает сводку попытки в ту же запись карточки. Сводка попытки хранит движок, режим, модель, идентификатор запуска, временные метки, статус и скользящий счетчик сбоев, чтобы повторяющиеся сбои оставались видимыми на доске.
Панель мониторинга обновляет статус задачи из журнала задач Gateway и сопоставляет задачи с карточками по идентификатору задачи, идентификатору запуска или связанному ключу сессии. Если задача находится в очереди или выполняется, жизненный цикл карточки показывает активное состояние задачи. Если задача завершается, завершается ошибкой, истекает по времени или отменяется, жизненный цикл карточки перемещается к статусу review или blocked, используя ту же синхронизацию жизненного цикла, что и связанные сессии.
Координация агентов
Workboard также предоставляет необязательные инструменты агента для рабочих процессов с учетом доски:
workboard_listвыводит компактные карточки с состоянием заявки и диагностики, с необязательным фильтром доски.workboard_readвозвращает одну карточку плюс ограниченный контекст воркера, построенный из заметок, попыток, комментариев, ссылок, подтверждений, артефактов, результатов родительских карточек, недавней работы исполнителя и активной диагностики.workboard_createсоздает карточку с необязательными родителями, tenant, Skills, доской, метаданными рабочей области, ключом идемпотентности, лимитом времени выполнения и бюджетом повторных попыток.workboard_linkсвязывает родительскую карточку с дочерней карточкой. Дочерние карточки остаются вtodo, пока каждый родитель не достигнетdone; затем продвижение dispatch перемещает их вready.workboard_claimназначает заявку на карточку вызывающему агенту и перемещает карточки backlog, todo или ready вrunning.workboard_heartbeatобновляет Heartbeat заявки во время более долгих запусков.workboard_releaseосвобождает заявку после завершения, паузы или передачи и может переместить карточку в следующий статус.workboard_completeиworkboard_block— это структурированные инструменты жизненного цикла для итоговых сводок, подтверждений, артефактов, манифестов созданных карточек и причин блокировки. Манифесты созданных карточек должны ссылаться на карточки, связанные обратно с завершенной карточкой, что не допускает фантомных дочерних карточек в сводках.workboard_attachment_add,workboard_attachment_readиworkboard_attachment_deleteхранят небольшие вложения карточек в состоянии SQLite этого Plugin, индексируют их на карточке и предоставляют их в контексте воркера.workboard_worker_logиworkboard_protocol_violationзаписывают строки журнала воркера и блокируют карточки, когда автоматизированный воркер останавливается без вызоваworkboard_completeилиworkboard_block.workboard_board_create,workboard_board_archiveиworkboard_board_deleteуправляют сохраняемыми метаданными доски, такими как отображаемое имя, описание, состояние архива и рабочая область по умолчанию.workboard_runsвозвращает сохраняемую историю попыток запуска, сохраненную на карточке.workboard_specifyпревращает черновую карточку triage или backlog в уточненную карточкуtodoи записывает сводку спецификации на карточке.workboard_decomposeраспределяет родительскую orchestration-карточку на связанные дочерние карточки, наследует метаданные доски и tenant и может завершить родителя с манифестом созданных карточек.workboard_notify_subscribe,workboard_notify_list,workboard_notify_events,workboard_notify_advanceиworkboard_notify_unsubscribeуправляют подписками на уведомления в состоянии Plugin. Чтение событий безопасно для повторного воспроизведения; инструмент advance перемещает долговечный курсор, чтобы вызывающие стороны могли возобновить работу без потери или повторного чтения завершенных, неудачных или устаревших событий карточек.workboard_boards,workboard_stats,workboard_promote,workboard_reassign,workboard_reclaim,workboard_comment,workboard_proof,workboard_unblockиworkboard_dispatchпозволяют агенту проверять пространства имен досок, просматривать статистику очередей, восстанавливать зависшую работу, добавлять заметки передачи, прикреплять ссылки на подтверждения или артефакты, возвращать заблокированную работу вtodoи подталкивать продвижение зависимостей или очистку устаревших заявок.
Карточки с заявкой отклоняют мутации через инструменты агента от других
агентов, если у вызывающей стороны нет токена заявки, возвращенного
workboard_claim. Операторы панели мониторинга по-прежнему используют обычную
поверхность RPC Gateway и могут восстанавливать или переназначать карточки.
Workboard хранит долговечные данные доски в принадлежащей Plugin реляционной базе данных SQLite в каталоге состояния OpenClaw. Доски, карточки, метки, события жизненного цикла, попытки запусков, комментарии, ссылки зависимостей, подтверждения, ссылки на артефакты, метаданные и содержимое вложений, диагностика, уведомления, журналы воркеров, состояние протокола и подписки сохраняются в таблицах Workboard вместо записей key-value Plugin. Экспорт карточки по-прежнему сохраняет повествование доски без встраивания содержимого blob вложений.
Установки, которые использовали Workboard в релизе .28, могут выполнить
openclaw doctor --fix, чтобы перенести поставлявшиеся legacy-пространства
имен состояния Plugin (workboard.cards, workboard.boards и
workboard.notify) в реляционную базу данных. Если присутствует legacy-пространство
имен workboard.attachments, doctor также переносит эти blob вложений.
Диагностика Workboard вычисляется из локальных метаданных карточек. Встроенные проверки отмечают назначенные карточки, которые ждут слишком долго, карточки running без недавнего Heartbeat, заблокированные карточки, требующие внимания, повторяющиеся сбои, карточки done без подтверждения и карточки running, у которых есть только свободная ссылка на сессию.
Dispatch намеренно локален для Gateway. Он не запускает произвольные процессы
операционной системы; обычные сессии subagent OpenClaw по-прежнему владеют
выполнением. Действие dispatch продвигает карточки с готовыми зависимостями,
записывает метаданные dispatch на готовые карточки, блокирует истекшие заявки
или запуски с тайм-аутом, помечает настроенные доской triage-карточки как
кандидатов на orchestration, затем назначает заявку на небольшой пакет готовых
карточек и запускает запуски воркеров через runtime subagent Gateway.
Назначенные карточки используют ключи сессий воркеров
agent:<id>:subagent:workboard-*; неназначенные карточки используют
неограниченные ключи subagent:workboard-*, чтобы Gateway по-прежнему
разрешал настроенного агента по умолчанию. Воркеры получают ограниченный
контекст карточки плюс токен заявки, который нужен им для Heartbeat, завершения
или блокировки карточки через инструменты Workboard.
Выбор воркеров dispatch
Каждый проход dispatch по умолчанию запускает не более трех воркеров. Готовые карточки упорядочиваются по приоритету, позиции и времени создания, затем фильтруются, чтобы избежать дублирующего активного владения. Dispatch запускает только одну карточку для данного владельца или агента в одном проходе и пропускает владельцев, у которых на доске уже есть работа running или review.
Архивированные карточки, карточки с активными заявками и карточки без статуса
ready не выбираются для запусков воркеров. На них все равно может повлиять
сторона dispatch, работающая с данными, когда применяются устаревшие заявки,
продвижение зависимостей или очистка тайм-аутов.
Prompt воркера и жизненный цикл
Prompt воркера включает заголовок карточки, ограниченные заметки и контекст,
назначенную доску и протокол воркера Workboard. Он также включает владельца
заявки и токен заявки, чтобы воркер мог вызвать workboard_heartbeat,
workboard_complete или workboard_block без перехода карточки под управление
другого участника.
Когда воркер успешно запускается, Workboard сохраняет на карточке ключ сессии, идентификатор запуска, движок, режим, метку модели, статус и журнал воркера. Ключ сессии детерминирован для доски и карточки, благодаря чему повторные dispatch направляются обратно в ту же линию воркера вместо создания несвязанных сессий.
Если воркер не может быть запущен после назначения заявки на карточку, Workboard блокирует карточку, очищает заявку, записывает сбой запуска и добавляет строку журнала воркера. Этот сбой виден в панели мониторинга, JSON CLI, инструментах агента и диагностике карточки.
Точки входа dispatch
Запуски воркеров для карточек ready могут происходить из:
- действия dispatch на панели мониторинга
openclaw workboard dispatch/workboard dispatchв канале с поддержкой команд
Все три точки входа используют runtime subagent Gateway, когда Gateway
доступен. У CLI есть один дополнительный fallback для оператора: если Gateway
офлайн или не предоставляет метод dispatch Workboard и явная цель --url или
--token не была указана, он выполняет dispatch только для данных по локальному
состоянию SQLite. Этот fallback может продвигать зависимости, очищать
устаревшие заявки и блокировать запуски с тайм-аутом, но не может запускать
воркеров.
Метаданные доски могут включать настройки orchestration, такие как
autoDecompose, autoDecomposePerDispatch, defaultAssignee и
orchestratorProfile. OpenClaw записывает намерение orchestration и
предоставляет его в контексте воркера; фактическая спецификация и декомпозиция
по-прежнему выполняются через обычные инструменты Workboard.
CLI и slash-команда
Plugin регистрирует корневую команду CLI:
openclaw workboard listopenclaw workboard create "Fix stale card lifecycle" --priority high --labels bug,workboardopenclaw workboard show <card-id>openclaw workboard dispatchopenclaw workboard dispatch вызывает запущенный Gateway, чтобы запуски воркеров использовали ту же среду выполнения субагентов, что и панель управления. Если Gateway недоступен, команда откатывается к диспетчеризации только по данным, чтобы повышение зависимостей, очистка устаревших заявок и блокировка по тайм-ауту всё равно могли выполняться. Ошибки аутентификации, разрешений и валидации по-прежнему отображаются как ошибки команды, как и сбои для явных целей --url или --token.
Slash-команда /workboard поддерживает такой же компактный путь оператора:
/workboard list, /workboard show <card-id>, /workboard create <title> и
/workboard dispatch. Список и просмотр — операции чтения для авторизованных
отправителей команд. Создание и диспетчеризация требуют статуса владельца в
чат-поверхностях или клиента Gateway с operator.write или operator.admin.
См. CLI Workboard, чтобы узнать о флагах команд, выводе JSON, резервном поведении Gateway, однозначной обработке префиксов идентификаторов, правилах выбора для диспетчеризации и устранении неполадок.
Синхронизация жизненного цикла сеанса
Карточки можно связывать с существующими сеансами панели управления или с сеансом, созданным при запуске работы из карточки. Связанные карточки показывают жизненный цикл сеанса прямо внутри: выполняется, устарел, связанный простаивает, готово, сбой или отсутствует.
Если связанный сеанс отсутствует, карточка остаётся связанной для контекста и по-прежнему предлагает элементы запуска, чтобы вы могли перезапустить работу в новом сеансе панели управления. Если активный связанный сеанс перестаёт сообщать о недавней активности, Workboard помечает карточку как устаревшую и сохраняет маркер в метаданных карточки, пока жизненный цикл не очистит его.
Вы также можете захватить существующий сеанс панели управления на вкладке «Сеансы» с помощью «Добавить в Workboard». Карточка связывается с этим сеансом, использует метку сеанса или недавний пользовательский запрос как заголовок и заполняет заметки недавним пользовательским запросом плюс последним ответом ассистента, когда доступна история чата.
Workboard отслеживает связанный сеанс, пока карточка всё ещё находится в активном рабочем состоянии:
- активный связанный сеанс ->
running - завершённый связанный сеанс ->
review - связанный сеанс со сбоем, принудительно остановленный, завершившийся по тайм-ауту или прерванный ->
blocked
Ручные состояния проверки имеют приоритет. Если вы перемещаете карточку в
review, blocked или done, Workboard перестаёт автоматически перемещать эту
карточку, пока вы не вернёте её в todo или running.
Рабочий процесс панели управления
- Откройте вкладку Workboard в Control UI.
- Создайте карточку с заголовком, заметками, приоритетом, метками, необязательным агентом и необязательным связанным сеансом.
- Или откройте «Сеансы» и выберите «Добавить в Workboard» для существующего сеанса.
- Перетащите карточку между колонками или сфокусируйте компактный элемент управления статусом на карточке и используйте его меню или ArrowLeft/ArrowRight.
- Запустите работу из карточки, чтобы создать или повторно использовать сеанс панели управления.
- Откройте связанный сеанс из карточки, пока агент работает.
- Позвольте синхронизации жизненного цикла переместить выполняемую работу на проверку или в блокировку, затем вручную переместите карточку в готово после принятия.
Запуск карточки использует обычные сеансы Gateway. Плагин Workboard хранит только метаданные карточек и ссылки; стенограмма разговора, выбор модели и жизненный цикл запуска остаются во владении обычной системы сеансов.
Используйте «Остановить» на активной связанной карточке, чтобы прервать
активный запуск сеанса. Workboard помечает эту карточку как blocked, чтобы она
оставалась видимой для последующих действий.
Новые карточки можно запускать из шаблонов Workboard для исправления ошибок, документации, релизов, проверок PR или работы с плагинами. Шаблоны заранее заполняют заголовок, заметки, метки и приоритет, а идентификатор выбранного шаблона сохраняется как метаданные карточки.
Разрешения
Плагин регистрирует RPC-методы Gateway в пространстве имён workboard.*:
workboard.cards.listтребуетoperator.readworkboard.cards.exportтребуетoperator.readworkboard.cards.diagnosticsтребуетoperator.readworkboard.cards.diagnostics.refreshтребуетoperator.write- чтение списка/получения вложений и событий уведомлений требует
operator.read - продвижение курсора уведомлений требует
operator.write - методы создания, обновления, перемещения, удаления, комментирования, связывания, связывания зависимостей, доказательств, артефактов,
добавления/удаления вложений, журнала воркера, нарушения протокола, заявки, Heartbeat,
релиза, завершения, блокировки, разблокировки, диспетчеризации, массовых операций и архивации требуют
operator.write
Браузеры, подключённые с доступом оператора только для чтения, могут просматривать доску, но не могут изменять карточки.
Конфигурация
Сегодня у Workboard нет конфигурации, специфичной для плагина. Включайте или отключайте его с помощью стандартной записи плагина:
{ plugins: { entries: { workboard: { enabled: true, config: {}, }, }, },}Снова отключите его с помощью:
openclaw plugins disable workboardopenclaw gateway restartУстранение неполадок
Вкладка сообщает, что Workboard недоступен
Проверьте политику плагинов:
openclaw plugins inspect workboard --runtime --jsonЕсли настроен plugins.allow, добавьте workboard в этот список разрешённых. Если
plugins.deny содержит workboard, удалите его перед включением плагина.
Карточки не сохраняются
Убедитесь, что подключение браузера имеет доступ operator.write. Операторские
сеансы только для чтения могут перечислять карточки, но не могут создавать,
редактировать, перемещать или удалять их.
Запуск карточки не открывает ожидаемый сеанс
Workboard создаёт связи с обычными сеансами панели управления. Проверьте идентификатор агента карточки и связанный сеанс, затем откройте представление «Сеансы» или «Чат», чтобы проверить фактическое состояние запуска.
Диспетчеризация не запускает воркера
Убедитесь, что есть хотя бы одна карточка ready без активной заявки:
openclaw workboard list --status readyЕсли CLI сообщает о диспетчеризации только по данным, запустите или перезапустите Gateway и повторите попытку. Диспетчеризация только по данным обновляет локальное состояние доски, но не может запускать запуски воркеров-субагентов.
Карточки также могут пропускаться, когда другая карточка для того же владельца или агента уже выполняется или ожидает проверки. Завершите, заблокируйте или освободите эту активную работу перед диспетчеризацией дополнительной работы для того же владельца.