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 nie działają? Lista kontrolna

Zaktualizowano 31 października 2026 · 7 min czytania
na tej stronie 011. Sprawdź, czy Claude Code załadował hook 022. Zaakceptuj zaufanie do workspace'u 033. Upewnij się, że zdarzenie odpala się wtedy, kiedy myślisz 044. Uruchom polecenie hooka samodzielnie 055. Przeczytaj log debugowania 066. Sprawdź system operacyjny 07Jeśli używasz Claude Code Notifier 08FAQ

Gdy powiadomienia Claude Code przestają działać, przyczyna to prawie zawsze jedna z czterech rzeczy: hook nie jest załadowany, hook działa, ale kończy się błędem, zdarzenie, na którym polegasz, nie odpala się wtedy, kiedy myślisz, albo system operacyjny ukrywa alert. Uruchom /hooks w Claude Code, żeby zobaczyć, co jest załadowane, odpal sesję z claude --debug, żeby sprawdzić, co faktycznie zrobił każdy hook, a potem sprawdź ustawienia powiadomień na komputerze lub telefonie. Jeśli używasz Claude Code Notifier, ccn doctor i ccn test załatwiają większość tego dwoma poleceniami.

Poniższa lista idzie od najczęstszej przyczyny do najrzadszej. Działa na Macu, Windows i Linux.

011. Sprawdź, czy Claude Code załadował hook

Wpisz /hooks w prompcie Claude Code. To przeglądarka (tylko do odczytu) wszystkich hooków załadowanych przez Claude Code, z oznaczeniem, skąd każdy pochodzi: ustawienia użytkownika, projektu, lokalne, plugin lub bieżąca sesja. Wybierz hook, żeby zobaczyć dokładne polecenie i plik, w którym jest zdefiniowany.

Jeśli twojego hooka nie ma na liście:

  • JSON jest niepoprawny. Pliki ustawień to ścisły JSON. Przecinek na końcu albo komentarz // psuje plik, a Claude Code zgłasza Settings Error przy następnym starcie. Uruchom claude doctor, żeby zobaczyć wpisy odrzucone przez Claude Code.
  • Plik jest w złym miejscu. Osobiste hooki trafiają do ~/.claude/settings.json (na Windows: %USERPROFILE%\.claude\settings.json). Hooki projektu trafiają do .claude/settings.json w projekcie. Uruchom /status i sprawdź linię Setting sources, żeby zobaczyć, które pliki się załadowały.
  • Nazwa zdarzenia jest błędna. Nazwy zdarzeń rozróżniają wielkość liter: Notification, Stop, PermissionRequest. Nieznana nazwa pojawia się jako Settings Warning i jest pomijana.
  • Hooki są wyłączone. "disableAllHooks": true w dowolnym pliku ustawień wyłącza wszystkie hooki. Jeśli /hooks pokazuje Only hooks from managed settings run here, twoja organizacja ustawiła allowManagedHooksOnly i twoje własne hooki nie zadziałają.
  • Zmiana nie została wychwycona. Claude Code zwykle sam przeładowuje ustawienia. Jeśli hook nie pojawi się po kilku sekundach, zrestartuj sesję.

022. Zaakceptuj zaufanie do workspace'u

W sesji interaktywnej Claude Code wstrzymuje hooki ze wszystkich plików ustawień, łącznie z twoim ~/.claude/settings.json, dopóki nie zaakceptujesz okna zaufania do workspace'u dla danego folderu. Jeśli je zamknąłeś albo jesteś w folderze, w którym nigdy nie otwierałeś Claude Code, hooki tam nie zadziałają. Uruchom claude w tym folderze i zaakceptuj okno.

033. Upewnij się, że zdarzenie odpala się wtedy, kiedy myślisz

Wiele „zepsutych” powiadomień to tak naprawdę kwestia czasu. Według dokumentacji hooków Anthropic:

HookKiedy się odpala
Notification z permission_promptProśba o uprawnienia czeka około sześciu sekund, a ty nic nie wpisałeś. Każde naciśnięcie klawisza resetuje licznik.
Notification z idle_promptOkoło 60 sekund po tym, jak Claude skończy, jeśli nic nie wpisałeś i żaden agent w tle nie działa.
StopZa każdym razem, gdy Claude skończy odpowiadać. Nie przy przerwaniu. Błędy API odpalają zamiast tego StopFailure.
PermissionRequestW momencie, gdy Claude Code ma poprosić cię o uprawnienia.

