Cédric Rittié

← Back to blog
9 min
claude codeproductivity

CLAUDE.md: the permanent briefing

A text file that gives Claude Code your project's context, conventions, and rules. So you never have to explain the same things twice.

Phase 2 · Customize · Article 2 of 3

The problem

You ask Claude to write a LinkedIn post for your product launch. It writes "We are thrilled to announce our innovative solution..." when your brand is casual and first-person. You correct it. Next session, it does it again.

You ask for a creative brief. It forgets your target is freelancers and small teams, not enterprise. You re-explain. It forgets your positioning is "simple and direct", not "holistic solution". You re-explain again.

Every session, Claude starts from zero. It doesn't know your product, your audience, your editorial tone, your constraints. It's competent but amnesic. And the time you spend re-explaining context is time you're not spending on actual work.

CLAUDE.md fixes this. It's a text file that Claude loads automatically at every session. You write your rules once. It applies them every time.

This article follows Understanding Skills. CLAUDE.md and Skills are complementary: CLAUDE.md sets the permanent frame, Skills define task-specific workflows. The previous article explains the boundary between the two.

A text file, nothing more

A CLAUDE.md is a markdown file at the root of your project. No special software, no syntax to learn. Structured text with # and -.

my-project/
  CLAUDE.md        ← Claude reads it at the start of every session
  src/
  ...

Claude loads it silently. You don't mention it. It applies what's written like a colleague who read the project brief before starting.

Before / after

To understand what changes, here's the same work with and without CLAUDE.md.

Without CLAUDE.md

"Write a LinkedIn post for our new product."

We are thrilled to announce the launch of our innovative solution...

"No, we use casual tone. And it's not an innovative solution, it's an invoicing tool for freelancers."

You'll love our revolutionary new tool...

"Not 'revolutionary' either. Direct, factual tone."

5 minutes to get the right register. Tomorrow, we start over.

With CLAUDE.md

"Write a LinkedIn post for our new product."

Claude already knows:

  • The product (invoicing for freelancers)
  • The target (independents, small teams)
  • The tone (direct, casual, no jargon)
  • The banned words ("innovative", "revolutionary", "solution")

First draft usable in 30 seconds.

The gain isn't dramatic on a single session. It's huge over 50.

Anatomy of a CLAUDE.md

No imposed format. But a four-block structure covers 90% of cases.

1. Context

What Claude needs to know before producing anything. The product, the audience, the positioning.

CLAUDE.md
1# Invoicely
2
3## Product
4Invoicing tool for freelancers and small teams (1-5 people).
5Positioning: simple, fast, affordable. Anti-SAP.
6Pricing: free up to 5 invoices/month, $9 beyond.
7Direct competitors: FreshBooks, Wave, Harpoon.

Claude doesn't need to know everything. It needs what influences its output: if you ask for a sales argument, it needs the price. If you ask for a LinkedIn post, it needs the positioning.

2. Tone and editorial

How you talk to your audience. This is the section that eliminates the most corrections.

CLAUDE.md
9## Tone
10- Casual, direct, conversational
11- Short sentences. No nested clauses.
12- Dry humor OK. No forced jokes.
13- We sound like a friend who works in the same field.

3. Constraints

What Claude must never do. Often more useful than what it should do, because default mistakes are predictable.

CLAUDE.md
15## Constraints
16- NEVER: "innovative", "revolutionary", "solution", "holistic"
17- NEVER: "We're thrilled to", "Don't hesitate to"
18- No emojis except in Instagram posts
19- No corporate speak
20- No empty superlatives ("the best", "the most complete")

"NEVER" in capitals isn't a formatting quirk. Claude gives higher weight to capitalized words. It's like bolding something in a brief: it signals priority.

4. Formats and conventions

Rules that apply to everything Claude produces for this project.

CLAUDE.md
22## Formats
23- LinkedIn posts: 800-1200 chars max, hook on line 1
24- Emails: subject < 50 chars, single CTA per email
25- Blog posts: 800-1500 words, informative title not clickbait
26- Case studies: problem → solution → measurable result
27- SEO: each page has a unique title and meta < 155 chars

24 lines total. No novel. Each line eliminates a category of mistakes.

A real example

The CLAUDE.md of a content agency producing newsletters and LinkedIn posts for its clients.

CLAUDE.md
1# Studio Bravo - Client Content
2
3## What we do
4- Weekly newsletters + LinkedIn posts for 8 B2B clients
5- Each client has guidelines in /clients/[name]/guidelines.md
6- Delivery: Google Docs, link sent via Slack
7
8## General rules (all clients)
9- ALWAYS read client guidelines before writing
10- No jargon unless the guidelines allow it
11- Numbers: always source, never invent
12- NEVER: "market leader", "innovative solution", "ecosystem"
13- LinkedIn: 800-1200 chars, hook on line 1, no hashtags
14- Newsletter: 3-5 blocks max, subject < 50 chars
15
16## Process
17- Drafts in /drafts/[client]/[date]-[topic].md
18- Human review before sending, always
19- NEVER publish directly to the client's account

19 lines. No novel. "ALWAYS read client guidelines" is enough for Claude to find the right file before starting. "NEVER publish directly" is the kind of guardrail that prevents disaster.

How to build it

Don't start with a perfect CLAUDE.md. Start with a nearly empty file.

1. The minimum viable

Product, audience, tone in 5 lines. Enough for Claude to stop guessing.

2. Work, correct, note

Every time you correct Claude ("no corporate speak", "we say 'users' not 'customers'"), make a mental note. Two identical corrections = a rule to write down.

3. Two weeks later

Your CLAUDE.md has 20-30 lines covering 90% of cases. You open a session, you work directly. No context to re-explain.

