What It Is
Terminology · LLM Engineering · Source Verification · AI · ExplainerTratopedia · 16 Aug 2026
Fourth of five · the one that never settled
Everyone Agrees You Should Write Loops. Nobody Agrees What One Is.
In the first week of June 2026 two well-known engineers said, four days apart, that you should stop prompting coding agents and write loops instead. Neither said what a loop was. In the three weeks that followed, six people answered that question — and they answered it about five different things: a person's working habits, a recursive goal, a small program, two nested machines, a taxonomy of triggers, and a product cycle that runs for weeks and contains customers. Anthropic's own explainer opens by admitting it: if you spend some time on X trying to pin down what a loop actually is, you'll come across multiple different answers. The three words before this one in the series each moved somewhere. This one never arrived.
Four weeks, and it never converged Two instructions, one concession, and the framing that dissolves most of the confusion.
- 6answers to “what is a loop”, published in the 29 days after the phrase went round
- 5different kinds of thing those six answers are about — a habit, a goal, a program, two machines, an organisation
- 4years the loop itself has existed. ReAct is from 2022; what is new is who does the prompting
- 0measurements found comparing a loop against prompting, with the agent held fixed
Boris Cherny · 2 Jun 2026
“My job is to write loops”
- In full: I don't prompt Claude anymore. I have loops that are running. They're the ones that are prompting Claude and figuring out what to do. The creator of Claude Code, on stage at a WorkOS event.
- What he lays out is three stages of a career: hand-coding with autocomplete, then five to ten Claude sessions prompted by hand, then writing the loops instead.
- This project has not heard the talk. The wording arrives through a write-up and is repeated by two others — corroboration of the words, not of what surrounded them.
Peter Steinberger · 7 Jun 2026
“You should be designing loops that prompt your agents”
- It opens “here's your monthly reminder” — so this is not the first time he said it, only the time it caught. Nothing consulted dates the earlier ones.
- He had given a talk on the same idea four days earlier, at Microsoft Build: build the thing that builds the thing. Cherny's remarks were the day before that.
- It is an instruction, not a definition. It says what to stop doing and what to do instead, and never says what the thing is.
The Claude Code team · 30 Jun 2026
“You'll come across multiple different answers”
- In full: if you spend some time on X trying to pin down what a loop actually is, you'll come across multiple different answers. This is Anthropic — whose own product lead is half the reason the phrase exists.
- Their own: agents repeating cycles of work until a stop condition is met, sorted into four kinds by how each is triggered and how it stops.
- They treat the disagreement as noise on X to be cleared up. This page treats it as a property of the term — because the answers are not competing descriptions of one thing.
Armin Ronacher · 23 Jun 2026
There are two loops
- There is already an agent loop inside every coding agent — the model calls a tool, reads the result, edits a file, runs tests. The other loop is the harness level loop: the loop outside the agent loop.
- And, flatly: that loop is also not new. He dates the outer one to “early Claude Code days”.
- His description of what it does is the best one found: the task stays alive beyond the point where the model would normally have said “I am done”.
How firm is each of these? This is the thinnest-sourced article in the series, and the table says where.
| How firm | What | On what |
|---|---|---|
| Read at source | “Multiple different answers”; the four loop types; not all tasks require complex loops | The Claude Code team, claude.com, 30 Jun 2026 |
| Read at source | The two-loop distinction, and “that loop is also not new” | Armin Ronacher, lucumr.pocoo.org, 23 Jun 2026 |
| Read at source | Osmani's definition — and his scepticism in the same paragraph | addyosmani.com, 7 Jun 2026, hours after the post it responds to |
| Supplied, not fetched | The inner loop decomposed, first-party, five months before the phrase | OpenAI's Michael Bolin, 23 Jan 2026. PDF supplied by djTratoh; openai.com returns 403 |
| Second-hand | Cherny's words. The talk was not heard here; the quotation comes through a write-up and is repeated by two more | Ezekiel Njuguna on Medium, 8 Jun 2026. PDF supplied by djTratoh; medium.com returns 403 |
| Second-hand | Ng's three loops, including the “context advantage” phrasing | Trade reporting quoting his X posts. The posts themselves were not read |
| Not read | What Steinberger's Build talk actually says. Only the session page was captured — and its body is a machine-generated summary | The video and transcript were both offered on that page and neither was retrieved |
| This page's reading | That the six answers describe five different kinds of thing, and that this is the term's property rather than a passing muddle | Assembled from all of the above. No source says it; the nearest concedes only that answers differ |
Timeline
Four years of the loop, four weeks of the argument The mechanism is old. Everything contested here happened in June 2026.
- Oct 2022The inner loop, as a paper. ReAct has a model alternate between reasoning and acting: reason, act, observe, repeat. Every coding agent since runs that cycle, and the previous article in this series found both Wikipedia and Databricks tracing the pattern here.
- late 2025“Closing the loop” catches on. Andrew Ng dates it here: giving an agent a specification and a set of evals and letting it iterate until the code passes. It has been a game changer in enabling coding agents to work longer productively without human intervention.
- 23 Jan 2026The inner loop, decomposed by the people who ship one. OpenAI's Michael Bolin publishes Unrolling the Codex agent loop — the core logic orchestrating the user, the model and the tools. Five months before anyone calls any of this “loop engineering”, and it places the loop inside the harness.
- 2 Jun 2026The first utterance. Boris Cherny, who created Claude Code, tells a WorkOS event that he no longer prompts Claude at all: I have loops that are running. They're the ones that are prompting Claude… My job is to write loops. He is describing his own working life, and he does not define the word.
- 3 Jun 2026The next day, on a bigger stage. Peter Steinberger gives a Microsoft Build breakout titled Build the thing that builds the thing, arguing that the question is no longer how to go faster yourself but how to help your agents close feedback loops more efficiently. He does not use the phrase either.
- 7 Jun 2026The post that travels. Steinberger on X: here's your monthly reminder that you shouldn't be prompting coding agents anymore. You should be designing loops that prompt your agents. 8.5 million views. “Monthly reminder” — so it is not the first time, only the time it caught.
- 7 Jun 2026Hours later, the name. Addy Osmani writes it up: loop engineering is replacing yourself as the person who prompts the agent. In the same paragraph he adds it's still early, I'm skeptical, and warns about token costs. Like the previous article's coinage, this one is named by someone hedging.
- 8 Jun 2026Someone writes down what it means. A Medium write-up of Cherny's remarks supplies the plainest account collected: a small program you write that prompts the coding agent on your behalf, reads what the agent produced, decides whether the task is complete, and if not, prompts the agent again. The model becomes a subroutine called by your program.
- 23 Jun 2026The distinction nobody else drew. Armin Ronacher points out that there are two loops, not one — the agent loop inside every coding agent, and the harness loop outside it — and that neither is new. Most of the month's confusion is people naming different ones.
- 30 Jun 2026The vendor tries to settle it, and concedes the problem first. The Claude Code team define a loop as agents repeating cycles of work until a stop condition is met, in four kinds — turn-based, goal-based, time-based, proactive — after opening with the admission that X gives multiple different answers. They also say: not all tasks require complex loops.
- 1 Jul 2026And a framing that is not about machines at all. Trade reporting relays Andrew Ng's three loops: agentic coding, developer feedback, and external feedback — the last one running for days or weeks and containing friends, alpha testers and A/B tests. His claim about the human's role is the sharpest line of the month: not “taste” but a context advantage.
The Argument
Six answers, five different questions They are not competing descriptions of one thing.
Line the six accounts up and the trouble is not that they disagree. It is that they are answers to different questions.
Cherny's loop is a fact about a person: three stages of his own working life, ending with him writing loops instead of prompts. Osmani's is a goal — “a recursive goal where you define a purpose and the AI iterates until complete”. The Medium write-up's is a program, and the most concrete of them: something you write that prompts, reads, judges and re-prompts, until the model is a subroutine your code calls. Ronacher's is two machines, one nested in the other. Anthropic's is a taxonomy, sorted by how a loop starts and how it stops. And Ng's is an organisation: three loops, of which the outermost takes weeks and contains customers.
Hold the two extremes together. Anthropic's turn-based loop is one prompt and one reply — every prompt you send starts a manual loop with you directing each turn. Ng's third loop is an A/B test that reshapes the product vision over a fortnight. Both are, in June 2026, called “the loop”. No amount of care in reading reconciles those into a single object, and this page will not write the sentence that pretends they do. It would be easy — a loop is a program that re-prompts an agent until a stop condition is met — and it would be this page's invention, not anybody's published position.
The one framing that actually dissolves the confusion is the least repeated. Ronacher's point is that a coding agent already contains a loop: model calls a tool, reads the result, edits a file, runs the tests. That inner loop is four years old and OpenAI decomposed it in January. What people started talking about in June is the loop outside that one — the thing that catches the agent as it stops and decides the job is not finished. Most of the month's arguing is people naming different loops and assuming they are naming the same one.
Which points at what the term actually contains. Nothing technical here is new, and every source says so: Ronacher — “that loop is also not new”; Ng dating closed loops to late 2025; Bolin shipping a decomposition in January; ReAct in 2022. What changed is who does the prompting. That is a change in a job, not in a technology, which is why the definitions scatter — people describe the part of the job they can see, and a Claude Code lead, a framework author and a course founder do not see the same part.
One more thing is worth noticing, because it is now the second time in this series. Osmani names loop engineering and calls himself sceptical of it in the same paragraph. Mitchell Hashimoto coined “harness engineering” saying he would rather adopt someone else's word if one existed. Neither of the last two terms in this series was launched by a believer — which is not how the discourse around them reads three weeks later.
What Others Add
What a loop actually does On the mechanism, unlike the definition, the sources agree.
- 1Put the work in a queueNot a prompt you type — a list something else picks from. Cherny's version reads his GitHub, Slack and Twitter to decide what belongs on it; Steinberger's reads an issue tracker that had grown past ten thousand entries.
- 2Let the agent attempt it, and stopThis is the inner loop, and it needs no help: the model calls a tool, reads the result, edits a file, runs the tests, and eventually says it is done. Everything interesting happens after that sentence.
- 3Disagree with “I am done”The harness decides whether that was actually the end. Ronacher's list of what it can do next is the whole trick: continue the same session, inject another message, start a fresh session with modified context, or send the task to another machine. The task stays alive past the point the model would have ended it.
- 4Make the check quantitativeThis is the load-bearing part and every source says so. Anthropic's rule: the more quantitative the checks are, the easier it is for Claude to self-verify. Their worked example refuses to call a UI change done on a successful edit alone — start the server, click the thing, screenshot before and after, require zero new console errors.
- 5Then use the smallest loop that worksFrom the vendor with most to gain from the opposite advice: not all tasks require complex loops; start with the simplest solution and use these patterns selectively. Osmani's warning is the same one in money terms — token costs vary wildly, and an unattended loop spends them whether or not it is making progress.
The only numbers anyone published Two of them, and neither measures what the field claims.
| The claim | What it counts | What it does not show |
|---|---|---|
| Close Reaper | Steinberger's issue-triage loop closed around 15,000 GitHub issues autonomously, on a backlog reported as “beyond 10,000” | Actions taken, not correct actions. Nothing establishes that those issues should have been closed. And the two figures only reconcile if the backlog kept growing while it ran, which the source does not say |
| “A couple hundred agents” | Cherny's description of his own setup — agents reading GitHub, Slack and Twitter to decide what to build next | A scale, not a result. It says how much is running, not whether what it produced was better than what one prompted session would have produced |
| Nothing else | No comparison was found that holds the agent fixed and varies the loop. | The previous article in this series had one — same model, different harness, a public leaderboard. This subject has no equivalent, and that is worth knowing before rebuilding your workflow around it |
It is worth being exact about how thin the evidence is here, because the enthusiasm is not thin at all.
The previous article in this series ended on a real measurement: the same model, Opus 4.6, scoring far apart across different harnesses on a public leaderboard belonging to neither party. That is the shape a claim about engineering needs — hold the thing you are not testing still. Nothing of that shape exists for loops. What exists is one count of issues closed, one description of a personal setup, and a great deal of confident advice.
That does not make the advice wrong. The mechanism is plainly real, the people giving it are building things at a scale that would be tedious to fake, and the argument for it is sound on its face: an agent that stops when it believes it is finished will stop early, and something has to disagree with it. But “sound on its face” is where this subject currently is, and both the vendor and the man who named it say so in their own words — start with the simplest thing, watch the token costs, it is still early.
There is one more asymmetry worth naming. A loop that gets it wrong does not fail the way a bad prompt fails. A bad prompt wastes a minute and you see the result. A loop running unattended against a backlog of ten thousand issues does fifteen thousand things while you sleep, and the number it reports is how many it did — not how many it should have done. Every source that discusses verification is really discussing that gap.
Conclusion
What to take from this Four things, in the order they matter.
Ask which loop, and you have understood most of it
A coding agent already contains a loop — reason, act, observe — and it is four years old. What June 2026 was about is the loop outside that one: the thing that catches the agent when it says it is finished and decides it is not. Ronacher is the only source that draws the line, and almost every confused conversation about this subject is two people naming different loops.
The word names a change of job, not a technology
Every source agrees nothing technical here is new — ReAct is 2022, OpenAI decomposed the inner loop in January, Ronacher says the outer one is not new either. What changed is that the human stops being the one who writes the prompts. That is why the definitions scattered: people described the part of the job they could see, and a product lead, a framework author and a course founder do not see the same part.
Nobody has measured it
There is no comparison holding the agent fixed and varying the loop — no equivalent of the same-model-different-harness result the previous article turned on. The two numbers in circulation count actions taken and agents running, neither of which is a result. The advice may well be right; it is currently untested, and the vendor and the man who named it both say to start small.
Twice now, the person naming it was the one hedging
Osmani writes “loop engineering” and “I'm skeptical” in the same paragraph. Mitchell Hashimoto coined “harness engineering” saying he would rather use somebody else's word if one existed. Three weeks later neither hedge survives in how the terms are repeated — which is a fact about how vocabulary spreads, and worth carrying into whatever the fifth word turns out to be.