I’ve gotten to the point where I have to ask myself. Is Claude working for me or am I working for Claude? The amount of time I invest correcting, tweaking, studying …has become concerning. Claude does a ton of stuff for me in a fraction the time that I did it, but my time investment in getting Claude to do certain things correctly and revisiting things is undeniably significant. I’m suffering from “ Claude fatigue.” it concerns me that things we accepted as gospel and acted on in the past. We now discover it sometimes not the best advice. What do we trust? What don’t we trust?
I managed to avoid claude fatigue by making outputs predictable and clean within constraints. PR descriptions always linking ticket at the same place. Keeping things condensed and straight to the point. Applying labels correctly. Resolving wikilinks in my markdowns. This is not sth raw claude can do, regardless of the model
"Delete it and see what actually breaks" is the useful half of this — most CLAUDE.md files are a museum of instructions the model has been quietly ignoring for months. For me the thing that broke first was never context anyway, it was quota: I was juggling several API keys by hand until I gave up and wrote a proxy that rotates them automatically on a 429: https://github.com/p32929/rotato (zero dependencies, noisy logs on purpose). Deleting instructions is easy. Deleting the rate limit takes slightly more effort.
Thanks for the nudge — I just applied your audit principle to a setup that's grown over time but was kept deliberately lean from the start (not a CLAUDE.md, but what I call a system instruction, which I maintain role-appropriately across all my team members). Result was different from yours: every line still held its weight, nothing needed to go. The last audit was only two weeks ago, though. The real gain was finding two genuine gaps that were still missing.
This tracks with what I've seen across teams building on Claude and GPT-4 both: context accumulates faster than anyone deletes it, because deleting feels risky and adding feels safe. Anthropic's own 80% cut is a rare public admission that bloat isn't a rounding error, it's a performance tax. Curious what broke first when you deleted everything, the hooks or the skills?
Deleting all the skills and instructions is just not an option for me. For my multi-repo features navigation this gets actually very slow and iritating to explain over and over. However refreshing the skills or removing and reapplying only as necessary is definitely something one should repeat every once in a while. I very much like the HTML approach though! thank you very much!
I was in your camp a few weeks ago, with 150+ skills. It became problematic for many reasons I’ll explain in a future article.
I’ll just mention two:
- Claude automatically loads the skill metadata so it’s available at the start if each session; depending on how description length and other fields, you quickly consume 5K-10k tokens
- the bigger one: 150 skills = 500+ trigger words -and that my friend is the sure insurance a skill will be triggered by accident because no one can exactly remember the right trigger words and NO ONE has a strategy to devise trigger words that don’t require human memory recall
Run /checkup if you haven't, it shows exactly what you're burning the second Claude Code loads. Mine was around 10k tokens a session before I'd typed a single word.
That's the bit ppl miss. We keep installing more stuff and never see the context cost, so pruning matters more than adding. Send me the article when it's up :)
Well, said Larry. I find it particularly challenging when you have a process that needs to be repeatable. A specific research sweep done on a consistent set of criteria over a set of predetermined websites.
Make it a skill rather than a CLAUDE.md rule. Bake the criteria and the site list into the skill itself so it runs the same way every time, whatever folder you happen to be in.
Then hook a word to it. You say the word, the hook fetches the file, the file calls the skill. Get Claude to write the skill first, then build the hook off whatever you naturally type when you want that sweep.
Thanks for sharing Charlie...The interview was really good what Boris Cherny has mentioned...they have deleted 80% of the system prompts...and there are vast improvements in the model...
It was fun understanding the concept and thoughts behind why they have done it...I have written my understanding of the same...here...
I’ve gotten to the point where I have to ask myself. Is Claude working for me or am I working for Claude? The amount of time I invest correcting, tweaking, studying …has become concerning. Claude does a ton of stuff for me in a fraction the time that I did it, but my time investment in getting Claude to do certain things correctly and revisiting things is undeniably significant. I’m suffering from “ Claude fatigue.” it concerns me that things we accepted as gospel and acted on in the past. We now discover it sometimes not the best advice. What do we trust? What don’t we trust?
Claude fatigue is real 😅
It's been 6+ months of nothing but Claude talk, and I do miss when the stack was more varied than one tool all day, every day.
On the maintenance, I'd treat it like a real employee. You wouldn't set and forget a person, and this is no different.
Old advice I'd call dated rather than wrong. What was right in March was right in March :)
I managed to avoid claude fatigue by making outputs predictable and clean within constraints. PR descriptions always linking ticket at the same place. Keeping things condensed and straight to the point. Applying labels correctly. Resolving wikilinks in my markdowns. This is not sth raw claude can do, regardless of the model
Thanks for sharing Charlie!
There's indeed a few gems in this CLAUDE.md. I ended up adding 2.5 instructions to my own CLAUDE.md, which is rare.
"Delete it and see what actually breaks" is the useful half of this — most CLAUDE.md files are a museum of instructions the model has been quietly ignoring for months. For me the thing that broke first was never context anyway, it was quota: I was juggling several API keys by hand until I gave up and wrote a proxy that rotates them automatically on a 429: https://github.com/p32929/rotato (zero dependencies, noisy logs on purpose). Deleting instructions is easy. Deleting the rate limit takes slightly more effort.
Thanks for the nudge — I just applied your audit principle to a setup that's grown over time but was kept deliberately lean from the start (not a CLAUDE.md, but what I call a system instruction, which I maintain role-appropriately across all my team members). Result was different from yours: every line still held its weight, nothing needed to go. The last audit was only two weeks ago, though. The real gain was finding two genuine gaps that were still missing.
This tracks with what I've seen across teams building on Claude and GPT-4 both: context accumulates faster than anyone deletes it, because deleting feels risky and adding feels safe. Anthropic's own 80% cut is a rare public admission that bloat isn't a rounding error, it's a performance tax. Curious what broke first when you deleted everything, the hooks or the skills?
Deleting all the skills and instructions is just not an option for me. For my multi-repo features navigation this gets actually very slow and iritating to explain over and over. However refreshing the skills or removing and reapplying only as necessary is definitely something one should repeat every once in a while. I very much like the HTML approach though! thank you very much!
I think there’s benefits to Cherny’s approach.
I was in your camp a few weeks ago, with 150+ skills. It became problematic for many reasons I’ll explain in a future article.
I’ll just mention two:
- Claude automatically loads the skill metadata so it’s available at the start if each session; depending on how description length and other fields, you quickly consume 5K-10k tokens
- the bigger one: 150 skills = 500+ trigger words -and that my friend is the sure insurance a skill will be triggered by accident because no one can exactly remember the right trigger words and NO ONE has a strategy to devise trigger words that don’t require human memory recall
You're right, and I skimmed past it here.
Run /checkup if you haven't, it shows exactly what you're burning the second Claude Code loads. Mine was around 10k tokens a session before I'd typed a single word.
That's the bit ppl miss. We keep installing more stuff and never see the context cost, so pruning matters more than adding. Send me the article when it's up :)
Well, said Larry. I find it particularly challenging when you have a process that needs to be repeatable. A specific research sweep done on a consistent set of criteria over a set of predetermined websites.
Charles, your thoughts would be welcome.
Make it a skill rather than a CLAUDE.md rule. Bake the criteria and the site list into the skill itself so it runs the same way every time, whatever folder you happen to be in.
Then hook a word to it. You say the word, the hook fetches the file, the file calls the skill. Get Claude to write the skill first, then build the hook off whatever you naturally type when you want that sweep.
So it’s finally beginning to live up to how I’ve been using it.
Can’t read that
Dude, what’s with the animation /rerendering
It’s a GIF - do you like it?
I am having difficulty reading it because it repetitively is redrawing - it is unreadable.
Thanks for sharing Charlie...The interview was really good what Boris Cherny has mentioned...they have deleted 80% of the system prompts...and there are vast improvements in the model...
It was fun understanding the concept and thoughts behind why they have done it...I have written my understanding of the same...here...
https://shipwithailab.substack.com/p/i-wrote-25930-words-of-rules-for?utm_source=share&utm_medium=android&r=1rwwnd
Awesome, mate. Thanks for sharing!