Skip to content

Everything in CLAUDE.md? What to Load Always and What to Load Only When Needed

Jaime Marco · 2026-10-23

When a project starts accumulating rules for the agent (how tests are written, which Jira board to use, which ports are taken), the temptation is to put everything in the main instructions file. It works at first, but it has a hidden cost: that file travels with every conversation.

What Is Always Loaded and What Is Not

The project's main instructions file enters the agent's context at the start of every session, whether or not you have a task that needs it. If you describe how to do TDD there, the agent loads it even if that afternoon you are only analyzing metrics or reviewing a database. Every line of that file is paid for, in tokens and in the model's attention, in every conversation.

There are other places where information can live, with different behavior: commands are only loaded when you invoke them, skills are loaded on demand and specific rules can be scoped to certain tasks or file types, depending on the tool and its version. It is worth checking in your own tool how each one is loaded.

Referencing With @ Does Not Save Tokens

It is common to think that splitting the file into several and referencing them with `@` reduces consumption. It reduces clutter, not context: whatever is referenced is still loaded together with the main file. It is an application of the DRY principle, useful for keeping each decision in a single place, but it is not a token optimization. If the goal is to save, what you have to do is take out whatever is not needed all the time.

A Simple Criterion

Ask yourself whether the information is needed in every conversation. The project architecture, the non-negotiable rules and the commands to start the environment are usually universal: they go in the main file. The ticket board is only needed when you work on tickets; the TDD ritual, when you develop or refactor. Those can live in a command, a skill or a scoped rule.

An example: if your board configuration lives in its own rule and not in the main file, it is only read when you work with tickets. And if your work is always development, putting it in the main file is not a serious mistake either.

How Much to Fine-Tune

Optimizing context is a job in itself: measuring what each piece takes up, deciding which model and effort level to use for each command, and distributing the rules. It pays off the more the team uses the agent, but there is no perfect design. Start with what costs the most and is cheapest to automate, and do not try to fine-tune everything at once.

Quick Summary

The main file is always loaded. Referencing with `@` tidies things up but does not save. Move to commands, skills or scoped rules whatever is only needed for some tasks, and fine-tune gradually.