claude-code-notifier
hoe het werkt guides veelgestelde vragen
◐Nederlands
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
Aan de slag
Alle gidsen

Werken je Claude Code-notificaties niet? Een checklist

Bijgewerkt op 31 oktober 2026 · 7 min lezen
op deze pagina 011. Controleer of Claude Code de hook heeft geladen 022. Accepteer workspace trust 033. Zorg dat het event vuurt wanneer jij denkt 044. Voer het hook-commando zelf uit 055. Lees het debuglog 066. Controleer het besturingssysteem 07Als je Claude Code Notifier gebruikt 08FAQ

Als je Claude Code-notificaties niet meer werken, ligt dat bijna altijd aan een van vier dingen: de hook is niet geladen, de hook draait maar faalt, het event waarop je vertrouwt vuurt niet wanneer je verwacht, of het besturingssysteem verbergt de melding. Voer /hooks uit in Claude Code om te zien wat er geladen is, start een sessie met claude --debug om te zien wat elke hook echt deed, en controleer daarna de notificatie-instellingen op je computer of telefoon. Gebruik je Claude Code Notifier, dan dekken ccn doctor en ccn test het meeste hiervan in twee commando's.

De checklist hieronder gaat van de meest voorkomende oorzaak naar de minst voorkomende. Hij werkt op Mac, Windows en Linux.

011. Controleer of Claude Code de hook heeft geladen

Typ /hooks in de prompt van Claude Code. Dat is een alleen-lezen overzicht van elke hook die Claude Code heeft geladen, met bij elke hook waar die vandaan komt: user settings, project settings, local settings, een plugin of de huidige sessie. Selecteer een hook om het exacte commando te zien en het bestand waarin hij is gedefinieerd.

Staat je hook niet in de lijst?

  • De JSON is ongeldig. Settings-bestanden zijn strikte JSON. Een komma aan het eind of een //-commentaar maakt het bestand kapot, en Claude Code meldt bij de volgende start een Settings Error. Voer claude doctor uit om te zien welke entries Claude Code heeft afgewezen.
  • Het bestand staat op de verkeerde plek. Persoonlijke hooks horen in ~/.claude/settings.json (op Windows %USERPROFILE%\.claude\settings.json). Projecthooks horen in .claude/settings.json binnen het project. Voer /status uit en kijk naar de regel Setting sources om te zien welke bestanden geladen zijn.
  • De eventnaam klopt niet. Eventnamen zijn hoofdlettergevoelig: Notification, Stop, PermissionRequest. Een onbekende eventnaam verschijnt als Settings Warning en wordt overgeslagen.
  • Hooks staan uit. "disableAllHooks": true in een willekeurig settings-bestand zet alle hooks uit. Zegt /hooks Only hooks from managed settings run here, dan heeft je organisatie allowManagedHooksOnly ingesteld en draaien je eigen hooks niet.
  • De wijziging is niet opgepikt. Claude Code laadt settings normaal vanzelf opnieuw. Verschijnt de hook na een paar seconden nog niet, herstart dan de sessie.

022. Accepteer workspace trust

In een interactieve sessie houdt Claude Code hooks uit alle settings-bestanden tegen, ook die in je eigen ~/.claude/settings.json, totdat je de workspace trust-dialoog voor die map accepteert. Heb je die dialoog weggeklikt, of zit je in een map waarin je Claude Code nog nooit hebt geopend, dan draaien je hooks daar niet. Start claude in die map en accepteer de dialoog.

033. Zorg dat het event vuurt wanneer jij denkt

Veel "kapotte" notificaties zijn eigenlijk een kwestie van timing. Uit de hooks-referentie van Anthropic:

HookWanneer hij afgaat
Notification met permission_promptEen permission prompt wacht al zo'n zes seconden en je hebt niets getypt. Elke toetsaanslag reset de timer.
Notification met idle_promptOngeveer 60 seconden nadat Claude klaar is, als je niets hebt getypt en er geen background agent meer draait.
StopElke keer dat Claude klaar is met antwoorden. Niet bij een onderbreking. Bij API-fouten vuurt in plaats daarvan StopFailure.
PermissionRequestOp het moment dat Claude Code je om toestemming gaat vragen.

