---
read_when:
    - Зміна поведінки значка в рядку меню
summary: Стани та анімації значка в рядку меню для OpenClaw на macOS
title: Значок у рядку меню
x-i18n:
    generated_at: "2026-04-24T04:16:47Z"
    model: gpt-5.4
    provider: openai
    source_hash: 6900d702358afcf0481f713ea334236e1abf973d0eeff60eaf0afcf88f9327b2
    source_path: platforms/mac/icon.md
    workflow: 15
---

# Стани значка в рядку меню

Автор: steipete · Оновлено: 2025-12-06 · Область: застосунок macOS (`apps/macos`)

- **Бездіяльність:** Звичайна анімація значка (кліпання, інколи похитування).
- **Призупинено:** Елемент статусу використовує `appearsDisabled`; без руху.
- **Голосовий тригер (великі вуха):** Детектор голосового пробудження викликає `AppState.triggerVoiceEars(ttl: nil)`, коли чує стоп-слово, утримуючи `earBoostActive=true`, поки захоплюється висловлювання. Вуха збільшуються (1.9x), отримують круглі отвори у вухах для кращої читабельності, а потім зменшуються через `stopVoiceEars()` після 1 с тиші. Спрацьовує лише з внутрішнього голосового конвеєра застосунку.
- **Робота виконується (агент запущений):** `AppState.isWorking=true` керує мікрорухом «метушня хвоста/лап»: швидше ворушіння лап і невелике зміщення, поки триває робота. Наразі перемикається навколо запусків агентів WebChat; додайте таке саме перемикання навколо інших довгих завдань, коли підключатимете їх.

Точки підключення

- Голосове пробудження: runtime/tester викликає `AppState.triggerVoiceEars(ttl: nil)` при спрацюванні та `stopVoiceEars()` після 1 с тиші, щоб відповідати вікну захоплення.
- Активність агента: установлюйте `AppStateStore.shared.setWorking(true/false)` навколо проміжків роботи (це вже зроблено у виклику агента WebChat). Робіть ці проміжки короткими й скидайте стан у блоках `defer`, щоб уникнути завислих анімацій.

Форми й розміри

- Базовий значок малюється в `CritterIconRenderer.makeIcon(blink:legWiggle:earWiggle:earScale:earHoles:)`.
- Типовий масштаб вух — `1.0`; голосове підсилення встановлює `earScale=1.9` і перемикає `earHoles=true`, не змінюючи загальний кадр (шаблонне зображення 18×18 pt, відрендерене в Retina backing store 36×36 px).
- Метушня використовує ворушіння лап до ~1.0 з невеликим горизонтальним сіпанням; вона додається до будь-якого наявного похитування в стані бездіяльності.

Примітки щодо поведінки

- Немає зовнішнього перемикача CLI/broker для вух/стану роботи; залишайте це внутрішнім механізмом власних сигналів застосунку, щоб уникнути випадкового «миготіння».
- Тримайте TTL коротким (&lt;10s), щоб значок швидко повертався до базового стану, якщо завдання зависне.

## Пов’язане

- [Рядок меню](/uk/platforms/mac/menu-bar)
- [Застосунок macOS](/uk/platforms/macos)
