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

Claude Code-Benachrichtigungen unter macOS

Aktualisiert am 31. Oktober 2026 · 6 Min. Lesezeit
Auf dieser Seite 01Was Claude Code von sich aus macht 02Ein Notification-Hook mit osascript 03Sofort erfahren, wenn Claude fertig ist 04Die echte Nachricht anzeigen 05terminal-notifier: per Klick zurück ins Terminal 06Fokus und Nicht stören 07Wo Claude Code Notifier ins Spiel kommt 08FAQ

Unter macOS schickt Claude Code in Ghostty, Kitty und iTerm2 bereits eine Desktop-Mitteilung (bei iTerm2 musst du die Alert-Einstellungen aktivieren), in Apple Terminal und den meisten anderen Terminals kommt aber nichts an. Für eine Mitteilung in jedem Terminal trägst du in ~/.claude/settings.json einen Notification-Hook ein, der osascript -e 'display notification ...' ausführt, und zusätzlich einen Stop-Hook, wenn du sofort wissen willst, dass Claude fertig ist. Erlaube in den Systemeinstellungen Mitteilungen für den Skripteditor, sonst schlägt der osascript-Befehl kommentarlos fehl.

01Was Claude Code von sich aus macht

Claude Code löst ein Notification-Event aus, wenn es eine Aufgabe abgeschlossen hat oder auf eine Berechtigung wartet und du anscheinend nicht am Terminal bist. Was du dann siehst, hängt laut Terminal-Guide von Anthropic vom Terminal ab:

TerminalStandardverhalten
Ghostty, KittyEine macOS-Mitteilung
iTerm2Eine macOS-Mitteilung, sobald du die Alert-Einstellungen aktivierst
Apple TerminalKein Ton. Höchstens eine stille Glocke, die als Fensterblinken oder hüpfendes Dock-Symbol erscheint, falls das Profil das erlaubt
Andere (VS Code-Terminal, Warp usw.)Nichts

In iTerm2 öffnest du Settings > Profiles > Terminal, setzt den Haken bei Notification Center Alerts, klickst dann auf Filter Alerts und aktivierst Send escape sequence-generated alerts. Prüf außerdem unter Systemeinstellungen > Mitteilungen, ob iTerm2 Mitteilungen senden darf.

In Apple Terminal bekommst du zumindest einen Ton. Setz "preferredNotifChannel": "terminal_bell" in ~/.claude/settings.json und aktiviere Hörbarer Signalton unter Einstellungen > Profile > Erweitert. Details dazu findest du im Guide zur Terminal-Glocke.

Der eingebaute Alert hat Grenzen: Er feuert nur, wenn Claude Code glaubt, dass du weg bist, sagt nur, dass etwas passiert ist, und verlässt nie den Rechner.

02Ein Notification-Hook mit osascript

Ein Hook funktioniert in jedem Terminal, auch in IDE-Terminals. Das hier ist das macOS-Beispiel aus dem Hooks-Guide von Anthropic. Füg es in ~/.claude/settings.json ein und lass vorhandene Keys stehen:

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

Gib in Claude Code /hooks ein, um zu prüfen, ob er unter Notification aufgeführt ist.

Die Berechtigung für den Skripteditor

osascript verschickt Mitteilungen im Namen des Skripteditors. Hat der Skripteditor keine Mitteilungsberechtigung, schlägt der Befehl still fehl, und macOS fragt nicht nach. Führ das einmal im Terminal aus:

osascript -e 'display notification "test"'

Beim ersten Mal erscheint nichts. Öffne Systemeinstellungen > Mitteilungen, such Skripteditor und aktiviere Mitteilungen erlauben. Führ den Befehl noch einmal aus, dann sollte die Testmitteilung kommen.

Wann er feuert

Der leere Matcher greift bei jedem Benachrichtigungstyp. Die zwei wichtigsten sind permission_prompt (Claude wartet seit etwa sechs Sekunden auf eine Freigabe und du hast nichts eingegeben) und idle_prompt (Claude ist seit etwa 60 Sekunden fertig und du hast seitdem nichts eingegeben). Im Guide zum Notification hook findest du alle Typen samt Timing.