Jeśli więc testujesz hook Notification, pisząc w terminalu, może się w ogóle nie odpalić. Przełącz się na inne okno i poczekaj. Jeśli chcesz alertu od razu po zakończeniu tury, użyj Stop; opisuje to poradnik o Stop hook.

Sprawdź też tryb uprawnień. Nowsze wersje Claude Code uruchamiają sesje interaktywne w trybie auto, w którym klasyfikator zatwierdza większość akcji bez pytania. Brak promptu oznacza brak powiadomienia permission_prompt i brak hooka PermissionRequest. Żeby przetestować alerty o uprawnieniach, naciskaj Shift+Tab, aż pasek statusu pokaże tryb manualny, a potem poproś Claude o coś, co wymaga zatwierdzenia. Szczegóły znajdziesz w objaśnieniu trybów uprawnień.

Matchery też rozróżniają wielkość liter. Matcher PermissionRequest o wartości bash nie dopasuje narzędzia Bash.

044. Uruchom polecenie hooka samodzielnie

Skopiuj polecenie z /hooks i uruchom je w terminalu z przykładowym wejściem:

echo '{"hook_event_name":"Stop","cwd":"/tmp","last_assistant_message":"done"}' | ./my-hook.sh
echo $?

Typowe błędy:

  • command not found: użyj ścieżki bezwzględnej do skryptu albo ${CLAUDE_PROJECT_DIR} dla skryptów w projekcie.
  • Skrypt nic nie robi: nadaj mu prawa wykonywania przez chmod +x ./my-hook.sh.
  • jq: command not found: zainstaluj jq albo parsuj JSON w Pythonie lub Node.js.

055. Przeczytaj log debugowania

Uruchom Claude Code z claude --debug. W terminalu nic dodatkowego się nie pojawi; log trafia do ~/.claude/debug/<session-id>.txt. Żeby wybrać ścieżkę, użyj claude --debug-file /tmp/claude.log i w drugim terminalu uruchom tail -f /tmp/claude.log. Jeśli sesja już działa, /debug włącza logowanie i pokazuje, gdzie jest log.

Szukaj linii zaczynających się od Hooks:. Każda podaje zdarzenie, polecenie, sposób zakończenia (finished with status 0, timed out, failed to start) i czas trwania. Więcej szczegółów o dopasowaniu uzyskasz, ustawiając CLAUDE_CODE_DEBUG_LOG_LEVEL=verbose.

