К основному содержимому
Vibe Console

Уведомления Claude Code на Mac: как узнать, что агент готов

Как получить уведомление macOS, когда Claude Code или Codex закончил работу или ждёт ввода: хуки Claude Code, notify в Codex или звуковые сигналы Vibe Console.

Nes

Nes

@nesdesignco

· 3 мин чтения

Вырез MacBook с надписью «Claude Code finished» для Terminal 2 над вкладками терминала с точками статуса: работает, простаивает, ждёт

Ради долгих прогонов Claude Code и существует: отдали задачу — и занимаетесь своими делами. Подвох в том, чтобы понять, когда вернуться. Проверяете слишком часто — теряете сэкономленное время. Слишком редко — агент уже давно ждёт разрешения со второй минуты.

На Mac это можно решить тремя способами: от самодельного хука до встроенной функции.

Два события, о которых стоит знать

Каким бы способом вы ни пользовались, узнавать нужно о двух разных моментах:

  1. Готово. Агент закончил свой ход и ждёт следующего сообщения.
  2. Нужен ввод. Агент остановился посреди задачи — обычно чтобы спросить разрешение выполнить команду или изменить файл.

Второе важнее. Агент, застрявший на запросе разрешения, вообще не двигается.

Способ 1. Хуки Claude Code

Claude Code умеет выполнять shell-команду при определённых событиях. Два события хуков покрывают оба момента:

  • Stop срабатывает, когда Claude закончил отвечать.
  • Notification срабатывает, когда Claude нужно ваше внимание: запрос разрешения или долгое ожидание ввода.

Добавьте их в ~/.claude/settings.json (для всех проектов) или в .claude/settings.json конкретного проекта. В примере используется osascript, который идёт в комплекте с macOS:

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Task finished\" with title \"Claude Code\" sound name \"Glass\"'"
          }
        ]
      }
    ],
    "Notification": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Waiting for your input\" with title \"Claude Code\" sound name \"Funk\"'"
          }
        ]
      }
    ]
  }
}

Перезапустите Claude Code и проверьте на короткой задаче. В первый раз macOS может спросить, разрешить ли «Редактору скриптов» показывать уведомления.

Ограничения этого способа: из уведомления не понять, из какого проекта или терминала оно пришло, клик по нему никуда не ведёт, а для каждого другого агента нужна своя похожая настройка. Актуальный список событий смотрите в документации по хукам Claude Code.

Способ 2. notify в Codex

Codex CLI умеет запускать программу после каждого хода агента. В ~/.codex/config.toml задайте в notify команду; Codex передаст ей JSON с описанием события:

notify = ["osascript", "-e", "display notification \"Codex finished\" with title \"Codex\""]

Свежие версии Codex поддерживают и хуки, включая событие Stop; они настраиваются в hooks.json или в таблице [hooks] в config.toml. Параметры меняются от версии к версии, поэтому сверяйтесь с документацией по хукам Codex для своей.

Способ 3. Встроено в Vibe Console

Vibe Console следит за каждым терминалом с агентом — для всех восьми поддерживаемых агентов и без всякой настройки:

  • Точка статуса на каждой вкладке показывает, работает агент или простаивает, так что сетку агентов можно прочитать с одного взгляда.
  • Когда агент закончил, приложение проигрывает звук (по умолчанию Glass) и ненадолго раскрывает вырез MacBook на этой сессии, показывая, какой это агент и терминал.
  • Когда агент остановился и ждёт вас, звучит другой сигнал (по умолчанию Funk), так что «готово» и «застрял» различаются, даже не глядя на экран.
  • Оба звука настраиваются, их можно и выключить.

Ещё приложение присылает уведомление macOS, когда расход Claude Code или Codex переходит 80% и 100% окна. Подробнее — в статье о лимитах Claude Code.

Больше всего пользы, когда агентов несколько. См. статью о том, как запускать несколько агентов Claude Code параллельно.

Что выбрать

Хуки / notify Vibe Console
Стоимость Бесплатно Входит в приложение
Настройка Для каждого агента, JSON или TOML Не нужна
Отличает «готово» от «застрял» Да, двумя хуками Да, двумя звуками
Показывает, какой терминал Нет Да, в вырезе
Работает для всех восьми агентов Только для тех, где есть хуки Да

Если вы запускаете одну сессию Claude Code за раз, хуков достаточно. Если агентов несколько и проектов несколько, больше всего времени сэкономит рабочее пространство, которое знает, какой терминал какой.

Частые вопросы

Почему не срабатывает хук Claude Code?

Проверьте, что JSON валиден, файл лежит в правильном месте и вы перезапустили Claude Code. Выполните команду osascript в терминале отдельно, чтобы убедиться, что уведомления разрешены.

Можно ли получать уведомления на телефон?

Хуки могут вызывать любую команду, в том числе push-сервис. А ещё Claude Code поддерживает удалённое управление из своего мобильного приложения, так что проверить сессию можно и вдали от рабочего места.

Попробуйте встроенные звуковые сигналы бесплатно 14 дней: скачать Vibe Console.

Соберите всех агентов в одном окне.

14 дней бесплатно. Дальше $4.99 в месяц или $39.99 в год.