03Sofort erfahren, wenn Claude fertig ist

idle_prompt wartet eine Minute. Willst du sofort Bescheid bekommen, füg einen Stop-Hook hinzu, der läuft, sobald Claude seinen Turn beendet. Stop braucht keinen Matcher:

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

sound name akzeptiert jeden Sound aus /System/Library/Sounds, etwa Glass, Ping oder Hero. Willst du nur einen Ton, reicht afplay /System/Library/Sounds/Glass.aiff als Befehl. Mehr zu diesem Event im Guide zum Stop hook.

04Die echte Nachricht anzeigen

Hooks bekommen JSON über die Standardeingabe. Der Notification-Input enthält ein message-Feld, etwa „Claude needs your permission“. Ein kleines Skript kann diesen Text in die Mitteilung packen. Speicher das als ~/.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"

Weil der Text als Argument übergeben wird und nicht im AppleScript-String steht, können Anführungszeichen in der Nachricht den Befehl nicht kaputt machen. Mach das Skript mit chmod +x ~/.claude/hooks/notify-mac.sh ausführbar und setz den Hook-Befehl auf ~/.claude/hooks/notify-mac.sh. Das Skript braucht jq (brew install jq, falls jq --version fehlschlägt).

05terminal-notifier: per Klick zurück ins Terminal

Klickst du auf eine Mitteilung von osascript, öffnet sich der Skripteditor – nicht gerade, wo du hinwillst. Mit terminal-notifier legst du fest, welche App in den Vordergrund kommt:

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

Nimm com.apple.Terminal für Apple Terminal oder die Bundle-ID deines Editors. Derselbe Befehl kommt ins command-Feld des Hooks. Beim ersten Mal musst du in den Systemeinstellungen Mitteilungen für terminal-notifier erlauben.

06Fokus und Nicht stören

All das sind normale macOS-Mitteilungen, ein Fokus-Modus kann sie also ausblenden. Verschwinden sie zu bestimmten Zeiten, prüf Systemeinstellungen > Fokus und erlaube die App, die sie verschickt (Skripteditor, terminal-notifier oder dein Terminal). Für Benachrichtigungen, die stattdessen deine eigenen Zeiten respektieren, sieh dir Ruhezeiten und Nicht stören an.

07Wo Claude Code Notifier ins Spiel kommt

Die Hooks oben sind eine gute Lösung, wenn du am Mac sitzt und nur einen kleinen Stups willst. Sobald du weggehst, reichen sie nicht mehr: Eine Mac-Mitteilung erreicht dich nicht in der Küche und kann Claude nicht antworten.

Claude Code Notifier ist ein unabhängiges Tool (von TouchTap, nicht von Anthropic), das auf denselben Hooks aufbaut. Das kostenlose Kommandozeilentool ccn läuft auf Mac, Windows und Linux. Installier es auf deinem Mac mit:

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

oder mit Homebrew: brew trust --formula touch-tap/tap/ccn && brew install touch-tap/tap/ccn. Es trägt seine Hooks in ~/.claude/settings.json ein, lässt den Rest der Datei in Ruhe und legt ein Backup an. Ab dann zeigt es eine macOS-Mitteilung, wenn Claude fertig ist, eine Berechtigung braucht oder eine Frage stellt – ganz ohne Netzwerk und Handy.

Koppelst du ein iPhone oder Android-Handy, kommen dieselben Events als Push-Benachrichtigungen an, und du kannst vom Handy aus Berechtigungen erlauben oder ablehnen, eine Antwort auf Claudes Frage auswählen oder die nächste Anweisung schicken. Hast du in den letzten 30 Sekunden getippt, fragt das Terminal wie gewohnt und auf dem Handy wartet nichts. Mehr dazu unter Handy koppeln und auf der ccn-Seite. Die Handy-Apps brauchen ein Abo oder einen Lifetime-Kauf; siehe Preise.

Wenn du ccn nutzt, entfern deine eigenen osascript-Hooks, sonst bekommst du für jedes Event zwei Mitteilungen. Es gibt außerdem eine ältere Menüleisten-App für den Mac; lass sie nicht parallel zu ccn auf demselben Mac laufen.

