Claude-Code-Benachrichtigungen: hören, ob es wartet oder fertig ist

„Eine blockierte Sitzung sieht genauso aus wie eine fertige, also öffne ich zuerst die falsche.“ Dieser Satz aus einem Feature-Request für Claude Code bringt es auf den Punkt. So bekommst du für beides ein anderes Signal.

Von Aslan, Pet-Island-Team · Aktualisiert am 26. Okt. 2026 · 4 Min. Lesezeit

KURZE ANTWORT

Claude Code löst bereits eine Benachrichtigung aus, wenn es fertig ist oder auf eine Berechtigung wartet, während du weg bist, aber standardmäßig zeigen nur Ghostty, Kitty und iTerm2 sie als Desktop-Benachrichtigung an. Überall sonst setzt du "preferredNotifChannel": "terminal_bell". Für zwei unterschiedliche Töne verwendest du einen Notification-Hook mit dem Matcher permission_prompt für „braucht dich“ und einen Stop-Hook für „fertig“.

Was Claude Code von selbst macht

Wenn Claude eine Aufgabe beendet oder für eine Berechtigungsabfrage pausiert und du anscheinend nicht am Terminal bist, löst es ein Benachrichtigungs-Event aus. Standardmäßig wird daraus nur in Ghostty, Kitty und iTerm2 eine Desktop-Benachrichtigung. In Windows Terminal, dem VS-Code-Terminal, Warp und den übrigen passiert nichts Sichtbares, solange du es nicht einrichtest.

Die einfachste Lösung ist die Terminalglocke:

~/.claude/settings.jsonKopieren
{
"preferredNotifChannel": "terminal_bell"
}

Was die Glocke macht, entscheidet dein Terminal. In Windows Terminal kann die Einstellung bellStyle den Wert audible (Standard), window, taskbar, all oder none haben. Mit all spielt Windows Terminal einen Ton ab und lässt das Taskleistensymbol blinken.

  • iTerm2: Settings → Profiles → Terminal → „Notification Center Alerts“ aktivieren, dann unter Filter Alerts „Send escape sequence-generated alerts“ einschalten.
  • tmux: Füge set -g allow-passthrough on zu ~/.tmux.conf hinzu, sonst erreichen Benachrichtigungen das äußere Terminal nie.
  • Über SSH: Die Desktop-Benachrichtigung wird an deinen lokalen Rechner zurückgeschickt, also können dich auch Remote-Sitzungen benachrichtigen.

Der Feature-Request für Systembenachrichtigungen (#26581, 34 Upvotes) wurde als bereits verfügbar geschlossen, mit Verweis auf genau diese integrierte Benachrichtigung. Der Request für ein anderes Signal bei „wartet“ und „fertig“ (#94373) ist noch offen. Hier kommen Hooks ins Spiel.

Zwei Events: Notification und Stop

  • Notification löst aus, wenn Claude Code eine Benachrichtigung sendet. Der Matcher ist der Benachrichtigungstyp. Die beiden wichtigen sind permission_prompt (Claude braucht deine Freigabe für eine Tool-Nutzung, und die Abfrage wartet seit etwa sechs Sekunden) und idle_prompt (Claude hat vor etwa 60 Sekunden fertig geantwortet, und du hast seitdem nichts eingegeben).
  • Stop löst aus, sobald Claude fertig geantwortet hat. Es löst nicht aus, wenn du unterbrichst; API-Fehler lösen stattdessen StopFailure aus.

Hooks laufen zusätzlich zur integrierten Benachrichtigung, statt sie zu ersetzen, du kannst also beides behalten.

Windows: zwei unterschiedliche Töne

Unter Windows laufen Hooks in Git Bash oder in PowerShell, wenn Git Bash nicht installiert ist. Mit "shell": "powershell" musst du nicht raten. Diese Konfiguration spielt einen hohen Doppelpiep, wenn Claude eine Berechtigung braucht, und einen tiefen Piep, wenn es fertig ist:

%USERPROFILE%\.claude\settings.jsonKopieren
{
"hooks": {
"Notification": [
{
"matcher": "permission_prompt",
"hooks": [
{ "type": "command", "shell": "powershell",
"command": "[Console]::Beep(1320, 150); [Console]::Beep(1320, 150)" }
]
}
],
"Stop": [
{
"hooks": [
{ "type": "command", "shell": "powershell",
"command": "[Console]::Beep(660, 300)" }
]
}
]
}
}

Console.Beep nimmt eine Frequenz in Hertz und eine Dauer in Millisekunden und wartet, bis der Piep vorbei ist. Anthropics Hooks-Guide zeigt auch ein Windows-Beispiel, das mit System.Windows.Forms ein Meldungsfenster öffnet; laut ihrem eigenen Hinweis ist das ein Dialog statt einer Benachrichtigung und kann sich hinter deinem Terminal öffnen.

macOS und Linux

Anthropics Doku verwendet unter macOS afplay:

~/.claude/settings.jsonKopieren
{
"hooks": {
"Notification": [
{
"matcher": "permission_prompt",
"hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" }]
}
],
"Stop": [
{
"hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Pop.aiff" }]
}
]
}
}

