Comment by me551ah
7 hours ago
Claude is also weird for being the only coding assistant that for some reason doesn't support AGENTS.md. Codex, Amp, Cursor all of them support it and read from it, but not claude which forces it's users to use CLAUDE.md instead.
The issue is the higest voted issue on their gitlab repo: https://github.com/anthropics/claude-code/issues/6235
My CLAUDE.md is just:
And Claude processes it just fine.
(I see that it's a common workaround, and there's a comment in the above link saying just this: https://github.com/anthropics/claude-code/issues/6235#issuec...)
It's a hassle having to add it to every repo that I use Claude with though, and I often use other models and harnesses too for the more trivial tasks.
I beg people to learn what symlinks are. The fact that "put @AGENTS.md in there" is a "common workaround" shows why programmers (good ones at least) are not going anywhere soon.
I used to use a symlink but was concerned that Claude might see the presence of an "AGENTS.md" file (in e.g, a "List Files" tool call output or from a direct `ls`), be curious and attempt to read it directly (not knowing that it's the same as the "CLAUDE.md" file auto-injected by the harness), and essentially double the token impact / context bloat. Indeed, I did some local experimentation and noticed this was the case, which is why I switched to the explicit "@AGENTS.md" approach.
So perhaps there's no need to be rude about it :)
Good programmers know symlinks are not portable
1 reply →
One bonus to this approach is that I can add Claude Code-specific stuff in there, that I wouldn't need for other harnesses.
Symlinks aren’t portable.
Symlinks are a pain if you're on Windows, I'd rather not bother with them.
1 reply →
I'm pretty sure some agent harnesses read both files when present, so this @ "aliasing" is more token efficient.
CLAUDE.md has been incredibly successful for them advertising wise. I wouldn’t expect them to admit AGENTS.md exists anytime soon.
Literally trying to use file naming to build a moat. “We can’t switch to Cursor, we’d have to rename all of our files from CLAUDE.md to AGENTS.md!”
So there's this amazing thing called a symlink
Gee, I wonder why that is. Do you think Anthropic’s Claude Code team are just trying to protect humanity somehow? Maybe our mortal brains just can’t comprehend the damage that supporting a non-Claude-branded standard might do...
> Be kind. Don't be snarky. Converse curiously; don't cross-examine. Edit out swipes.
https://news.ycombinator.com/newsguidelines.html
I created a Claude Code plugin to load AGENTS.md. Uses symlinks but it’s better than no support.
https://github.com/hexsprite/claude-agents-md
Claude Code supports native imports: `@AGENTS.md`
To be fair if you can do it through some kind of plugin or skill it does spare you having a CLAUDE.md of `@AGENTS.md` in every repo individually.
You two realise that symlinks exist, right? That you need neither a "plugin" nor a "native import"?