CommunityCodierung & Entwicklunggithub.com

aelena/break-time

Claude Code Skill – sanfte Pausen-Erinnerungen per Hook, wenn du zu lange codierst (oder vibecodest)

Was ist break-time?

Break-time ist ein ambienter Skill für Claude Code, der dich sanft daran erinnert, eine Pause zu machen, wenn du zu lange ununterbrochen codierst. Da Claude selbst keine Echtzeit über mehrere Antworten hinweg verfolgen kann – es sieht nur den Verlauf des Gesprächs – nutzt dieser Skill sogenannte Hooks. Hooks laufen außerhalb von Claude in der Ausführungsumgebung und können Kontext injizieren, den Claude sonst nicht hätte. Der Hook prüft bei jeder Eingabe, wie lange deine aktive Sitzung bereits läuft (nach 10 Minuten Inaktivität wird sie zurückgesetzt) und gibt bei Erreichen konfigurierbarer Schwellenwerte (Standard: 45, 90, 120 Minuten) einen kurzen, einmaligen Hinweis in Claudes Antwortkontext. Du kannst die Erinnerungen mit `/snooze 60` stumm schalten oder den Timer mit `/break-reset` zurücksetzen. Der Skill erfordert keine Netzwerkaufrufe, blockiert niemals eine Eingabe und protokolliert alles lokal zur Fehlersuche. Die vollständige Anleitung zur Installation und zum Schreiben eigener Hooks findest du in der beiliegenden `HOOKS-101.md`.

Funktioniert mit✓Claude Code~Codex CLI~Cursor
npx skills add aelena/break-time

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht break-time?

Ein ambienter Skill, der dich sanft daran erinnert, eine Pause zu machen, wenn du zu lange ununterbrochen gearbeitet hast. Claude selbst kann die Wanduhrzeit nicht über mehrere Antworten hinweg verfolgen – es sieht nur den Gesprächsverlauf. Hooks laufen außerhalb von Claude in der Ausführungsumgebung und können Kontext injizieren, den Claude sonst nicht hätte. Genau so funktioniert dieser Skill.

Falls du noch nie einen Hook geschrieben hast, lies zuerst HOOKS-101.md. Es ist ein eigenständiges Tutorial – copy-paste-freundlich, ~15 Minuten Lesezeit, und die Grundlage für jeden ambienten Skill, den du später bauen möchtest.

Was es tut

  • Erfasst den Start der aktuellen „aktiven Sitzung“ (wird nach 10 Minuten Inaktivität zurückgesetzt).
  • Berechnet bei jeder Eingabe, wie lange du bereits aktiv arbeitest.
  • Wenn ein konfigurierbarer Schwellenwert überschritten wird (Standard 45, 90, 120 Minuten), wird ein einmaliger Hinweis in Claudes Kontext eingefügt. Claude wird ihn in seiner eigenen Stimme kurz in der nächsten Antwort erwähnen, bevor es auf deine Frage eingeht.
  • Du kannst es stummschalten (/snooze 60) oder zurücksetzen (/break-reset).
  • Jeder Schwellenwert feuert nur einmal pro aktiver Sitzung – keine Spam.

Aufruf

Der Skill besteht aus zwei Teilen: einem passiven Hook (läuft nach Installation automatisch) und einigen aktiven Befehlen zur Steuerung.

AuslöserVerhalten
(automatisch)Der Hook feuert bei jeder Eingabe. Nach der Installation ist keine manuelle Aktivierung nötig.
/break oder /break-timeZeigt den aktuellen Status an: wie lange die aktive Sitzung läuft, wann der nächste Schwellenwert erreicht wird, Stummschaltungsstatus.
/snooze [N]Schaltet die Erinnerungen für N Minuten stumm (Standard 60).
/break-resetSetzt den Timer der aktiven Sitzung zurück (behandelt jetzt als Sitzungsbeginn).
/break-time configureFührt dich durch das Bearbeiten der Schwellenwerte in ~/.claude/break-time.conf.
Natürliche Sprache: „Pause break-time“, „ich mache jetzt eine Pause“, „stop the timer“Gleich

Deaktivieren

