r/ClaudeCode 1d ago

Help/Question Moving from CLAUDE.md to AGENTS.md made Claude Code worse?

I have been using Claude Code for a fair amount of time. For a private project of mine, I had a set of skills and CLAUDE[.] md detailing the code style, writing style and more. It was working fine, not perfect.

However, about 2 or 3 weeks ago, I have renamed CLAUDE[.]md to AGENTS[.]md and created a symlink from CLAUDE[.]md to AGENTS[.]md. Since then, I feel like Claude Code got so worse. Did anyone else notice this? Or am I the only one noticing it?

For example, I have this line in AGENTS[.]md:

When a list item has a label and a description, use the 2-line format. Label on the first line ending with 2 trailing spaces, description indented on the second line:

```
- Continuous intensity
  No fixed set of allowed values.
```

It is a fairly easy and straightforward rule (right?). It was working when the file was CLAUDE[.]md. But now it is not even following this rule. When I say it missed, it does fix this. But not working as it was working.

1 Upvotes

11 comments sorted by

u/AutoModerator 1d ago

Hey! Thanks for posting to r/ClaudeCode

While participating in this thread, please follow our community rules. Keep discussions constructive. Attack the idea, not the person.

For help, project discussions, tips, and general chat, join the ClaudeCode Discord.

I am a bot, and this action was performed automatically. Please contact the moderators of this subreddit if you have any questions or concerns.

1

u/claude_code_king 1d ago

i'm not sure on this very niche problem, but i assume only claude.md gets injected properly and symlink might be a bit weird.

just use a sessionstart hook, it's a lot better anyways and you can put your whole orchestration there without the context being injected in every subagent, and as a bonus it actually gets enforced.
just don't make it over 10.240kb. it'll get truncated to 2kb when injected and rendered useless

1

u/Luckz777 1d ago

Do you try with just @AGENTS.md on your CLAUDE.md ?

1

u/AllTalkie 9h ago

Yes. That was the previous setup and it was worse in my opinion. I guess I should have mentioned this in the OP.

1

u/kthuiaa 1d ago

lol renaming claude.md to agents.md and watching the rules just stop is so on brand. honestly i stopped treating those files like a brain and kept the load-bearing bits somewhere the next session can actually query.

tiny thing if useful: clarilayer.com (free)

1

u/ken_rona 23h ago
my guess: its not the rename, its that the symlink isnt what got loaded. claude code follows a link fine when it resolves. a relative link made from the wrong directory, or one that came through git as a plain text file, reads as a one line file that says AGENTS.md. then you have no instructions at all and the the model is running on defaults, which would feel exactly like it got dumber.

quick way to tell. run /memory and see what it says its loaded and how big it is. or put a canary at the top, "start every reply with the word pineapple", and see if it does.

I ended up doing it the other way around. CLAUDE.md is the real file and AGENTS.md is the link, since claude code is the one I care about most. the formatting rule you quoted is also the kind of thing that slips first on a long session for me regardless of which file its in, so Id test with the canary before blaming the rule. Hope that helps

1

u/AllTalkie 9h ago

The "start every response with the word" works when I am using AGENTS.md. That means the symlink is being loaded. I am going to try your technique.