If you’re using Claude Code and you’re not using CARL yet, you’re giving directions to every city in the country when Claude only needs directions to the grocery store.
And the more directions you give it, the worse it drives.
Let’s get into this thing.
The Problem With Your CLAUDE.md File
I’m Charles Dove, and I’ve been building AI automation systems at C&C Strategic Consulting for years now. I build in public over at Charlie Automates on YouTube and share everything that works for me.
Here’s the thing. My CLAUDE.md file was 733 lines. Build standards, agent team setups, plugin rules, content strategies, operating principles. Everything about me and my business packed into one file.
Every single rule was good. I wrote them all because they matter.
The problem isn’t what’s in the file. The problem is all 733 lines get loaded into every single prompt.
I ask Claude to fix a bug and it’s pulling context on content strategy. I ask it to write a YouTube script and it’s pulling context about git worktrees.
That’s like asking your city to fix a pothole and they start by reviewing the entire federal budget. The pothole doesn’t get fixed. And they burn through a ton of money.
In Claude Code, that money is your tokens.
Why a Bloated CLAUDE.md Actually Hurts You
Here’s what most people don’t realize. Claude has 1 million tokens of context per window. Your CLAUDE.md eats up about 15 to 20% of your context window before you even send a single message.
That’s not just fewer tokens for your work. It’s worse output.
As context fills up, Claude’s output quality degrades. Especially attention to early instructions. When Claude gets irrelevant instructions, it doesn’t just ignore them. They actively dilute its attention throughout the whole conversation.
The model is trying to follow 733 lines of rules when it only needs 28. You’re burning tokens this way.
But it’s not even just a token problem. It’s a signal-to-noise problem.
Think about it. Claude is smart enough already. The issue isn’t intelligence. It’s focus. When you dump 700+ lines of context on every prompt, you’re burying the signal in noise.
Enter CARL: Context Augmentation Reinforcement Layer
CARL was built by my partner Chris Kahler at C&C Strategic Consulting. If you’re in the Claude Code space at all, remember this name.
Here’s the idea in plain English. Instead of one massive CLAUDE.md file that loads everything every single time, CARL breaks up your rules into separate domains. Small, focused groups of rules organized by what they do.
How Domains Work
You configure a global domain for rules that should always apply. Universal stuff like your name, your coding standards, your communication style. For me, that’s nine rules. Everything else only loads when CARL sees that the prompt is relevant.
You mention YouTube? CARL detects that it should load the content rules. You mention TypeScript? It pulls the dev domain. The rest stays out of the way throughout your conversation.
Same project. Same CARL installation. Two totally different rule sets based on what you actually asked for.
That’s the key difference.
Real Results: Before and After
I ran this live. When I asked Claude to write a YouTube script about CARL, notice what happened:
- CARL loaded my global settings (9 rules) and my content settings (19 rules about my voice, audience, hook psychology, and content strategy)
- Total rules loaded: 28
- What it didn’t load: anything about LinkedIn, dev, clients, agents, and everything else from my 733-line CLAUDE.md
Then I switched context and asked Claude to do dev work. CARL searched for keywords, matched them with my dev domain, and loaded only 23 rules total.
Same project. Same CARL installation. Two totally different rule sets. That’s focused development.
Star Commands: Manual Override When You Need It
Domains are autopilot. CARL reads your prompt and figures out what to load. But sometimes you want explicit control. That’s why CARL gives you star commands.
These are the star commands I’ve created:
- *dev - Code over explanation. Show me the fix, don’t tell me about it.
- *review - Focused code review mode.
- *brief - Bullets only. Cut all the fluff.
- *plan - Structured planning output.
So if I type in *brief, Claude switches to bullet points only. No paragraphs, no fluff, only answers.
Without the star brief command, I get a whole novel when I ask about my dev rules. With it, I get clear-cut bullet points. A simple cheat sheet.
Domains are autopilot. Star commands are manual override. You’re not hoping Claude reads your mind. You’re telling it exactly how to respond.
Context Brackets: Auto-Adapting to Your Session Length
Here’s something most CLAUDE.md setups completely ignore. What happens when your session gets longer?
Your context window fills up over time. At the start, you’ve got plenty of room. Claude goes pretty deep with you. But very quickly, it starts running short.
If Claude is giving you three-paragraph explanations when context is running low, that’s a huge problem.
CARL handles this automatically with context brackets. There are three levels:
1. Fresh (Plenty of Room)
Claude goes deep. Full explanations. Detailed responses. You’ve got the context budget for it.
2. Moderate (Context Filling Up)
CARL sees you’re in a moderate bracket. Claude switches to a more concise communication style. Automatically. No manual intervention needed.
3. Depleted (Survival Mode)
Code only. No explanations unless you explicitly ask. CARL will even start reminding Claude of its prime directive and urge you to create a handoff document before your session runs out.
CARL does what Congress won’t. It cuts the bloat automatically when resources run low. No vote required.
The CARL Manifest: Your Control Center
The whole system is controlled by one file: the CARL manifest. Each domain has four fields:
- State - Active or not. Simple toggle.
- Recall - The keywords that trigger the domain. This is how CARL knows when to load your rules.
- Exclude - Keywords that prevent it from loading, even if there’s a match. Useful for preventing false positives.
- Always On - Set this to true and it loads every session, like global settings.
The beauty is that adding more domains doesn’t slow Claude down. CARL just scans your prompt, checks the manifest, and loads what matches. 10 domains, 20 domains, it doesn’t matter. Only the relevant ones activate.
How to Install CARL (30 Seconds)
Installation is dead simple. One command:
npx carl-core
Hit enter. Choose global. Say yes. That’s it.
Your manifest, global rules, commands folder, context brackets. All set up in under 30 seconds. Just restart Claude and CARL is active.
No API keys. No configuration files. No Docker. No build step. Just one command.
And it’s free. And it’s open source.
The Side-by-Side Comparison
Let me break this down clearly:
| Without CARL | With CARL | |
|---|---|---|
| Rules loaded | All 733 lines, every time | Only 23-28 relevant rules |
| Context consumed | Massive from the beginning | Minimal, targeted |
| Instructions | Generic for every prompt | Specific to what you’re doing |
| Signal quality | Buried in noise | Laser focused |
| Session adaptation | None | Auto-adapts with context brackets |
| Output quality | Degrades as context fills | Stays sharp longer |
Same project. Same Claude. Drastically different performance.
The Bigger Lesson: Focus Beats Intelligence
Here’s the thing people get wrong about AI tools. They think the goal is to make Claude smarter. Giving it more information, more context, more rules.
It’s not.
Claude is already super intelligent. The goal is to make Claude more focused. CARL doesn’t add intelligence. It removes noise.
In every system I’ve ever built, in business, in automation, in life, focused beats smart every single time.
You don’t need more rules. You need the right rules at the right time.
Get Started With CARL Today
If you want to try CARL, grab the install command above. It’s free and open source.
If you want to go deeper on Claude Code workflows, join CC Strategic AI on Skool. I share everything that works for me. As a premium member, you get access to my full SaaS building system from A to Z using Claude Code plugins.
And if you want hands-on help with your Claude Code setup, you can work with me 1-on-1 or book a call with CC Strategic to talk about what we can build for your business.
Unlike the US government, you don’t get to just print more tokens when you run out. So stop wasting the ones you have.
FAQ
What is CARL for Claude Code?
CARL stands for Context Augmentation Reinforcement Layer. It’s a free, open-source plugin that breaks your CLAUDE.md file into smart domains. Instead of loading all your rules every time, CARL only loads the rules that match what you’re actually working on.
How much does CARL cost?
CARL is completely free and open source. You install it with one command (npx carl-core) and it works immediately. No API keys, no subscriptions, no hidden fees.
Does CARL actually save tokens?
Yes. In my case, it went from loading 733 lines of rules down to 23-28 rules per session. That’s a massive reduction in context consumed before you even start working. Fewer tokens used on rules means more tokens available for actual work.
Will CARL slow down Claude Code?
No. Adding more domains doesn’t slow CARL down. It just scans your prompt, checks the manifest, and loads what matches. Whether you have 10 domains or 20, only the relevant ones activate.
What are star commands in CARL?
Star commands are manual overrides that change how Claude responds. For example, *brief switches Claude to bullet-point-only mode. *dev gives you code over explanation. They let you explicitly control Claude’s behavior instead of hoping it reads your mind.
What are context brackets?
Context brackets are CARL’s automatic session management system. As your context window fills up, CARL adjusts Claude’s behavior through three levels: fresh (full explanations), moderate (concise responses), and depleted (survival mode with code only). This keeps Claude useful even when your session is running long.
How do I set up domains in CARL?
CARL creates a manifest file where each domain has four fields: state (active or not), recall (trigger keywords), exclude (prevention keywords), and always-on (loads every session). You define what keywords should trigger each set of rules, and CARL handles the rest automatically.
Can I use CARL with my existing CLAUDE.md?
Yes. CARL works by reorganizing your existing rules into separate domain files. Your global rules stay in the global domain and load every time. Everything else gets organized into domains that only activate when relevant. Your rules don’t change. The delivery system does.
Who built CARL?
CARL was built by Chris Kahler, partner at C&C Strategic Consulting alongside Charles Dove. You can learn more about Claude Code workflows on the Charlie Automates YouTube channel and in the CC Strategic AI Skool community.