claude-code-notifier
jak to działa poradniki faq
◐Polski
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
Zacznij
Wszystkie poradniki

Powiadomienia Claude Code na macOS

Zaktualizowano 31 października 2026 · 6 min czytania
na tej stronie 01Co Claude Code robi sam z siebie 02Hook powiadomień z osascript 03Dowiedz się od razu, gdy Claude skończy 04Pokaż prawdziwą treść komunikatu 05terminal-notifier: kliknij, by wrócić do terminala 06Skupienie i Nie przeszkadzać 07Gdzie pasuje Claude Code Notifier 08FAQ

Na macOS Claude Code sam wysyła powiadomienie systemowe w Ghostty, Kitty i iTerm2 (w iTerm2 trzeba włączyć ustawienia alertów), ale Apple Terminal i większość innych terminali nie dostaje nic. Żeby mieć powiadomienie w dowolnym terminalu, dodaj do ~/.claude/settings.json hook Notification, który uruchamia osascript -e 'display notification ...', oraz hook Stop, jeśli chcesz też wiedzieć, kiedy dokładnie Claude kończy. Zezwól na powiadomienia dla Edytora skryptów w Ustawieniach systemowych, inaczej polecenie osascript po cichu się nie powiedzie.

01Co Claude Code robi sam z siebie

Claude Code wysyła zdarzenie powiadomienia, gdy kończy zadanie albo czeka na zgodę, a ty wyglądasz na nieobecnego przy terminalu. To, co zobaczysz, zależy od terminala, zgodnie z przewodnikiem po terminalach od Anthropic:

TerminalDomyślne zachowanie
Ghostty, KittyPowiadomienie macOS
iTerm2Powiadomienie macOS, po włączeniu ustawień alertów
Apple TerminalBrak dźwięku. Co najwyżej cichy dzwonek, widoczny jako mignięcie okna lub podskok ikony w Docku, jeśli profil na to pozwala
Inne (terminal VS Code, Warp itd.)Nic

W iTerm2 otwórz Settings > Profiles > Terminal, zaznacz Notification Center Alerts, potem kliknij Filter Alerts i włącz Send escape sequence-generated alerts. Sprawdź też, czy iTerm2 może wysyłać powiadomienia w Ustawieniach systemowych > Powiadomienia.

W Apple Terminal możesz mieć przynajmniej dźwięk. Ustaw "preferredNotifChannel": "terminal_bell" w ~/.claude/settings.json i włącz Audible bell w Settings > Profiles > Advanced. Szczegóły znajdziesz w przewodniku o dzwonku terminala.

Wbudowany alert ma ograniczenia. Odpala się tylko, gdy Claude Code uzna, że cię nie ma, mówi jedynie, że coś się stało, i nigdy nie wychodzi poza komputer.

02Hook powiadomień z osascript

Hook działa w każdym terminalu, także w terminalach IDE. To przykład dla macOS z przewodnika po hookach od Anthropic. Dodaj go do ~/.claude/settings.json, zostawiając pozostałe klucze:

{
  "hooks": {
    "Notification": [
      {
        "matcher": "",
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Claude Code needs your attention\" with title \"Claude Code\"'"
          }
        ]
      }
    ]
  }
}

Wpisz /hooks w Claude Code, żeby sprawdzić, czy jest na liście pod Notification.

Uprawnienie dla Edytora skryptów

osascript wysyła powiadomienia jako Edytor skryptów. Jeśli Edytor skryptów nie ma uprawnień do powiadomień, polecenie po cichu się nie udaje, a macOS o nic nie pyta. Uruchom raz w Terminalu:

osascript -e 'display notification "test"'

Za pierwszym razem nic się nie pojawi. Otwórz Ustawienia systemowe > Powiadomienia, znajdź Edytor skryptów i włącz Zezwalaj na powiadomienia. Uruchom polecenie ponownie i powinno pojawić się testowe powiadomienie.

Kiedy się odpala

Pusty matcher łapie każdy typ powiadomienia. Najważniejsze są dwa: permission_prompt (Claude czeka około sześciu sekund na zgodę, a ty nic nie wpisałeś) i idle_prompt (Claude skończył około 60 sekund temu i od tamtej pory nic nie wpisałeś). Przewodnik po Notification hook opisuje wszystkie typy i ich czasy.

03Dowiedz się od razu, gdy Claude skończy