Test je een Notification-hook terwijl je in de terminal typt, dan vuurt hij misschien nooit. Ga naar een ander venster en wacht. Wil je direct een melding als een beurt eindigt, gebruik dan Stop; de Stop hook-gids legt dat uit.

Controleer ook je permission mode. Recente versies van Claude Code starten interactieve sessies in auto mode, waarin een classifier de meeste acties goedkeurt zonder te vragen. Geen prompt betekent geen permission_prompt-notificatie en geen PermissionRequest-hook. Om permission-meldingen te testen druk je op Shift+Tab tot de statusbalk manual mode toont, en vraag je Claude iets te doen waarvoor goedkeuring nodig is. In Permission modes uitgelegd lees je de details.

Ook matchers zijn hoofdlettergevoelig. Een PermissionRequest-matcher bash matcht niet met de Bash-tool.

044. Voer het hook-commando zelf uit

Kopieer het commando uit /hooks en voer het in een terminal uit met voorbeeldinput:

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

Veelvoorkomende fouten:

  • command not found: gebruik een absoluut pad naar het script, of ${CLAUDE_PROJECT_DIR} voor scripts in het project.
  • Het script doet helemaal niets: maak het uitvoerbaar met chmod +x ./my-hook.sh.
  • jq: command not found: installeer jq, of parse de JSON met Python of Node.js.

055. Lees het debuglog

Start Claude Code met claude --debug. Er verschijnt niets extra's in de terminal; het log gaat naar ~/.claude/debug/<session-id>.txt. Wil je zelf het pad kiezen, gebruik dan claude --debug-file /tmp/claude.log en draai tail -f /tmp/claude.log in een andere terminal. Loopt de sessie al, dan zet /debug logging aan en vertelt waar het log staat.

Zoek naar regels die beginnen met Hooks:. Elke regel noemt het event, het commando, hoe het afliep (finished with status 0, timed out, failed to start) en hoe lang het duurde. Voor meer detail over matching zet je CLAUDE_CODE_DEBUG_LOG_LEVEL=verbose.