Für einen sichtbaren Hinweis nimmst du unter macOS osascript -e 'display notification "Claude needs you" with title "Claude Code"' oder unter Linux notify-send "Claude Code" "Claude needs you".

Details, die dir einen Abend ersparen

  • Stop löst oft aus. Es löst jedes Mal aus, wenn Claude fertig geantwortet hat, nicht nur, wenn eine ganze Aufgabe erledigt ist. Wenn dir das zu gesprächig ist, verwende stattdessen die Benachrichtigung idle_prompt. Sie wartet etwa eine Minute und löst nur aus, wenn du nichts eingegeben hast.
  • Lies das Event, wenn du es brauchst. Die Notification-Eingabe enthält message, title und notification_type, sodass ein Skript die eigentliche Anfrage anzeigen kann.
  • Agent view. Wenn du Hintergrundsitzungen mit claude agents ausführst, benachrichtigt es dich über denselben preferredNotifChannel, wenn eine Sitzung Eingaben braucht, fertig wird oder fehlschlägt, und löst den Notification-Hook mit dem Typ agent_needs_input oder agent_completed aus.
  • Terminalstatus. Terminals, die das Statusprotokoll OSC 7501 umsetzen, können anzeigen, ob jede Claude-Code-Sitzung arbeitet, wartet oder fertig ist. Claude Code ab v2.1.295 meldet das automatisch.
  • Hook löst unter Windows nicht aus? Sieh dir Claude-Code-Hooks funktionieren unter Windows nicht an. Fast immer liegt es an der Shell.

Sehen, welche Sitzung es ist, und antworten

Ein Ton sagt dir, dass etwas passiert ist. Er sagt dir nicht, aus welchem deiner drei Terminals er kam oder was Claude ausführen will. Pet Island gibt jeder Claude-Code-Sitzung einen Platz auf einer kleinen Insel oben auf deinem Bildschirm: arbeitet, wartet auf dich oder fertig. Eine Berechtigungsanfrage kommt mit dem Befehl oder dem Diff, und du erlaubst oder verweigerst sie direkt dort; Fragen und Pläne funktionieren genauso. Ein Klick bringt dich genau ins richtige Terminal, wenn du genauer hinsehen willst.

FAQ

Hat Claude Code Benachrichtigungen?

Ja. Wenn es fertig ist oder auf eine Berechtigung wartet, während du weg bist, löst es eine Benachrichtigung aus. Ghostty, Kitty und iTerm2 zeigen sie standardmäßig als Desktop-Benachrichtigung an; in anderen Terminals setzt du preferredNotifChannel auf "terminal_bell" oder fügst einen Notification-Hook hinzu.

Wie bekomme ich einen Ton, wenn Claude Code fertig ist?

Füge einen Stop-Hook hinzu, der einen Ton abspielt, zum Beispiel afplay unter macOS oder [Console]::Beep in PowerShell unter Windows.

Wie unterscheide ich „braucht eine Berechtigung“ von „fertig“?

Verwende einen Notification-Hook mit dem Matcher permission_prompt für den einen Ton und einen Stop-Hook für den anderen.

Warum bekomme ich in Windows Terminal oder VS Code keine Benachrichtigungen?

Claude Code sendet Desktop-Benachrichtigungen standardmäßig nur in Ghostty, Kitty und iTerm2. Setz preferredNotifChannel auf "terminal_bell" oder verwende einen Hook.

Funktionieren Benachrichtigungen in tmux?

Ja, nachdem du set -g allow-passthrough on zu ~/.tmux.conf hinzugefügt hast.

Quellen

Jede Einstellung und jedes Verhalten auf dieser Seite wurde am 26. Oktober 2026 mit diesen Seiten abgeglichen. Agenten ändern sich schnell; wenn etwas nicht mehr passt, gilt die offizielle Seite.

WEITERLESEN

Antworte jedem Agenten direkt oben auf deinem Bildschirm.

Windows und Mac · 7 Tage kostenlos, dann einmalig 8,99 $ · 1 $ pro Verkauf ernährt Straßentiere

Pet Island kostenlos testen