idle_prompt czeka minutę. Żeby dostać informację natychmiast, dodaj hook Stop, który uruchamia się, gdy Claude kończy swoją turę. Stop nie przyjmuje matchera:

{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "command",
            "command": "osascript -e 'display notification \"Claude has finished\" with title \"Claude Code\" sound name \"Glass\"'"
          }
        ]
      }
    ]
  }
}

sound name przyjmuje dowolny dźwięk z /System/Library/Sounds, np. Glass, Ping czy Hero. Jeśli chcesz tylko dźwięk, jako polecenie wystarczy afplay /System/Library/Sounds/Glass.aiff. Więcej o tym zdarzeniu w przewodniku po Stop hook.

04Pokaż prawdziwą treść komunikatu

Hooki dostają JSON na standardowym wejściu. Wejście Notification ma pole message, np. "Claude needs your permission". Mały skrypt może wstawić ten tekst do powiadomienia. Zapisz to jako ~/.claude/hooks/notify-mac.sh:

#!/bin/bash
msg=$(jq -r '.message // "Claude Code needs your attention"')
osascript -e 'on run argv' \
  -e 'display notification (item 1 of argv) with title "Claude Code"' \
  -e 'end run' "$msg"

Przekazanie tekstu jako argumentu, a nie wewnątrz stringa AppleScript, sprawia, że cudzysłowy w komunikacie nie zepsują polecenia. Nadaj prawa wykonywania przez chmod +x ~/.claude/hooks/notify-mac.sh i ustaw polecenie hooka na ~/.claude/hooks/notify-mac.sh. Skrypt wymaga jq (brew install jq, jeśli jq --version zwraca błąd).

05terminal-notifier: kliknij, by wrócić do terminala

Kliknięcie powiadomienia z osascript otwiera Edytor skryptów, a to nie jest miejsce, do którego chcesz trafić. terminal-notifier pozwala wybrać aplikację, która wyskoczy na wierzch:

brew install terminal-notifier
terminal-notifier -title "Claude Code" -message "Claude has finished" -sound default -activate com.googlecode.iterm2

Użyj com.apple.Terminal dla Apple Terminal albo bundle ID swojego edytora. To samo polecenie wpisz w pole command hooka. Za pierwszym razem zezwól na powiadomienia dla terminal-notifier w Ustawieniach systemowych.

06Skupienie i Nie przeszkadzać

Wszystko to są zwykłe powiadomienia macOS, więc tryb Skupienia może je ukryć. Jeśli znikają w określonych porach, sprawdź Ustawienia systemowe > Skupienie i zezwól aplikacji, która je wysyła (Edytor skryptów, terminal-notifier lub twój terminal). Jeśli wolisz powiadomienia respektujące twoje własne godziny, zobacz godziny ciszy i Nie przeszkadzać.

07Gdzie pasuje Claude Code Notifier

Powyższe hooki dobrze się sprawdzają, jeśli siedzisz przy Macu i chcesz tylko szturchnięcia. Przestają wystarczać, gdy odejdziesz, bo powiadomienie na Macu nie dosięgnie cię w kuchni i nie pozwoli odpowiedzieć Claude.

Claude Code Notifier to niezależne narzędzie (od TouchTap, nie od Anthropic) oparte na tych samych hookach. Jego darmowe narzędzie CLI, ccn, działa na Macu, Windows i Linux. Zainstaluj je na Macu poleceniem:

curl -fsSL https://claudecodenotifier.com/install.sh | sh

albo przez Homebrew: brew trust --formula touch-tap/tap/ccn && brew install touch-tap/tap/ccn. Dodaje swoje wpisy hooków do ~/.claude/settings.json, resztę pliku zostawia w spokoju i robi kopię zapasową. Od tej pory pokazuje powiadomienie macOS, gdy Claude skończy, potrzebuje zgody lub zadaje pytanie — bez sieci i bez telefonu.

Jeśli sparujesz telefon z iPhone lub Android, te same zdarzenia przychodzą jako powiadomienia push, a z telefonu możesz zezwolić lub odmówić, wybrać odpowiedź na pytanie Claude albo wysłać kolejne polecenie. Jeśli pisałeś coś w ciągu ostatnich 30 sekund, terminal pyta jak zwykle i nic nie czeka na telefonie. Zobacz parowanie telefonu i stronę ccn. Aplikacje mobilne wymagają subskrypcji lub zakupu dożywotniego; zobacz cennik.

