Перейти к основному содержимому

Управление флотом — как наблюдать за агентами (Штаб агентов)

Когда VibeOS обращается за помощью к специалистам (delegate_task) или запускает долговременных воркеров на доске Канбан, Управление флотом (в русском интерфейсе: Штаб агентов) становится диспетчерской панелью: вы видите, кто работает, что делает, и можете ставить на паузу, останавливать или одобрять действия, не открывая терминал.

Эта страница — экскурсия «для начинающих». О механике порождения дочерних агентов см. Делегирование. О перезапускаемой многопрофильной работе — Канбан. Полное описание работы команды: Как запустить команду агентов.

Установочный пакет (≤15 мин): vibeos pack apply multiagent-memory --apply, затем vibeos multiagent-memory doctor.

Открыть панель​

Настольное приложение: откройте Агенты / Управление флотом / Штаб агентов из сессионного хрома (там же, где находится индикатор «N агентов запущено»).

Вы должны увидеть:

  1. Краткую легенду ролей (портреты).
  2. Ожидает вашего OK — одобрение опасных команд + доска «Нужен человек» (CAPTCHA / assignee=human).
  3. Воркеры Канбана — процессы ОС, закреплённые за активной доской (переживают перезапуск приложения).
  4. Агенты сессии — живые дочерние процессы delegate_task для текущего процесса (завершаются при выходе из приложения).
  5. Сегодня в штабе — объединённая временная шкала событий доски, недавних делегирований и последних запусков cron (также vibeos kanban timeline).

Если всё тихо, портрет штаба и сообщение «Флот простаивает» означают, что сейчас ничего не делегировано — на временной шкале всё равно может отображаться более ранняя активность.

Роли (кто есть кто)​

Флот определяет роль из текста цели агента и показывает портрет:

РольТипичная работа
ОркестраторПланирование / разветвление / перепланирование
ИсследовательПоиск, источники, сводки
СтроительКод, патчи, реализация
КритикПроверка, поиск уязвимостей
КреативщикДизайн / изображения / тексты
ОператорОперации, CAPTCHA / передача человеку, входящие Ожидает вашего OK
АрхивариусПамять / заметки / долговременные факты — см. Постоянная память
НаблюдательМониторинг, пульс, оповещения (Режим наблюдателя)

Портреты поставляются с настольным приложением в папке agent-roster/. Планировочные мастер-файлы находятся в репозитории по пути docs/plans/assets/agent-roster/.

Дерево команды​

Когда у Оркестратора есть дочерние агенты, Флот показывает компактное Дерево команды (глубина + роль + цель). Конфигурация по умолчанию сохраняет плоскую вложенность (delegation.max_spawn_depth: 1). Увеличивайте глубину только когда намеренно хотите получить цепочку Оркестратор → лист.

Прямая трансляция наблюдателя​

Разверните карточку агента, чтобы увидеть последние строки инструментов / прогресса / размышлений — достаточно для беглого взгляда («ищет страницы с ценами») без погружения в логи. Откройте прямой просмотр, когда у дочернего агента есть собственное окно сессии.

Опциональная полоска стоимости spectator (длительность / tools / tokens / USD) под карьерой на Live-карточках включается через display.fleet.spectator_cost. Берутся уже стримящиеся метрики — без новой телеметрии и без правок промпта mid-chat. По умолчанию выкл., чтобы штаб оставался читаемым.

Элементы управления диспетчера​

ЭлементЧто делает
Приостановить новые порожденияБлокирует новые дочерние процессы delegate_task. Запущенные агенты продолжают работу.
Возобновить порожденияСнова разрешает новые дочерние процессы.
Остановить (на карточке)Просит этого подагента прерваться на следующей безопасной границе.
Одобрить один раз / ОтклонитьТо же одобрение шлюза, что и в чат-ленте — используйте, когда опасная команда заблокирована.

Пауза глобальна для процесса; остановка — для каждого дочернего агента. Ни то, ни другое не заменяет убийство PID воркера Канбана — используйте CLI Канбана / панель управления для долговременных операций с доской.

Карьера агента (миссии и доверие)​

На карточке Флота может быть тихая полоска карьеры: сколько раз агент успешно закончил работу, сколько раз провалился, и заголовок последней миссии — чтобы оценить доверие без логов.

Пример: 3 ✓ · 1 ✗ · last: Ship login.

Лист карьеры: нажмите полоску (или Career на карточке). Там wins/fails, опционально XP/уровень, последняя миссия и короткий список недавних.