Twee problemen zie je alleen hier:

  • Je shellprofiel print iets. Als ~/.bashrc of ~/.zshrc een echo uitvoert en de shell het bestand inleest, komt die tekst vóór de JSON-output van je hook terecht, en behandelt Claude Code de output als platte tekst. Zoek in het log naar Hook output does not start with {. Zet output in je profiel binnen if [[ $- == *i* ]]; then ... fi, zodat die alleen in interactieve shells draait.
  • Geen terminal om naar te schrijven. Op Mac en Linux draaien command hooks zonder controlling terminal. Een hook die de bel probeert te laten klinken of escape codes naar /dev/tty schrijft, faalt stilletjes. Gebruik in plaats daarvan een desktopnotificatie-commando, of de eigen instelling preferredNotifChannel van Claude Code, uitgelegd in de gids over de terminal bell.

066. Controleer het besturingssysteem

Als de debug log zegt dat de hook eindigde met status 0 en je toch niets zag, dan heeft het besturingssysteem de melding verborgen. Controleer of de app die de melding toont meldingen mag weergeven, en of Focus (Mac), Niet storen (Windows) of de niet-storen-schakelaar van je Linux-desktop uit staat. Op Linux moet er een notification daemon draaien.

Platformspecifieke commando's vind je in de handleidingen voor macOS, Windows en Linux.

07Als je Claude Code Notifier gebruikt

Claude Code Notifier is een onafhankelijke tool (niet gemaakt door Anthropic) die een klein programma, ccn, installeert als Claude Code-hooks. Alles hierboven geldt nog steeds, want ccn is gewoon een hook zoals elke andere. Begin met de eigen checks:

  1. ccn doctor controleert de hooks, de credentials, de verbinding met de server en de aanwezigheidsdetectie. Los eerst op wat hij meldt.
  2. ccn test stuurt een testmelding. Komt die aan, dan ligt het probleem bij het event of een instelling, niet bij de pipeline.
  3. ccn devices toont de telefoons die aan deze computer gekoppeld zijn. Staat er niets, koppel dan opnieuw met ccn pair; de koppelhandleiding legt het stap voor stap uit.
  4. ccn config show toont de actieve instellingen. Controleer of notify_on_done, notify_on_permission en notify_on_question aan staan, en of quiet_hours het huidige tijdstip niet omvat. Instellingen die je op de telefoon wijzigt, komen op de computer terecht met ccn sync.

Een paar dingen lijken fouten, maar zijn zo bedoeld:

  • Je zit achter het toetsenbord. Als je in de afgelopen 30 seconden hebt getypt, wacht er niets op de telefoon en vraagt de terminal het gewoon zoals altijd. Met quiet_when_present aan (de standaard) krijgt de telefoon niets zolang je in de terminal zit waarin Claude draait, en een informatiekaart als je in een andere app actief bent.
  • Dubbele of ontbrekende meldingen op een Mac. Draai de oudere Mac-menubalkapp en ccn niet tegelijk op dezelfde Mac.
  • Lang niet gebruikt. Als een telefoon of computer 60 dagen niet gebruikt wordt, verwijdert de server de koppeling en moet je opnieuw koppelen.

Controleer op de telefoon zelf of meldingen voor de app zijn toegestaan, en of Focus (iPhone) of Niet storen (Android) ze niet dempt. Op Android kan batterijoptimalisatie meldingen van sommige apps vertragen; komen meldingen te laat binnen, sta de app dan onbeperkt toe in de batterij-instellingen. Heb je settings.json met de hand aangepast, dan vertelt ccn doctor je of de hooks er nog in staan. ccn upgrade werkt bij naar de nieuwste release.

08FAQ

Waarom gaat mijn Notification hook maar af en toe af?

De types permission_prompt en idle_prompt worden getimed op het moment dat je weg lijkt te zijn. permission_prompt wacht ongeveer zes seconden zonder typen, en idle_prompt ongeveer 60 seconden nadat Claude klaar is. Ben je aan het typen, dan worden ze uitgesteld. Gebruik PermissionRequest of Stop voor een direct signaal.

Waar staat de debug log van Claude Code?

Draai claude --debug, dan wordt de log weggeschreven naar ~/.claude/debug/<session-id>.txt. Gebruik claude --debug-file <path> om zelf de locatie te kiezen, of /debug binnen een lopende sessie.

ccn test werkt, maar echte meldingen komen niet aan. Hoe kan dat?

De pipeline is in orde, dus kijk naar instellingen en timing. Controleer notify_on_* en quiet_hours in ccn config show, onthoud dat er niets wordt verstuurd zolang je in de terminal zit met quiet_when_present aan, en check de permission mode in Claude Code.

Claude Code Notifier Krijg een push op je telefoon als Claude Code klaar is of je nodig heeft, en keur goed, wijs af of geef antwoord vanaf daar. De command line tool ccn is gratis op Mac, Windows en Linux.
Download voor iOS Download voor Android ccn installeren

Gerelateerde gidsen

  • Claude Code-hooks uitgelegd: elk event en waar het voor dientWat Claude Code-hooks zijn, waar ze in settings.json komen, hoe matchers, input en exitcodes werken, en waar elk hook-event voor dient.
  • De Claude Code Notification hook: wanneer hij afgaat en hoe je hem gebruiktWanneer de Notification hook van Claude Code afgaat, wat permission_prompt en idle_prompt betekenen, welke input hij krijgt en waarom hij even wacht.
  • Koppel je telefoon aan Claude Code op Mac, Windows of LinuxKoppel je telefoon binnen een minuut aan Claude Code: installeer ccn en scan een QR-code of typ een 6-cijferige code. Stappen voor Mac, Windows en Linux.
  • Stille uren en Niet storen voor Claude Code-meldingenGeen Claude Code-meldingen meer 's nachts of tijdens meetings: stille uren in je hook, Focus en Niet storen op je telefoon, en quiet_hours van ccn.
claude-code-notifier

Claude Code Notifier is een onafhankelijke applicatie van een derde partij. Zij is niet gelieerd aan, onderschreven door of gesponsord door Anthropic, PBC. "Claude" en "Claude Code" zijn handelsmerken van Anthropic, PBC.

apps iOS-app Android-app ccn voor macOS, Windows & Linux Alle gidsen
juridisch Privacybeleid Servicevoorwaarden Andere talen © 2026 touchtap. Alle rechten voorbehouden. TouchTap Ltd is geregistreerd in Engeland en Wales, bedrijfsnummer 13942589.