The test: if your first request in a new session gives a usable result on the first try, the CLAUDE.md is doing its job.

And you don't even have to write it yourself. Claude can generate it:

Read this project and generate a starter CLAUDE.md. Infer what you can from existing content: tone, audience, conventions.
Reading articles, site, assets...
I detected a direct casual tone, a product/marketing professional audience, bilingual FR/EN content, and several editorial conventions (no emojis, no em dashes). I generated a 25-line CLAUDE.md. You'll want to add the constraints and rules that content alone doesn't reveal.

Claude is good at inferring tone and conventions from what exists. What it can't guess: constraints, positioning nuances, business rules. Those lines are yours to add.

Three levels that stack

Claude loads instructions from three places. All three layer on top of each other.

Global Your preferences everywhere ~/.claude/CLAUDE.md
Conversation language, personal style, universal constraints. No project context, just you. Applies across all your projects.
+
Project The project's rules ./CLAUDE.md
Product, audience, tone, conventions, constraints. Committed to the repo. Shared with the team. Anyone who clones the repo gets the same rules.
+
Personal Your private notes ~/.claude/projects/.../CLAUDE.md
Things you don't want to commit but Claude needs to know. "Launch pushed to June." "Landing page B is on hold."

The project doesn't replace the global, it adds to it. In case of conflict, the most specific wins. If your global says "casual tone" but the project says "formal for this brand", the project wins.

By role: 3 concrete examples

CLAUDE.md isn't just for developers. Any project that lives in a folder can have one.

For a product launch:

## Product
- Mobile budgeting app for 25-35 year olds
- Freemium: free with ads, $4.99/month without ads + export
- Differentiation: minimal interface, no charts, just numbers

## Audience
- Young professionals, first salary or first investments
- They tried Mint/YNAB and found it too complex

## Tone
- Casual but not try-hard. Like a friend who's good with money.
- No banking jargon ("aggregate balance", "categorization engine")
- NEVER: "take control of your finances"

For a content team:

## Editorial guidelines
- Casual tone everywhere except legal pages
- Headlines: informative, not clickbait
- Articles: 800-1500 words. If longer, split.
- Every article has a publish date AND a last updated date
- Sources: always cite, always link
- NEVER use unquantified superlatives

For competitive intelligence:

## Context
- Market: project management tools for agencies (10-50 people)
- Direct competitors: Monday, Asana, Notion (misused)
- Our angle: built for agencies, not adapted from enterprise

## Research
- When analyzing a competitor, look at: pricing, differentiating
  features, latest announcements, recent Capterra/G2 reviews
- Output format: comparison table, no prose

The content changes. The principle stays the same: rules Claude applies without re-explanation.

What NOT to put in it

Don't includeWhy
Tool documentationClaude knows it or can search for it
A specific campaign briefThat's a Skill, not CLAUDE.md
Decision historyToo long, not actionable
Explanatory paragraphsRules, not essays
"This client is difficult"Not actionable. Say what to do concretely.

The boundary with Skills: if it's a permanent convention in one line ("casual tone"), it's CLAUDE.md. If it's a multi-step workflow with output format ("generate a creative brief with this structure"), it's a Skill.

CLAUDE.md in a team

When the CLAUDE.md is in the repo, the whole team gets the same rules.

Classic scenario: a new content manager joins. Without CLAUDE.md, they spend two weeks absorbing the editorial guidelines through trial and error. With a CLAUDE.md, Claude applies conventions from the first session. The newcomer produces conforming content from draft one.

Another scenario: the team decides to switch to casual tone on the blog. Instead of telling everyone and hoping they comply, one line in the CLAUDE.md is enough. Every team member using Claude Code applies the new convention automatically.

CLAUDE.md and Skills: how they coexist

CLAUDE.md = the frame

Loaded automatically, all the time.

  • Who the audience is
  • What tone to use
  • What we never do
  • Project conventions

"How we work here."

Skill = the method

Loaded on demand, when you invoke it.

  • Steps to follow
  • Evaluation criteria
  • Output format
  • Sources to consult

"How we do this specific task."

Both stack. When you run a writing Skill, Claude applies the Skill's instructions (structure, steps) AND the CLAUDE.md conventions (tone, constraints, audience). The result respects both the method and the frame.

Classic mistakes

Three patterns found in most CLAUDE.md files that don't work.

!
The novel
150+ lines

We decided during the January offsite to switch to casual tone because our user tests showed that formal language created a perceived distance that reduced conversion rate by 12% on landing page B. This decision was validated by the editorial committee on February 3.

1 line

Casual tone everywhere except legal pages.

!
The vague
Vague

Use a professional but approachable tone.

Write quality content.

Be creative with hooks.

Actionable

Casual tone, short sentences, no jargon unless explained.

800-1200 words per article, informative title.

First sentence = fact or number, never a rhetorical question.

!
The kitchen sink
Mixed levels

Direct, casual tone.

For landing page audits, evaluate: message clarity in 5 seconds, visual hierarchy, journey from arrival to CTA, editorial tone. For each criterion, produce a finding, verdict, and suggestion...

Separated

CLAUDE.md: Direct, casual tone.

Skill /audit-landing: the 30 lines of audit instructions.

What's next

You now have the frame (CLAUDE.md) and the methods (Skills). The next article shows how to build a real Skills library: organization, naming, patterns that work, examples from daily use.

Found this useful?

A weekly synthesis of what's happening in AI. Announcements, tools, repos. No spam.

The AI signals that matter, the workflows that work, the shortcuts nobody explains. Every week, in your inbox.

Related articles

Where to start

The next level: from prompt to full workflow

Skills, MCP, agents, deployment. A structured path in 3 phases.