Verify memory в листе — кнопки local и Verify (research); обе только для просмотра, в Core ничего не пишут. Research добавляет offline claims-eval поверх локальных эвристик. Включается через memory.career_critique.enabled (по умолчанию выкл.). Живой web-retrieve (ограниченный Research Pro quick) — opt-in через memory.career_critique.allow_network (по умолчанию false, только config, без тогла в Settings).

XP и «мозг» чата: при включённом XP подсказки уровня/навыков действуют только на следующей сессии. Карьера не переписывает system prompt посреди чата (кэш промпта остаётся валидным).

Переключатели карьеры (config.yaml)​

КлючПо умолчаниюСмысл
display.fleet.career_statstrueПолоска ✓/✗ / last mission + лист карьеры
display.fleet.career_xpfalseXP/уровень; влияние на следующую сессию (dogfood)
display.fleet.pixel_rosterfalseПиксельные спрайты на карточках (иначе / без арта — PNG)
display.fleet.spectator_costfalseДлительность / tools / tokens / USD на Live-карточках (Settings → Штаб)
memory.career_critique.enabledfalseКнопка Verify memory в листе карьеры
memory.career_critique.require_approvaltrueКарантин перед promote в Core
memory.career_critique.allow_networkfalseOpt-in живой Research Pro retrieve при Verify (research); только config

По умолчанию: stats вкл.; XP, critique, pixel roster и spectator cost выкл. Секреты — в .env; это только поведенческие флаги.

Линзы штаба, отчёт и research-миссия​

В Desktop Штаб можно сузить roster, не трогая агента mid-chat:

ЛинзаПоказывает
ВсеInbox + live subagents + Kanban workers
Нужно вамApprovals, handoff с доски, Work waiting (если unified)
LiveАгенты в сессии / promote-подсказки
DurableKanban-воркеры на активной доске

Отчёт штаба (сворачиваемый) — wins/fails/blocked карьеры + здоровье доски за окно (display.fleet.report_days, по умолчанию 7). Copy → Markdown для ops. Только наблюдение.

Research-миссия появляется, если на доске есть research swarm (сбор → критика → синтез): статусы стадий, current_step ledger и свежие находки Board KB. Без новых model tools.

Переключатели вида (config.yaml)​

КлючПо умолчаниюСмысл
display.fleet.densitycomfortablecomfortable | compact
display.fleet.attention_unifiedtrueОдин inbox: approvals + Kanban human + Work waiting
display.fleet.report_days7Окно отчёта штаба (1–30)

Долгие задачи: продвижение на Канбан​

Фоновый delegate_task локальен для процесса. Если карточка работает долго, Флот показывает подсказку о продвижении (по умолчанию после delegation.promote_hint_after_seconds: 600) на Live-карточке и баннером — в Desktop нажмите Promote to Kanban, либо используйте CLI ниже.

Опциональная долговечность: установите delegation.auto_promote_after_seconds в положительное число (по умолчанию 0 = выключено), чтобы автоматически создавать задачу Канбана с целью + пакетом контекста, когда фоновое асинхронное делегирование превышает этот возраст. Desktop promote и CLI идут одним путём (kanban.from_delegation / vibeos kanban from-delegation) и не мьютят и не переписывают чат.

Продвижение вручную из терминала:

vibeos kanban from-delegation --title "Продолжить исследование" --goal "…" \
--context "ограничения…" --summary "частичные результаты…" \
[--ledger-file progress-ledger.md]

Затем ведите блокнот в стиле Magentic с навыком progress-ledger:

vibeos kanban ledger <task_id> --set progress-ledger.md

См. также: Канбан vs delegate_task.

Ручки конфигурации (опционально)​

В config.yaml в разделе delegation::

КлючПо умолчаниюЗначение
max_spawn_depth1Глубина вложенности (1 = плоская)
promote_hint_after_seconds600Порог баннера Флота (0 отключает)
context_packageвключеноСтруктурированное краткое описание для дочерних агентов (не полная стенограмма родителя)

Секреты остаются в .env; это поведенческие настройки в config.yaml.

Сегодня в штабе (временная шкала)​

Не LangSmith/trace explorer — короткие предложения с аватарами из списка:

vibeos kanban timeline --hours 24
# или JSON / RPC: kanban.timeline

Источники: task_events Канбана, внутрипроцессные асинхронные делегирования, last_run_at cron. Пульс и свободные комментарии отфильтровываются.

Офлайн-проверки (для разработчиков)​

Из копии репозитория:

bash scripts/smoke-fleet-control.sh
bash scripts/smoke-multiagent-memory-golden.sh # G1–G12 + Memory OS

Это проверяет ресурсы списка, progress-ledger, from-delegation и контракты золотых задач без открытия Electron.

Связанные темы​