08FAQ

Warum zeigt mein osascript-Hook nichts an?

Meistens fehlt dem Skripteditor die Berechtigung für Mitteilungen, und macOS verwirft die Mitteilung ohne Fehlermeldung. Führ einmal osascript -e 'display notification "test"' aus und erlaube dann den Skripteditor unter Systemeinstellungen > Mitteilungen. Klappt es immer noch nicht, prüf, ob ein Fokus-Modus aktiv ist und ob /hooks deinen Hook auflistet.

Schickt Claude Code macOS-Mitteilungen ganz ohne Einrichtung?

Ja, in Ghostty und Kitty, und in iTerm2, sobald dort die Mitteilungszentrale-Hinweise aktiviert sind. Apple Terminal und IDE-Terminals bekommen standardmäßig keine Desktop-Mitteilung, dort brauchst du einen Hook oder ccn.

Wie bekomme ich eine Mitteilung direkt, wenn Claude fertig ist, und nicht erst eine Minute später?

Nimm einen Stop-Hook. Die idle_prompt-Mitteilung kommt erst etwa 60 Sekunden, nachdem Claude fertig ist, und nur, wenn du nichts getippt hast. Stop läuft dagegen am Ende jedes Turns.

Kann ich statt eines Banners einen Ton hören?

Ja. Nimm afplay /System/Library/Sounds/Glass.aiff als Hook-Befehl oder ergänze den osascript-Befehl um sound name "Glass", dann bekommst du beides.

Kann ich eine Berechtigung direkt aus der macOS-Mitteilung freigeben?

Nicht mit osascript oder terminal-notifier, die zeigen nur Text an. Um eine Berechtigung per Hook zu beantworten, brauchst du das PermissionRequest-Event; siehe Berechtigungsanfragen per Hook beantworten, oder gib sie mit Claude Code Notifier vom Handy aus frei.

Claude Code Notifier Bekomm einen Push aufs Handy, wenn Claude Code fertig ist oder dich braucht, und genehmige, lehne ab oder antworte direkt von dort. Das Kommandozeilentool ccn ist kostenlos für Mac, Windows und Linux.
Für iOS laden Für Android laden ccn installieren

Ähnliche Guides

  • Der Notification hook in Claude Code: wann er feuert und wie du ihn nutztWann der Notification hook von Claude Code feuert, was permission_prompt und idle_prompt bedeuten, welche Eingabe er bekommt und warum er vor dem Auslösen wartet.
  • Der Claude Code Stop hook: etwas ausführen, wenn Claude fertig istWie der Stop hook von Claude Code funktioniert, welchen Input er bekommt, wie du einen Befehl ausführst, wenn Claude fertig ist, und wie du Claude sicher weiterarbeiten lässt.
  • Die eingebauten Benachrichtigungen von Claude Code: Terminal-Bell und preferredNotifChannelWie die eingebauten Hinweise von Claude Code funktionieren, was die einzelnen Werte von preferredNotifChannel bewirken und wie du iTerm2, Apple Terminal, Kitty, Ghostty und tmux einrichtest.
  • Claude Code-Benachrichtigungen funktionieren nicht? Eine ChecklisteHooks werden nicht ausgelöst oder du bekommst keinen Hinweis, wenn Claude Code fertig ist? Geh diese Checkliste durch – von /hooks und dem Debug-Log bis zu ccn doctor und ccn test.
claude-code-notifier

Claude Code Notifier ist eine unabhängige Drittanbieter-Anwendung. Sie steht in keiner Verbindung zu Anthropic, PBC und wird von Anthropic, PBC weder unterstützt noch gesponsert. „Claude“ und „Claude Code“ sind Marken von Anthropic, PBC.

apps iOS-App Android-App ccn für macOS, Windows & Linux Alle Guides
rechtliches Datenschutzerklärung Nutzungsbedingungen Weitere Sprachen © 2026 touchtap. Alle Rechte vorbehalten. TouchTap Ltd ist in England und Wales eingetragen, Registernummer 13942589.