Entferne den Hook-Block aus ~/.claude/settings.json. Die Skill-Dateien können bleiben; ohne den eingebundenen Hook sind sie wirkungslos.

Installation

  1. Kopiere break-time/ nach ~/.claude/skills/break-time/.
  2. Füge den Hook-Block aus example-settings.json in deine ~/.claude/settings.json ein (die Datei existiert bereits; füge hinzu, überschreibe nicht).
  3. Starte Claude Code neu, damit die Ausführungsumgebung den neuen Hook erkennt.
  4. Fertig. Der Hook läuft ab sofort bei jeder Eingabe.

Eine vollständige Einsteiger-Anleitung findest du in HOOKS-101.md.

Wie der Hook funktioniert (mechanisch)

  1. Du sendest eine Eingabe.
  2. Die Ausführungsumgebung ruft bash ~/.claude/skills/break-time/scripts/check_break.sh auf, bevor Claude die Eingabe sieht.
  3. Der Hook liest ~/.claude/break-time.state (eine flache Schlüssel-Wert-Datei), berechnet die verstrichene Zeit und entscheidet, ob ein Schwellenwert überschritten wurde.
  4. Wenn ein Schwellenwert ausgelöst wird, gibt der Hook einen <system-reminder>-Block auf der Standardausgabe aus. Die Ausführungsumgebung fängt die Standardausgabe ab und fügt sie als zusätzlichen Kontext für Claudes nächste Antwort ein.
  5. Claude sieht die Erinnerung und baut sie in seine Antwort ein: „Übrigens, du bist jetzt seit 90 Minuten konzentriert bei der Sache – steh auf und geh fünf Minuten, bevor wir weitermachen. Nun zu deiner Frage…“
  6. Jeder ausgelöste Schwellenwert wird in der Zustandsdatei vermerkt, damit er nicht erneut feuert, bis die aktive Sitzung zurückgesetzt wird.

Konfiguration

Zustands- und Konfigurationsdateien liegen in ~/.claude/:

  • break-time.state – Laufzeitstatus (session_start, ausgelöste Schwellenwerte, Stummschaltung)
  • break-time.conf – optionale Benutzerkonfiguration (Schwellenwerte, Leerlaufzeit, Nachrichtenstil)

Wenn break-time.conf fehlt, werden Standardwerte verwendet:

THRESHOLDS="45 90 120"   # Minuten – wann erinnert werden soll
IDLE_GAP=10              # Minuten Leerlauf = neue Sitzung
STYLE=friendly           # friendly | aggressive | poetic

STYLE=poetic macht die Erinnerung zu einem Haiku (skillübergreifende Liebeserklärung an poet-commit).

Sicherheitsvorkehrungen

  • Blockiert niemals eine Eingabe. Der Hook beendet sich immer mit Exit-Code 0 – falls er fehlschlägt, wird deine Arbeit nicht beeinträchtigt.
  • Protokolliert immer in eine Datei (~/.claude/break-time.log), damit eine Fehlersuche möglich ist, ohne Fehler direkt anzuzeigen.
  • Begrenzte Ausgabe. Die Erinnerung ist ein kurzer Absatz. Überschwemmt niemals den Kontext.
  • Stummschaltung wird immer beachtet. Wenn der Benutzer stummgeschaltet hat, zeichnet der Hook zwar die Zeit auf, gibt aber nichts aus.
  • Keine Netzwerkaufrufe. Reine lokale Datei-E/A. Verzögert niemals die Eingabe.

Dateien in diesem Skill

  • SKILL.md – diese Datei
  • HOOKS-101.md – eigenständiges Tutorial zum Schreiben von Hooks (veröffentlichbar)
  • example-settings.json – copy-paste-fähige Hook-Konfiguration für ~/.claude/settings.json
  • scripts/check_break.sh – der Hook selbst
  • scripts/snooze.sh – Erinnerungen für N Minuten stummschalten
  • scripts/reset.sh – Timer der aktiven Sitzung zurücksetzen
  • scripts/state.sh – aktuellen Status ausgeben (wird von /break verwendet)
  • README.md – kurze Installationsanleitung

Verwandte Skills