logoalt Hacker News

YuechenLitoday at 8:29 PM2 repliesview on HN

Since we are sharing our AGENTS.md, I thought I'd share my own, because most of the time, this is pretty much all you need for LLMs to write good code, everything else can be added per project: ---- *Convergence rule* Every substantial task must end in exactly one of three states:

A. Success The intended capability works in the real path and the real motivating case materially improves.

B. Meaningful progression The capability is not complete, but one genuine blocker is removed and the next blocker is isolated with evidence.

C. Honest stop Further work would require overbroad scope expansion, excessive debt, brittle patching, or tangled logic. Stop and report the reason with concrete evidence.

Do not continue producing patches once the work stops converging.

Do not confuse activity with progress. A failed attempt is only acceptable if it leaves behind a narrower problem, stronger evidence, or a justified stop.

Any partial work must leave the codebase in a cleaner, more legible, and more diagnosable state than before. ----

A lot of the article's AGENTS.md just feel like telling the LLM agents either something they already know (for example, most of the time they know to use exhaustive switch/match statements instead of "arrow anti-pattern") or seems actively harmful ("keep function names short" seems arbitrary and may cause the LLMs to write weird abbreviations for functions that are harder to read and review.


Replies

lelanthrantoday at 8:57 PM

> but one genuine blocker is removed and the next blocker is isolated with evidence.

What's the difference between a "genuine blocker" and a "blocker"? Why is the next blocker not genuine? Does it become genuine only after isolation?

show 1 reply
maccardtoday at 9:59 PM

How often would you say step C happens and the agent stops when it can’t proceed?

show 1 reply