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

Claude Code-pushmeldingen met ntfy (zelf instellen)

Bijgewerkt op 31 oktober 2026 · 6 min lezen
op deze pagina 01Stap 1: kies een topic en abonneer je 02Stap 2: een hookscript (Mac en Linux) 03Stap 3: koppel het in settings.json 04Windows (PowerShell) 05Privé houden 06Waar Claude Code Notifier in past 07FAQ

Wil je pushmeldingen van Claude Code via ntfy? Installeer de ntfy-app op je telefoon, abonneer je op een topic met een moeilijk te raden naam en voeg een Claude Code-hook toe die curl -d "message" https://ntfy.sh/your-topic uitvoert. Een Notification-hook laat je weten wanneer Claude toestemming nodig heeft of op je wacht, en een Stop-hook meldt meteen wanneer een beurt klaar is. Het is gratis, kost zo'n tien minuten en werkt op Mac, Windows en Linux.

01Stap 1: kies een topic en abonneer je

Bij ntfy hoef je je niet te registreren. Een topic ontstaat zodra iemand er voor het eerst naar publiceert of zich erop abonneert, en iedereen die de naam kent kan meelezen. Volgens de documentatie van ntfy zelf is het topic eigenlijk een wachtwoord, dus maak het lang en willekeurig, bijvoorbeeld claude-7f3k9q2xw4mz. Topicnamen mogen letters, cijfers, underscores en streepjes bevatten, tot maximaal 64 tekens.

Installeer de ntfy-app (App Store, Google Play of F-Droid), tik op + en abonneer je op je topic op ntfy.sh.

Test het vanuit een terminal:

curl -H "Title: Test" -d "Hello from my computer" https://ntfy.sh/claude-7f3k9q2xw4mz

Je telefoon hoort binnen een seconde of twee te trillen. Op Windows zit curl.exe standaard in Windows 10 en 11, en die accepteert dezelfde regel.

02Stap 2: een hookscript (Mac en Linux)

Claude Code geeft elke hook een JSON-object via standaardinvoer. Beide events hebben velden als cwd en hook_event_name. Notification voegt message en notification_type toe, en Stop voegt last_assistant_message toe, de tekst van het laatste antwoord van Claude. Dit script maakt van allebei een leesbare push. Je hebt jq nodig (brew install jq, of apt install jq op Debian en Ubuntu).

Sla het op als ~/.claude/ntfy-notify.sh en voer chmod +x ~/.claude/ntfy-notify.sh uit:

#!/bin/sh
TOPIC_URL="https://ntfy.sh/claude-7f3k9q2xw4mz"

input=$(cat)
event=$(printf '%s' "$input" | jq -r '.hook_event_name')
project=$(basename "$(printf '%s' "$input" | jq -r '.cwd')")

if [ "$event" = "Stop" ]; then
  title="Claude finished: $project"
  body=$(printf '%s' "$input" | jq -r '(.last_assistant_message // "Done") | .[0:300]')
  priority=3
else
  title="Claude needs you: $project"
  body=$(printf '%s' "$input" | jq -r '.message // "Needs your attention"')
  priority=4
fi

curl -s -H "Title: $title" -H "Priority: $priority" -H "Tags: robot" \
  -d "$body" "$TOPIC_URL" > /dev/null
exit 0

De prioriteit loopt van 1 (min) tot 5 (urgent). Tags voegt een emoji aan de melding toe; robot toont een robotgezicht.

03Stap 3: koppel het in settings.json

Voeg de hooks toe aan ~/.claude/settings.json. Staat er al een hooks-object in het bestand, zet deze events daar dan in in plaats van het te vervangen.

{
  "hooks": {
    "Notification": [
      {
        "matcher": "permission_prompt",
        "hooks": [
          { "type": "command", "command": "~/.claude/ntfy-notify.sh" }
        ]
      }
    ],
    "Stop": [
      {
        "hooks": [
          { "type": "command", "command": "~/.claude/ntfy-notify.sh", "async": true }
        ]
      }
    ]
  }
}

Met "async": true verstuurt de Stop-hook op de achtergrond, zodat een traag netwerk Claude nooit ophoudt. Start een nieuwe Claude Code-sessie, want hooks worden geladen bij het starten van een sessie.

Stop of idle_prompt?

Stop gaat af zodra Claude klaar is, ook als je gewoon achter je toetsenbord zit. Is dat te veel, haal dan het Stop-blok weg en gebruik de matcher permission_prompt|idle_prompt. Volgens de documentatie van Anthropic gaat idle_prompt zo'n 60 seconden nadat Claude klaar is af, alleen als je sindsdien niets hebt getypt, en gaat permission_prompt af zodra een toestemmingsprompt ongeveer zes seconden zonder toetsaanslag heeft gewacht. Zo heb je gratis een grof "alleen als ik weg ben"-filter. De gids over de Notification hook en de gids over de Stop hook behandelen elk veld en elke timing.

04Windows (PowerShell)

Sla dit op Windows op als %USERPROFILE%\.claude\ntfy-notify.ps1. Je hoeft niets extra te installeren:

$in = [Console]::In.ReadToEnd() | ConvertFrom-Json
$project = Split-Path $in.cwd -Leaf

if ($in.hook_event_name -eq 'Stop') {
  $title = "Claude finished: $project"
  $body = [string]$in.last_assistant_message
  if ($body.Length -gt 300) { $body = $body.Substring(0, 300) }
  $priority = '3'
} else {
  $title = "Claude needs you: $project"
  $body = [string]$in.message
  $priority = '4'
}

