> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Рядок меню

## Що показано

* Ми відображаємо поточний робочий стан агента в іконці рядка меню та в першому рядку стану меню.
* Стан працездатності приховано, доки робота активна; він повертається, коли всі сесії неактивні.
* Кореневе підменю «Контекст» містить нещодавні сесії замість того, щоб розгортати їх безпосередньо в кореневому меню.
* Блок «Nodes» у кореневому меню перелічує лише **пристрої** (спарені вузли через `node.list`), а не записи клієнтів/присутності.
* Кореневий розділ «Використання» з’являється під «Контекст», коли доступні знімки використання провайдера, а за ними, коли доступні, наведено деталі вартості використання.

## Модель станів

* Сесії: події надходять із `runId` (для окремого запуску) плюс `sessionKey` у payload. «Головна» сесія має ключ `main`; якщо його немає, ми повертаємося до сесії, яку було оновлено найнещодавніше.
* Пріоритет: головна сесія завжди перемагає. Якщо головна сесія активна, її стан показується негайно. Якщо головна сесія неактивна, показується найнещодавніше активна неголовна сесія. Ми не перемикаємося туди-сюди посеред активності; ми перемикаємося лише тоді, коли поточна сесія стає неактивною або головна сесія стає активною.
* Види активності:
  * `job`: високорівневе виконання команди (`state: started|streaming|done|error`).
  * `tool`: `phase: start|result` із `toolName` та `meta/args`.

## Перелік IconState (Swift)

* `idle`
* `workingMain(ActivityKind)`
* `workingOther(ActivityKind)`
* `overridden(ActivityKind)` (налагоджувальне перевизначення)

### ActivityKind → гліф

* `exec` → 💻
* `read` → 📄
* `write` → ✍️
* `edit` → 📝
* `attach` → 📎
* типово → 🛠️

### Візуальне зіставлення

* `idle`: звичайний персонаж.
* `workingMain`: бейдж із гліфом, повне тонування, анімація ніг «працює».
* `workingOther`: бейдж із гліфом, приглушене тонування, без метушні.
* `overridden`: використовує вибраний гліф/тонування незалежно від активності.

## Підменю «Контекст»

* Кореневе меню показує один рядок «Контекст» із кількістю/станом сесій і відкриває підменю.
* Заголовок підменю «Контекст» показує кількість активних сесій за останні 24 години.
* Кожен рядок сесії зберігає свою смугу токенів, вік, попередній перегляд, thinking/verbose, а також дії скидання, ущільнення й видалення.
* Повідомлення про завантаження, від’єднання та помилки завантаження сесій з’являються всередині підменю «Контекст».
* Використання провайдера та деталі вартості використання залишаються на кореневому рівні під «Контекст», щоб їх можна було швидко переглянути без відкриття підменю.

## Текст рядка стану (меню)

* Поки робота активна: `<Session role> · <activity label>`
  * Приклади: `Main · exec: pnpm test`, `Other · read: apps/macos/Sources/OpenClaw/AppState.swift`.
* Коли неактивно: повертається до зведення працездатності.

## Приймання подій

* Джерело: події control-channel `agent` (`ControlChannel.handleAgentEvent`).
* Розібрані поля:
  * `stream: "job"` із `data.state` для запуску/зупинки.
  * `stream: "tool"` із `data.phase`, `name`, необов’язковими `meta`/`args`.
* Мітки:
  * `exec`: перший рядок `args.command`.
  * `read`/`write`: скорочений шлях.
  * `edit`: шлях плюс виведений вид зміни з `meta`/кількості рядків diff.
  * запасний варіант: назва інструмента.

## Налагоджувальне перевизначення

* Settings ▸ Debug ▸ селектор «Перевизначення іконки»:
  * `System (auto)` (типово)
  * `Working: main` (для кожного виду інструмента)
  * `Working: other` (для кожного виду інструмента)
  * `Idle`
* Зберігається через `@AppStorage("iconOverride")`; зіставляється з `IconState.overridden`.

## Контрольний список тестування

* Запустіть завдання головної сесії: перевірте, що іконка перемикається негайно, а рядок стану показує мітку головної сесії.
* Запустіть завдання неголовної сесії, коли головна неактивна: іконка/стан показують неголовну сесію; залишаються стабільними, доки вона не завершиться.
* Запустіть головну сесію, поки інша активна: іконка миттєво перемикається на головну.
* Швидкі сплески інструментів: переконайтеся, що бейдж не мерехтить (TTL-пільга для результатів інструментів).
* Рядок працездатності знову з’являється, щойно всі сесії стають неактивними.

## Пов’язане

* [застосунок macOS](/uk/platforms/macos)
* [Іконка рядка меню](/uk/platforms/mac/icon)
