I feel like claude.md is like Asimov's laws of robotics. Whatever you write there ends up eventually messing up everything.
A bunch of these should be enforce with linting, that way people who still hand-craft code get the same kind of feedback, e.g. Always use {}, even on a one-line "if" statement. & Keep function names short. Less than 30 characters.<p>Then this one really is a pattern that creates a lot of churn:<p>- Add a small, to the point, comment to explain <i>what</i> the block does and <i>why</i>. Use examples when possible. Propose ASCII drawings to explain complete systems.<p>The what _is_ the code.
Just this one line in AGENTS.md has given better results to reduce if not eliminate verbosity and grandeur.<p>**Always use ASD-STE100 Simplified Technical English<p>Disclaimer: I saw this listed in some other HN post that I can' locate right away.
This is a problem that people mostly have to solve themselves. Like, I've been working with Claude for almost a year now and I have never once seen it write "Arrow Anti-Pattern" code. That, and much of the rest, would be fluff in my projects. Agent instructions are best learned from experience project-by-project.
Agents.md is such a ridiculous concept, just write good contributing docs and then optionally @ the file in whatever agetn file you use.<p>That way everyone benefits.