Delete your CLAUDE.md
Anthropic deleted 80% of their own instructions.
Last week I sat down to delete my entire Claude setup.
Not tidy it. Delete it. The CLAUDE.md, the hooks, the skills, 6+ months of instructions I'd written one bad session at a time.
The reason is that the man who built Claude Code told me to.
Anthropic deleted 80% of their own instructions
Boris Cherny, on stage at Y Combinator:
"We deleted 80% of the system prompt."
That's the prompt shipping inside the product, cut by four fifths for Opus 5 and Fable 5.
The model got better.
Then he turned it on you:
"For people that aren't building agentic products, but you're using Claude Code, every 6 months delete your Claude MD. Delete your skills. Delete your hooks. See what the model does and it might surprise you."
This was a revelation for me personally. I thought that all my old rules and instructions were still helping, when they had (actually) become a hindrance.
That's just one of three things I changed in my Claude Code workflow.
The other two are in the video below. Watch it first, then read the rest.
Before you scroll: if you find any of the following useful, someone on your team has the same problem and doesn't know it.
First, what these (things) actually are
I’ll explain this simply, because I got this wrong for a long time and the words get thrown around like everyone already knows.
Your CLAUDE.md is a system prompt. It’s the same idea as custom instructions in ChatGPT. A plain text file Claude reads before it reads your message at the start of every session.
Where I went wrong is what I thought it was for. I treated it as the place everything lives.
All my rules, memories, and instructions when actually it’s the front desk receptionist, not the filing cabinet.
There are five pieces and the thing that separates them is when each one runs:
CLAUDE.md → a standing brief
Claude reads it before you type a single word, every session, and you never trigger it.
Set it up with /init , then edit what it writes for you.
You get two, one personal and one per project.
That's a slice of mine of my personal Claude.md.
I have general rules that I want Claude to follow, such as entering plan mode first and delegating to sub-agents.
I also have a routing section that guides Claude to my other projects and .md files to get specific tasks done for me across my socials.
Haven't got one yet?
Genuinely, the best way to work is with Boris'.
That's (apparently) his whole file.
Mine is his file, 6+ months of corrections later.
Paste this:
Help me build my CLAUDE.md from scratch. Use Boris Cherny's CLAUDE.md as a starting template. Ask me about my business, voice, banned words, output defaults, and how I want you to work. Save the final file to ~/CLAUDE.md.It interviews you. You answer. It writes the file.
When I tell Claude something is wrong, it writes it into its memory, not into my CLAUDE.md. And I run a skill at the end of a session that files those corrections into the right memory file for me.
It's a text file that grows every time you tell it something.
Now audit the one you already have
Mine wasn’t meticulously set up or planned. I built the whole thing by chucking context and ideas at Claude, all in natural language, over six months.
Which is why the audits are worth running. You end up with things you do not remember agreeing to.
/modelDo this before anything else. Things change. Some models want short instructions, some prefer verbose.
Some need examples, some get worse with them.
Then paste this. It reads Anthropic's live rules first, and goes through your file line by line.
It fetches Anthropic's live prompting guidance, finds where your chosen model excels, then updates your file against it.
It won't cut anything it can't justify with a quote.
Paste this:
My Claude instructions were written for older models. Audit them against Anthropic's current guidance and tell me what to delete.
1. FETCH THE LIVE RULES FIRST. Read Anthropic's prompting best practices page and the page for the exact model I am on. Use what is published today, never what you remember.
2. GO LINE BY LINE. One verdict per instruction: DELETE, KEEP or REWRITE, with the reason in plain English.
3. QUOTE YOUR SOURCE. Every DELETE quotes the sentence from Anthropic's guidance that justifies it. Cannot find one? The verdict is KEEP. Never invent a source.
4. FLAG EVERY VERIFY-TWICE RULE. "Always verify your work", "double-check before answering". The model already self-corrects. These make it do the work twice, and I pay for both.
5. FLAG "ONLY FLAG THE BIG ISSUES". Taken literally, so I get told less than I wanted. Replace with: report everything, I do the filtering.
6. FLAG ANY "DON'T OVERTHINK" RULE. Rules against thinking make internal tags leak into the answer. Cut them.
7. FLAG ROLE PADDING. "You are an expert with 20 years of experience" was once good advice. Now optional. Keep a role only where it genuinely changes the output.
8. FLAG STALE EXAMPLES. Examples written for an old model teach old habits. One current example beats ten stale ones.
9. NEVER TOUCH A TRUTH RULE. "Only claim what you verified" is not a severity filter, it stops made-up facts. Rules like that stay, whatever else goes.
10. TELL ME WHAT IS MISSING. The new models need five instructions the old ones did not: keep answers short, cap document length, say how to update me while you work, hold the task scope, limit the helpers you spawn.
THEN GIVE ME:
- A table, one row per instruction: my line, the verdict, the why, and Anthropic's line.
- The exact wording to paste in for each of the five missing instructions.
- The honest count. "307 lines in. 4 deletes, 4 rewrites, 5 additions."
- What you could not check, marked NOT RUN. Never a clean bill you did not earn.
AND BE HONEST:
- If most of my file should go, say so plainly. The scaffolding I am proudest of is the likeliest casualty.
My instructions are below. Go.It goes and reads Anthropic's live docs before it judges a single line of yours.
Then it hands back a plan. This is mine, run this morning against the 282 lines I have today:
Nothing gets deleted the moment you paste it. It backs up your .claude folder first, and both routes hand you a plan to approve.
Read it properly before you hit yes.
Skills → a workflow you saved
A skill is a prompt you saved and gave a name to. You write the workflow once, then you type one slash command instead of retyping the whole thing, in any conversation, in any folder.
I had 195 of them. They cost nothing sitting there, because only the one you call actually loads. Which is why the problem is never how many you have. It's how many are doing the same job.
The prompt that sorts this out is in the audit run further down.
Here's the prompt I'd run first.
Audit my skills folder for overlap and dead weight. Do not delete anything.
1. List every skill with its name and one line on what it does.
2. Group them by the JOB they do, not by their name. Skills doing the same job in different words are the same skill.
3. For each group of two or more, tell me which one to keep and why, and exactly what the others have that it is missing.
4. Flag every skill I have never actually used.
5. Flag every skill that only works because of a file or folder that no longer exists.
Then give me ONE merged version of the biggest group, written out in full, ready to save. Tell me what I lose by merging.It goes through your skills, finds the ones doing the same job, and tells you which to keep. It deletes nothing:
Out of the 195 skills on my machine, I’d only ever invoked 65. That’s why this audit is essential.
Hooks → an automatic trigger
This one tripped me up for a long time.
If a rule in your CLAUDE.md is a request, then a hook is a rule that fires whether Claude fancies it or not.
The simplest one you could build:
When I say the word “LinkedIn”, write me a LinkedIn post.
That's a hook.
I never tell it to. I just say the word/s.
This is where hooks and skills meet. The word is the hook. What it goes and gets is the skill. You cannot see that pairing anywhere in Claude, which is why it took me so long to work out I already had loads of them.
Start by finding out what you already repeat. Paste this:
Help me work out what I should turn into a hook.
Look back over our recent conversations and find:
1. Things I ask for over and over, in roughly the same words.
2. Times I had to tell you something you should already have known.
3. Times you did something I had to correct more than once.
For each one, tell me:
- the word or phrase I actually say when I want it
- what you should go and read, or do, the moment I say it
- whether that word is unique enough that it won't fire by accident
Give me your top three, ranked, with the best one first. Do not build anything yet.It read 15,109 prompts I had typed over 45 days. My most repeated phrase was "show me", 424 times, and nothing was firing on it.
Then just tell Claude to turn the top one into a hook (no special command or config needed). You describe it, it builds it, and it shows you before it saves anything.
Worth adding this to your CLAUDE.md while you're there:
If I ask you for the same thing three times in a session, tell me, and suggest it as a hook.And once you have a few, audit them. This lists everything, including the ones that came with plugins:
Audit every hook I have set up. Do not change or delete anything.
1. List them all. For each one: what triggers it, when it fires, and what it actually does, in plain English. No file paths.
2. Tell me which ones fire on EVERY message. Those are the expensive ones, so I want them justified or gone.
3. Flag any trigger word that is too common. If a word shows up in normal conversation, the hook will fire when I did not mean it.
4. Flag any two hooks that could fire at the same time, and tell me what happens when they do.
5. Flag any hook pointing at a file or folder that no longer exists.
6. Tell me which ones I have probably forgotten I set up.
Then give me a table: keep, fix, or remove, with one line of reasoning each. Do not touch anything until I say so.What (most) people get wrong
We keep adding more and more instructions instead of pruning things back.
That hurts the long term capability of your Claude.
The more instructions you write, the more bloated your CLAUDE.md becomes, and the more confused the model gets over time.
Anthropic publish a ceiling for this and you probably didn’t know that it:
"Size: target under 200 lines per CLAUDE.md file. Longer files consume more context and reduce adherence."
Mine was at 305. That was a mistake, because these aren’t settings.
They're suggestions competing with each other:
"Claude treats them as context, not enforced configuration."
And a few lines later:
"if two rules contradict each other, Claude may pick one arbitrarily."
Now imagine ninety-six rules, written across six months, by one person correcting whatever annoyed him that day. Some of them contradicted each other and I never noticed.
There's a second effect underneath, and it's why a long file makes your prompt *worse* rather than just pricier.
Models read the beginning and the end of a long context carefully, and they skim the middle.
The paper that named it is called Lost in the Middle.
So a bloated CLAUDE.md costs you three things at once:
Tokens. Every line is paid for on every single session, whether it's relevant or not.
Accuracy. Rules that contradict each other get resolved arbitrarily, and you never see which one won.
Attention. Your file goes in first, so every line you add pushes what you actually asked for further from the edge the model reads carefully.
The whole thing, in the order it fires
Here is what actually happens when I ask for something. Four steps, and I only do the first one.
I type. My global CLAUDE.md is already loaded. It knows who I am, how I write, and where everything lives. That is the only file that costs me on every session.
A word in my message fires a hook. Say carousel, say thumbnail, say Substack.
The hook goes and gets the project file for that job. The infographic one is 860 lines, and it never enters a newsletter session.
That project file points at the skill that does the work, and the skill runs.
I never start in the right folder. I open Claude on my desktop like everyone else, because I cannot be bothered to navigate first.
That costs me tokens. But the hook does the walking, so I get the right rules anyway.
That is the point. Your main file should not hold the knowledge. It should point at it, and something else should do the pointing for you.
But like anything it needs maintenance and top-ups over time.
Nothing ever seems streamlined and efficiently running forever without maintenance. So no, I'm not deleting mine. I'm maintaining it.
That's it from me this week. See you again next week.
Stay curious and stay human
— Charlie

















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?
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.