feedback-loops
Skill0 starsChanged 24 days agoMITView on GitHub
Feedback loops — a defect crashes loudly at the point it is detected; only an expected failure gets a retry or fallback. Use when writing or reviewing error handling, catch blocks, default values, fallbacks, retries, or setup, CI and infrastructure scripts, and whenever deciding whether code should crash or recover.
2 other projects use a version of this.
Adopted by
Most recently taken up by
- Liberty91LTD/cti-skillstheir own version, first seen Sep 30, 2026
- deciqAI/knowledge-skillstheir own version, first seen Jul 7, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- Liberty91LTD/cti-skills★ 35same name
- deciqAI/knowledge-skills★ 13same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository2 other files it gives its agents.
- dependency-gardeningSkill
- keyword-first-seoSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 1 is distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
Every failure path is one of two kinds.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Feedback loops
An agent gets better only as fast as reality tells it that it is wrong. A crash at the point of the bug, with a message that names the cause, closes the loop: read it, fix it, rerun, all in minutes. That loop is what makes agentic work compound. Every bug that surfaces this way is cheap.
Fake resilience cuts the loop. A fallback, a default value, a caught-and-logged error or a silent retry turns a bug into wrong behaviour that surfaces later, somewhere else. By then the evidence is buried in plausible-looking output, and someone has to dig through it to find the cause.
Classify every failure
Every failure path is one of two kinds. Decide which, explicitly, each time you write or review one:
- Defect. The code, its configuration or its environment is not what we assumed. Examples: an impossible state, missing configuration, a pinned tool absent from the image, an unknown enum value, a schema mismatch, a broken invariant. Crash, at the point of detection. This is about 99% of failure paths.
- Expected failure. Something the world may do to correct code: a network timeout, a third-party 5xx, invalid user input, a contended lock, a rate limit. Recover, with a bounded retry or a typed error the caller branches on.
To tell them apart, name the real event that triggers the path in a correctly working system. If you can name one, it is an expected failure. If you can't, it is a defect. "It might happen" is not an event.
A good crash
- It fails where the wrong assumption is first visible, not three layers later.
- Its message states what was expected, what was found, and what to change.
- The state that explains the next drift is logged on every run, even successful ones. That way drift shows up before it breaks anything.
A good recovery
- It covers only the expected failure you named; every other error still crashes.
- It is bounded: timeouts, capped attempts, exponential backoff with jitter.
- It retries at one layer only. Retries multiply across layers: five layers with three retries each send 243 times the load to the bottom.
- It retries only idempotent operations.
- It is visible: an exhausted retry crashes, and a fallback that fires is logged.
Fake resilience to remove on sight
Each of these turns a defect into silence. Replace it with a crash, or narrow it to the one expected failure it was meant for:
- a catch that logs and continues;
- a default for a value that must exist;
- "if it's missing, install, download or create it";
- a retry around a deterministic error;
- an empty result returned on failure;
- a type widened to accept the impossible state.
Sources
- James Shore, "Fail Fast", IEEE Software (2004): failing immediately and visibly shortens debugging, while workarounds and defaults make software fail mysteriously later.
- Joe Armstrong, "Making reliable distributed systems in the presence of software errors" (2003): "let it crash"; a failing process stops and recovery happens elsewhere, instead of limping on.
- George Candea and Armando Fox, "Crash-Only Software", HotOS IX (2003): making crash and recovery the only paths keeps them exercised and trustworthy.
- Marc Brooker, "Timeouts, retries, and backoff with jitter", Amazon Builders' Library: retry only transient failures; bound retries with backoff and jitter; require idempotency; retries compound across layers.
- Anthropic, "Building effective agents": agents depend on "ground truth from the environment" at each step, such as tool results and tests.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