Jeśli dodajesz ccn, usuń własne hooki z osascript, inaczej zobaczysz dwa powiadomienia na każde zdarzenie. Jest też starsza aplikacja w pasku menu Maca; nie uruchamiaj jej razem z ccn na tym samym Macu.

08FAQ

Dlaczego mój hook z osascript nic nie pokazuje?

Najczęściej Script Editor nie ma uprawnień do powiadomień, więc macOS po cichu odrzuca powiadomienie, bez żadnego błędu. Uruchom raz osascript -e 'display notification "test"', a potem zezwól na Script Editor w Ustawieniach systemowych > Powiadomienia. Jeśli dalej nie działa, sprawdź, czy nie jest włączony tryb skupienia i czy /hooks pokazuje twój hook.

Czy Claude Code wysyła powiadomienia w macOS bez żadnej konfiguracji?

Tak, w Ghostty i Kitty, a w iTerm2 po włączeniu alertów Centrum powiadomień. Apple Terminal i terminale w IDE domyślnie nie pokazują powiadomień na pulpicie, więc tam użyj hooka albo ccn.

Jak dostać powiadomienie od razu, gdy Claude skończy, a nie minutę później?

Użyj hooka Stop. Powiadomienie idle_prompt pojawia się dopiero ok. 60 sekund po tym, jak Claude skończy, i tylko wtedy, gdy nic nie wpisałeś, a Stop odpala się na końcu każdej tury.

Czy mogę usłyszeć dźwięk zamiast banera?

Tak. Ustaw afplay /System/Library/Sounds/Glass.aiff jako komendę hooka albo dodaj sound name "Glass" do komendy osascript, żeby mieć jedno i drugie.

Czy mogę zatwierdzić uprawnienie z powiadomienia w macOS?

Nie przez osascript ani terminal-notifier: one tylko wyświetlają tekst. Do odpowiadania na prośby o uprawnienia z hooka potrzebujesz zdarzenia PermissionRequest; zobacz odpowiadanie na prośby o uprawnienia z hooka albo zatwierdzaj z telefonu przez Claude Code Notifier.

Claude Code Notifier Dostawaj push na telefon, gdy Claude Code skończy pracę albo czegoś od ciebie potrzebuje, a potem zatwierdzaj, odrzucaj lub odpowiadaj prosto stamtąd. Narzędzie wiersza poleceń ccn jest darmowe na Maca, Windows i Linux.
Pobierz na iOS Pobierz na Androida Zainstaluj ccn

Powiązane poradniki

  • Notification hook w Claude Code: kiedy się uruchamia i jak go używaćKiedy uruchamia się Notification hook w Claude Code, co oznaczają permission_prompt i idle_prompt, jakie dane dostaje i dlaczego czeka przed uruchomieniem.
  • Stop hook w Claude Code: uruchom coś, gdy Claude skończyJak działa Stop hook w Claude Code, jakie dane dostaje, jak uruchomić komendę, gdy Claude skończy, i jak bezpiecznie sprawić, żeby Claude pracował dalej.
  • Wbudowane powiadomienia Claude Code: dzwonek terminala i preferredNotifChannelJak działają wbudowane alerty Claude Code, co robi każda wartość preferredNotifChannel i jak skonfigurować iTerm2, Apple Terminal, Kitty, Ghostty i tmux.
  • Powiadomienia Claude Code nie działają? Lista kontrolnaHooki się nie odpalają albo nie dostajesz alertu, gdy Claude Code kończy pracę? Przejdź tę listę kontrolną – od /hooks i logu debugowania po ccn doctor i ccn test.
claude-code-notifier

Claude Code Notifier jest niezależną aplikacją podmiotu trzeciego. Nie jest powiązana z Anthropic, PBC, ani przez nią zatwierdzona lub sponsorowana. „Claude” i „Claude Code” są znakami towarowymi Anthropic, PBC.

aplikacje Aplikacja na iOS Aplikacja na Androida ccn dla macOS, Windows i Linuksa Wszystkie poradniki
informacje prawne Polityka prywatności Regulamin Inne języki © 2026 touchtap. Wszelkie prawa zastrzeżone. TouchTap Ltd jest zarejestrowana w Anglii i Walii, numer spółki 13942589.