Praxis
Wenn der Praktikant piept: ein Hook für Claude Code
Ich benutze häufig mehrere Sessions von Claude Code gleichzeitig in mehreren Terminal-Fenstern. Da Claude speziell auf höheren Effort-Stufen schon einige Zeit zum Denken brauchen kann, möchte ich in der Zeit oft noch etwas anderes machen. Was mir dann aber immer wieder passiert, ist, dass ich nicht mitbekomme, wenn die ursprüngliche Aufgabe fertig ist oder wenn es eine Rückfrage gibt.
Meine Lösung ist einfach: Wenn er mit der Aufgabe fertig ist oder wenn es eine Rückfrage gibt, soll er einen kurzen Piepston von sich geben. Dazu habe ich Hooks benutzt, die dann jeweils ein Python-Programm aufrufen, welches den Ton erzeugt. Das könnt ihr natürlich auf eure Wünsche anpassen.
Setup
Die Hooks werden in
%USERPROFILE%\.claude\settings.json
eingetragen:
{
"hooks": {
"Stop": [{
"hooks": [{
"type": "command",
"command": "uv run C:/Users/chris/.claude/hooks/beep-stop.py"
}]
}],
"Notification": [{
"matcher": "permission_prompt",
"hooks": [{
"type": "command",
"command": "uv run C:/Users/chris/.claude/hooks/beep-permission.py"
}]
}]
}
}
Windows-User aufgepasst! Der Pfad muss mit Forward-Slashes eingetragen werden, sonst geht es nicht (ok, es geht auch, wenn man jeweils acht Backslashes statt einem Forward-Slash benutzt... ;))
Die Skripte
Das
beep-stop.py
Skript ist denkbar einfach und sieht
wie folgt aus:
import winsound
winsound.Beep(880, 80)
Bei dem
beep-permission.py
Skript filtere ich über
den
matcher
oben in der Hook-Definition auf
permission_prompt
, also den Fall, dass Claude um
Erlaubnis für ein Tool fragt. Es gibt noch andere mögliche Werte,
die mich hier aber nicht interessieren. Der einzige Unterschied zu
beep-stop.py
ist die Frequenz, damit ich am Ton höre,
ob Claude fertig ist oder ob er eine Rückfrage hat.
import winsound
winsound.Beep(1760, 80)
Der Hook wird bei mir immer mit ein paar Sekunden Verspätung ausgelöst, ist also mehr eine Erinnerung, dass ich den Prompt noch nicht bearbeitet habe.
Wer jetzt Hunger auf Hooks bekommen hat, Anthropic hat eine längliche (3300 Zeilen!) Doku zu Hooks im Netz.