# Bounded Loops

> Nutze das vor jeder Schleife, die retrien, pollen, iterieren oder eine externe API rufen kann — Agent-Loops, Repair-Loops, Scheduler, Watcher. Deklariert Budget-Obergrenzen, checkpointet bei Erschöpfung und macht Hämmern strukturell unmöglich. Trigger words: bounded loop, budget, ceiling, retry, backoff, rate limit, throttle, kill-switch, checkpoint, runaway, infinite loop, spin, budget exhaustion, begrenzte Schleife, Obergrenze, Drosselung, Endlosschleife, Budget erschöpft.

- Skill: `tcuzzo/bounded-loops-2` (Agent Skill)
- Install (CLI): `npx skillmds@latest add tcuzzo/bounded-loops-2`
- Raw SKILL.md: https://api.skillmd.com/api/skills/tcuzzo/bounded-loops-2/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- License: MIT
- Author: Tcuzzo (https://skillmd.com/u/tcuzzo)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/tcuzzo/bounded-loops-2

---


# Bounded Loops
**Effort:** free — Obergrenzen und Checkpoints, deklariert bevor die Schleife startet; senkt die Kosten unterm Strich. Beseitigt: davonlaufende Schleifen-Ausgaben — verbranntes Kontingent, per 429 blockierte Routen und Fortschritt, den ein Absturz auslöscht.

Eine unbegrenzte Schleife ist der teuerste Bug, den ein Agent ausliefern kann. Sie
verbrennt Budget, hämmert Provider, bis die dich sperren, und versteckt ihr eigenes
Scheitern im Kreiseln. Jede Schleife bekommt eine Obergrenze, einen Checkpoint und
einen lauten Weg zu sterben — bevor sie startet.

## Wann einsetzen

Vor dem Start jeder Schleife: ein Repair-Loop, ein Retry-Wrapper, ein Poller, ein
Scheduler, ein mehrstufiger autonomer Lauf — alles, was einen Call neu absetzen
oder einen Schritt neu versuchen kann.

## Die Schritte

1. **Deklariere zuerst das Budget.** Tokens, Kosten, Wanduhrzeit und maximale
   Versuche — aufgeschrieben vor der ersten Iteration. Eine Schleife ohne
   deklariertes Budget ist per Definition unbegrenzt und startet nicht.
2. **Deckle die inneren Runden.** Eine innere Episode (ein LLM-/Tool-Zyklus an
   einem Problem) bekommt eine kleine, feste Rundengrenze (etwa 4). Die Grenze
   begrenzt die Episode, nicht die Mission — unfertige Arbeit wandert nach oben,
   sie mahlt nicht weiter.
3. **Checkpointe jede Iteration.** Dauerhafter Zustand auf der Platte —
   Run-Manifest, Evidenz-Log, aktueller Schritt — nie Chat-Gedächtnis. Jeder (auch
   eine frische Session) kann vom letzten Checkpoint weitermachen.
4. **Bei Erschöpfung: checkpointen, dann eskalieren.** Übergib den Checkpoint an
   die äußere Schleife oder an deinen Menschen — mit dem, was getan ist, was fehlt,
   und dem Blocker. Fahre nie still über ein Budget hinaus. Stoppe auch nie still —
   Erschöpfung ist laut.
5. **Respektiere jede externe API.** Lerne vor dem ersten Call Rate-Limit und
   Quota des Providers; wenn unbekannt, behandle sie als strikt — ein Call, weiter
   Abstand — bis gemessen. Drossle jeden Call, cache und verwende Antworten
   wieder, und halte eine harte Obergrenze pro Zeitfenster.
6. **Weiche bei Gegenwind exponentiell zurück.** Ein 429 oder 503 heißt: warten,
   dann länger warten. Null Sofort-Retries auf denselben Endpoint. Ein enger Retry
   gegen einen Endpoint ist genau die Art, wie eine funktionierende Route stirbt:
   Er verbrennt Quota und kann deine ganze Egress-Adresse sperren lassen.
7. **Trage einen lauten, begrenzten Kill-Switch.** Jede Schleife, die einen Call
   neu absetzen kann, hat eine maximale Versuchszahl; ist sie erreicht, stoppt die
   Schleife LAUT mit der Evidenz — nie ein endloses oder stilles Kreiseln.
8. **Stoppen und Einreihen nur an sicheren Punkten.** Stopp heißt
   Checkpoint-dann-Abbruch. Neue Arbeit reiht sich für den nächsten sicheren Punkt
   ein (eine Zustandsgrenze zwischen Schritten) — nie mitten im Schritt injiziert.
   Eine Schleifeninstanz, ein Schreiber, atomare Zustands-Writes.

## Harte Regeln (woran dieser Skill scheitert)

- Eine Schleife, die ohne deklariertes Token-/Kosten-/Zeit-/Versuchs-Budget startet.
- Über ein erschöpftes Budget hinaus weitermachen, still oder nicht, ohne zu
  eskalieren.
- Ein Sofort-Retry auf denselben Endpoint, oder irgendein Retry-Pfad ohne Backoff.
- Eine Retry-Schleife ohne Versuchsdeckel, oder ein Deckel, der beim Erreichen
  leise versagt.
- Fortschrittszustand nur im Konversationsgedächtnis — ein Crash löscht den Lauf.
- Zwei Schleifeninstanzen, die denselben Zustand schreiben, oder nicht-atomare
  Zustands-Writes.
- Der Schleife entkommen, indem sie ihre eigenen Exit-Checks schwächt — ein Grün,
  das durch Latte-Senken, Daten-Löschen oder Fehler-Schlucken entsteht, ist ein
  Fake Green, kein Exit.

## Passt gut zu

- [optimus](../optimus/SKILL.md) — den Boden laden, bevor irgendeine Schleife startet.
- [repair-loop](../repair-loop/SKILL.md) — der Hauptabnehmer dieser Obergrenzen.
- [fleet-ladder](../fleet-ladder/SKILL.md) — begrenzter Fallback über Modelle hinweg, statt eins zu hämmern.
- [session-handoff](../session-handoff/SKILL.md) — das, worin ein Checkpoint eskaliert.