Invoke-RestMethod -Method Post -Uri 'https://ntfy.sh/claude-7f3k9q2xw4mz' `
  -Headers @{ Title = $title; Priority = $priority } `
  -Body ([Text.Encoding]::UTF8.GetBytes($body)) | Out-Null

Gebruik dan deze hookregel in plaats van de command-regels hierboven:

{
  "type": "command",
  "shell": "powershell",
  "command": "powershell -NoProfile -ExecutionPolicy Bypass -File \"$HOME\\.claude\\ntfy-notify.ps1\""
}

Draai je Claude Code in WSL, gebruik dan het script voor Mac en Linux; voor de hook is WSL gewoon Linux.

05Privé houden

Alles in de push gaat via de ntfy-server, en op ntfy.sh kan iedereen die de topicnaam kent meelezen. Het Stop-bericht hierboven bevat het begin van het antwoord van Claude, en daar kunnen code of bestandsnamen in staan. Drie manieren om dit dicht te zetten:

  1. Stuur minder. Vervang de body van Stop door een vaste tekst zoals "Done" en zet alleen de projectnaam in de titel.
  2. Gebruik een access token. ntfy accepteert -H "Authorization: Bearer tk_..." bij elke publish. Op je eigen server stel je auth-default-access: "deny-all" in, maak je een gebruiker aan met ntfy user add en een token met ntfy token add.
  3. Host je eigen server. ntfy kun je zelf hosten. Voor directe aflevering in de iPhone-app raadt de documentatie van ntfy aan om upstream-base-url: "https://ntfy.sh" in te stellen. Dan gaan alleen een bericht-ID en een topichash naar ntfy.sh om de telefoon wakker te maken; de app haalt het bericht daarna op bij je eigen server.

Draait Claude Code op een externe server, dan werkt dezelfde hook daar ongewijzigd. Daardoor past ntfy goed bij meldingen via SSH.

06Waar Claude Code Notifier in past

Voor eenrichtingsmeldingen is de setup hierboven een complete oplossing, en we gaan je die niet uit het hoofd praten. Maar het blijft bij melden. Zegt de push dat Claude toestemming nodig heeft, dan wacht de sessie nog steeds tot je weer achter je toetsenbord zit.

ntfy ondersteunt wel actieknoppen die een HTTP-request doen, dus je kunt zelf een antwoordroute bouwen: een PermissionRequest-hook die het verzoek publiceert, op een tweede topic op een antwoord wacht en een beslissing teruggeeft. Sommige opensourceprojecten doen precies dat (zie de vergelijking).

Claude Code Notifier levert die route kant-en-klaar. Met een gekoppelde telefoon kun je een toestemming eenmalig of voor de hele sessie toestaan of weigeren, een antwoord kiezen als Claude een vraag stelt, en de volgende instructie sturen als Claude klaar is, allemaal vanaf je telefoon. Het checkt ook of je er bent: heb je in de laatste 30 seconden getypt, dan vraagt de terminal het gewoon en wacht er niets op je telefoon. Ben je weg, dan wacht de terminal op je antwoord tot een maximum dat je zelf instelt, en stopt met wachten zodra je het toetsenbord aanraakt. ccn draait op Mac, Windows en Linux; zie de ccn-pagina en prijzen voor de telefoonapps.

07FAQ

Is ntfy gratis voor Claude Code-meldingen?

Publiceren naar en abonneren op ntfy.sh kan zonder account, en de server staat open voor iedereen. ntfy heeft ook een betaald abonnement en kan zelf gehost worden. Kijk op de site van ntfy voor de actuele limieten.

Waarom gaat mijn ntfy-hook niet af?

Start een nieuwe Claude Code-sessie nadat je settings.json hebt aangepast, want hooks worden bij het opstarten geladen. Voer daarna de curl-testregel handmatig uit en pipe voorbeeld-JSON naar het script, bijvoorbeeld echo '{"hook_event_name":"Stop","cwd":"/tmp/x"}' | ~/.claude/ntfy-notify.sh. De checklist voor probleemoplossing behandelt de rest.

Kan ik vanuit een ntfy-melding antwoorden aan Claude Code?

Niet met een gewone publish. De HTTP-actieknoppen van ntfy kunnen een request sturen, maar je hebt een hook nodig die op het antwoord wacht en er een beslissing van maakt die Claude Code begrijpt.

Krijg ik voor elk type melding een push?

Alleen voor de matchers die je opgeeft. Laat matcher weg bij de Notification-regel om elk type te ontvangen, ook authenticatie- en MCP-dialogen.

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

  • Alle manieren om Claude Code-meldingen te krijgen, vergelekenIngebouwde meldingen, je eigen hooks, ntfy en chatwebhooks, Remote Control van Anthropic en notifier-apps: wat ze wel en niet kunnen.
  • Claude Code-meldingen naar Telegram, Slack of Discord sturenEén hookscript dat Claude Code-meldingen naar een Telegram-bot, een Slack incoming webhook of een Discord-webhook stuurt, op Mac, Windows en Linux.
  • 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.
  • De Claude Code Stop hook: iets uitvoeren als Claude klaar isHoe de Stop hook van Claude Code werkt, welke input hij krijgt, hoe je een command uitvoert als Claude klaar is, en hoe je Claude veilig laat doorwerken.
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.