Dwa problemy widać tylko tutaj:

  • Twój profil shella coś wypisuje. Jeśli ~/.bashrc lub ~/.zshrc wykonuje echo, a shell go wczytuje, ten tekst ląduje przed wyjściem JSON twojego hooka i Claude Code traktuje całość jako zwykły tekst. Poszukaj w logu Hook output does not start with {. Owiń wyjście profilu w if [[ $- == *i* ]]; then ... fi, żeby działało tylko w shellach interaktywnych.
  • Brak terminala do zapisu. Na Macu i Linux hooki poleceń działają bez terminala sterującego. Hook, który próbuje użyć dzwonka albo zapisać kody escape do /dev/tty, po cichu zawodzi. Zamiast tego użyj polecenia powiadomień desktopowych albo wbudowanego ustawienia Claude Code preferredNotifChannel, opisanego w poradniku o dzwonku terminala.

066. Sprawdź system operacyjny

Jeśli debug log mówi, że hook zakończył się ze statusem 0, a mimo to nic nie zobaczyłeś, powiadomienie ukrył system operacyjny. Sprawdź, czy aplikacja wyświetlająca alert ma zgodę na powiadomienia oraz czy Skupienie (Mac), Nie przeszkadzać (Windows) albo przełącznik „nie przeszkadzać” w twoim środowisku Linux jest wyłączony. Na Linux musi działać demon powiadomień.

Polecenia dla konkretnych systemów znajdziesz w poradnikach dla macOS, Windows i Linux.

07Jeśli używasz Claude Code Notifier

Claude Code Notifier to niezależne narzędzie (nie od Anthropic), które instaluje mały program ccn jako hooki Claude Code. Wszystko powyżej nadal obowiązuje, bo ccn to hook jak każdy inny. Zacznij od jego własnych testów:

  1. ccn doctor sprawdza hooki, dane logowania, połączenie z serwerem i wykrywanie obecności. Najpierw napraw wszystko, co zgłosi.
  2. ccn test wysyła testowe powiadomienie. Jeśli dotrze, problem leży w zdarzeniu albo ustawieniu, a nie w samym przepływie.
  3. ccn devices wyświetla telefony sparowane z tym komputerem. Jeśli lista jest pusta, sparuj ponownie przez ccn pair; krok po kroku opisuje to poradnik parowania.
  4. ccn config show wypisuje obowiązujące ustawienia. Sprawdź, czy notify_on_done, notify_on_permission i notify_on_question są włączone i czy quiet_hours nie obejmuje bieżącej godziny. Ustawienia zmienione na telefonie trafiają na komputer po ccn sync.

Kilka zachowań wygląda na błędy, ale tak ma być:

  • Jesteś przy klawiaturze. Jeśli pisałeś w ciągu ostatnich 30 sekund, nic nie czeka na telefon, a terminal pyta jak zwykle. Przy włączonym quiet_when_present (domyślnie) telefon nic nie dostaje, gdy jesteś w terminalu, w którym działa Claude, a gdy pracujesz w innej aplikacji — kartę informacyjną.
  • Zdublowane lub brakujące alerty na Macu. Nie uruchamiaj starszej aplikacji z paska menu Maca razem z ccn na tym samym Macu.
  • Długa przerwa. Jeśli telefon lub komputer nie jest używany przez 60 dni, serwer usuwa jego parowanie i trzeba sparować ponownie.

Na samym telefonie sprawdź, czy aplikacja ma zgodę na powiadomienia i czy nie wycisza jej Skupienie (iPhone) albo Nie przeszkadzać (Android). Na Android optymalizacja baterii potrafi opóźniać powiadomienia niektórych aplikacji; jeśli alerty przychodzą z opóźnieniem, zezwól aplikacji na działanie bez ograniczeń w ustawieniach baterii. Jeśli ręcznie edytowałeś settings.json, ccn doctor powie ci, czy jego hooki nadal są na miejscu. ccn upgrade aktualizuje do najnowszej wersji.

08FAQ

Dlaczego mój Notification hook odpala się tylko czasami?

Typy permission_prompt i idle_prompt są wyzwalane wtedy, gdy wyglądasz na nieobecnego. permission_prompt czeka około sześciu sekund bez pisania, a idle_prompt około 60 sekund od zakończenia pracy przez Claude. Jeśli piszesz, są odkładane. Jeśli chcesz natychmiastowego sygnału, użyj PermissionRequest lub Stop.

Gdzie jest debug log Claude Code?

Uruchom claude --debug, a log zapisze się w ~/.claude/debug/<session-id>.txt. Użyj claude --debug-file <path>, żeby wybrać lokalizację, albo /debug w trakcie sesji.

ccn test działa, ale prawdziwe powiadomienia nie przychodzą. Dlaczego?

Przepływ działa, więc przyjrzyj się ustawieniom i czasowi. Sprawdź w ccn config show wartości notify_on_* i quiet_hours, pamiętaj, że przy włączonym quiet_when_present nic nie jest wysyłane, gdy jesteś w terminalu, i sprawdź tryb uprawnień w Claude Code.

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

  • Hooki w Claude Code: wszystkie zdarzenia i do czego służąCzym są hooki w Claude Code, gdzie je umieścić w settings.json, jak działają matchery, dane wejściowe i kody wyjścia oraz do czego służy każde zdarzenie.
  • 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.
  • Połącz telefon z Claude Code na Macu, Windows lub LinuxSparuj telefon z Claude Code w minutę: zainstaluj ccn, a potem zeskanuj kod QR lub wpisz 6-cyfrowy kod. Instrukcja dla Maca, Windows i Linux.
  • Godziny ciszy i Nie przeszkadzać dla powiadomień Claude CodeWycisz powiadomienia Claude Code w nocy lub na spotkaniach: godziny ciszy w hooku, Skupienie i Nie przeszkadzać na telefonie oraz quiet_hours w ccn.
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.