The Bestiary of Error Messages
Liber Monstrorum Computatrorum
The Rate-Limit Hydra
Hydra quadringentivigintinove
HTTP 429 Too Many RequestsThe Hydra is known by its sign: `HTTP 429 Too Many Requests`.
Click to reveal lore
The Rate-Limit Hydra
Habitat
The Hydra appears most often in the lairs of the ambitious — those who have automated dozens of parallel Claude Code sessions, who have written looping scripts without sleep intervals, who have composed a single message of such tremendous length that the model must labor for minutes to reply, only to receive another of equal enormity the moment it finishes.
Signs of Approach
The session begins to lag. Responses take longer than expected. Then comes the first `429`, brushed off as a momentary inconvenience. The faithful prompt again. The `429` returns. They prompt again, faster, in frustration. The Hydra smiles with all of its heads.
How to Defeat It
Patience is the sword; efficiency is the shield. Implement exponential backoff in any automated tooling — wait 1 second, then 2, then 4, then 8, never hammering the same endpoint repeatedly. Prefer a single, well-constructed prompt over three hasty ones. Use `max_tokens` constraints to limit response length when brevity suffices. Know that the Hydra cannot be slain by force; it can only be outlasted.
Click to return
The Hallucination Chimera
Chimaera verisimilis
Of all the beasts in this bestiary, none is more fearsome than the Chimera, for it does not look like a beast.
Click to reveal lore
The Hallucination Chimera
Habitat
The Chimera flourishes wherever verification is absent. It nests in codebases the practitioner has not examined, in library versions the practitioner has not checked, in documentation the practitioner has trusted rather than read. It is especially common when one asks about edge cases in obscure dependencies, or when one asks the model to recall something from the distant past of its training data.
Signs of Approach
The response comes quickly and with unusual confidence. There are no hedges, no "you may wish to verify this," no admission of uncertainty. The code looks plausible. This is precisely the sign. A beast that looks too right is not right.
How to Defeat It
Run the code. Run the tests. Read the actual documentation. When Claude cites a function, search the source. When Claude describes a file's contents, open the file. The Chimera cannot survive contact with reality — but only if you seek that contact. The practitioner who trusts without verifying has not defeated the Chimera; they have adopted it as a pet, and it will destroy their production environment in its own time.
Click to return
The Context Overflow Leviathan
Leviathan contextualis
The Leviathan begins as a conversation.
Click to reveal lore
The Context Overflow Leviathan
Habitat
Long-running Claude Code sessions. Projects where the practitioner has instructed the model to read dozens of files in sequence, accumulating each one into the window. Debugging efforts that have required many rounds of tool use — read, edit, bash, read again — each tool call adding its output to the growing mass. The Leviathan does not require a single catastrophic act; it is assembled patiently, one file read at a time, over the course of an ambitious afternoon.
Signs of Approach
The model begins to forget things established early in the session. It contradicts earlier decisions. It asks about the project goal as if encountering it fresh. The responses grow vague. The Leviathan is already inside the context window; these are its movements.
How to Defeat It
Invoke `/compact` to compress the session history into a summary, preserving intent while shedding accumulated weight. For severe infestations, use `/clear` and begin fresh with only the essential context — a tight problem statement, the specific files relevant to the immediate task, the current state of the work. Maintain a `CLAUDE.md` file that persists knowledge across sessions so that compaction does not destroy hard-won understanding. The disciplined practitioner scopes each task narrowly, so that the model reads only what it needs and no more; never opens the whole codebase when one module will do.
Click to return
The Infinite Loop Ouroboros
Ouroboros correctivus
The Ouroboros is the snake that eats its own tail.
Click to reveal lore
The Infinite Loop Ouroboros
Habitat
Complex debugging sessions without tests. Refactoring efforts where the desired end state is not clearly specified. Any prompt that says "just fix it" without explaining what "fixed" means.
Signs of Approach
The same error appears in different forms across successive attempts. The diff grows larger with each iteration without the underlying problem resolving. The model begins adding comments like `// fixed` to code that remains broken.
How to Defeat It
Break the loop with `/clear`. Begin again. This time, define "fixed" precisely before asking for the fix — write a failing test first, then ask Claude to make it pass. A test gives the Ouroboros nowhere to go: either the test passes, which breaks the loop, or it does not, which is honest. The Ouroboros cannot survive a clear definition of success.
Click to return
The API Outage Kraken
Kraken quingenti viginti novem
HTTP 529The Kraken is `HTTP 529` — the service is overloaded.
Click to reveal lore
The API Outage Kraken
Habitat
The Kraken appears without ecological explanation. It has been sighted on otherwise unremarkable afternoons. It favors periods of high global demand, immediately before major product announcements, and at the precise moment one's CI/CD pipeline is running unattended.
Signs of Approach
None. This is the Kraken's power. It gives no warning.
How to Defeat It
One does not defeat the Kraken. One survives it. Implement retry logic with jitter in all automated workflows. Design pipelines to be resumable, not merely restartable. The practitioner who can say "when this fails, it will pick up where it left off" has made themselves resilient to the Kraken. The practitioner who cannot say this has built a very expensive single point of failure. Monitor `status.anthropic.com` and make peace with the impermanence of uptime.
Click to return
The Stale Covenant Wraith
Spectrum foederis antiqui
The Wraith is the ghost of a `CLAUDE.
Click to reveal lore
The Stale Covenant Wraith
Habitat
Any project more than three months old whose `CLAUDE.md` has not been updated. Fast-moving teams. Projects that have been refactored, renamed, or restructured without updating their AI context documentation.
Signs of Approach
The model confidently runs a command that no longer exists. It writes to a path that has been moved. It respects a constraint that was lifted last sprint.
How to Defeat It
Treat `CLAUDE.md` as living documentation. Assign its maintenance to the same workflow as documentation updates. When a significant architectural decision is made, update the file that day. The Wraith has no power over a covenant that is kept current. Review your `CLAUDE.md` before beginning any major session, and correct whatever no longer corresponds to reality.
Click to return
The Permission Siren
Siren permissionis
The Siren is beautiful.
Click to reveal lore
The Permission Siren
Habitat
Automated workflows. Tired late-night sessions. Any context where the practitioner has learned to treat permission prompts as friction rather than information.
Signs of Approach
A growing habit of pressing Enter before the prompt has finished rendering.
How to Defeat It
Read every permission prompt completely before responding. The moment of confirmation is a moment of power — the last checkpoint before an action becomes real. `--dangerouslySkipPermissions` is the Siren's most seductive song; hear it and be on guard. Grant broad permissions only in sandboxed environments where mistakes can be undone.
Click to return
The Scope Creep Basilisk
Basiliscus scopus expansivus
The Basilisk begins as a small task — "add a button," "fix this function," "update the color.
Click to reveal lore
The Scope Creep Basilisk
Habitat
Open-ended prompts. Requests that begin with the word "just." Any session where the practitioner has not clearly bounded the scope of the desired work.
Signs of Approach
The model's response is longer than expected. It includes work the practitioner did not ask for, but which seems related. Each completed sub-task reveals three more.
How to Defeat It
Name the edges of the task explicitly. "Add a button. Do not modify any other component. Do not introduce new dependencies. If you identify related improvements, list them as separate recommendations rather than implementing them." A bounded task cannot expand. The Basilisk's gaze is powerless against a practitioner who has already drawn a circle around what is in scope.
Click to return
The Dependency Minotaur
Minotaurus node-modulorum
The Minotaur lives in the labyrinth of `node_modules`, in the depths of `pip` dependency trees, in the shadowed corridors of `cargo`'s lockfile.
Click to reveal lore
The Dependency Minotaur
Habitat
Projects with many dependencies, old lockfiles, and multiple contributors who have installed packages without coordinating. Legacy codebases maintained on modern toolchains.
Signs of Approach
`npm install` begins to warn. Then `--legacy-peer-deps` appears in the documentation. Then the warnings become errors. The Minotaur has been present for some time; the signs have merely been overlooked.
How to Defeat It
Thread through the maze methodically. Use `npm ls <package>` or `pip show <package>` to understand the dependency graph before modifying it. Pin versions in lockfiles and commit them. When a dependency must be removed, trace all of its dependents first. The practitioner who understands the labyrinth's map can navigate to the Minotaur and address it directly; the practitioner who runs `rm -rf node_modules && npm install` has merely rebuilt the labyrinth at random and may or may not have placed the Minotaur in a different room.
Click to return
The Merge Conflict Cerberus
Cerberus conflictus tripartitus
Cerberus guards the gates of `main` with three heads, each representing a divergent version of the truth: what is in your branch, what is in the base, and what was agreed upon at the point of divergence.
Click to reveal lore
The Merge Conflict Cerberus
Habitat
Long-lived feature branches. Teams that do not integrate frequently. Any branch that has existed long enough for `main` to have moved substantially beneath it.
Signs of Approach
The branch has not been rebased in many days. The PR description says "this is a big one." Multiple people have modified the same files independently.
How to Defeat It
Do not wait for Cerberus to appear — tame it by merging or rebasing frequently, before the three heads have time to grow large and contradictory. When Cerberus does appear, address each conflict intentionally: read both versions, understand why they differ, choose or synthesize deliberately. Never resolve a merge conflict by accepting either side blindly without reading both. When Claude helps with merge conflicts, give it the full context of what both branches intended to accomplish — a Cerberus that understands the intent of both worlds can suggest a synthesis that honors them.
Click to return