▶ Demo: setting up a Claude ready repo

Module 01 demo · ~4 minutes · three parts: the memory layer, the toolbox, and the proof

Repo structure

client-project/
CLAUDE.md
STYLE.md
CLAUDE.local.md (gitignored)
research/
deliverables/
CLAUDE.md (folder rules)
README.md
data/
CLAUDE.md (folder rules)
.claude/
settings.json (shared, committed)
settings.local.json (gitignored)
commands/ (empty, Module 02)
skills/ (empty, Module 02)
agents/ (empty, Module 04)
Outside the repo
/Library/…/ClaudeCode/CLAUDE.md (IT managed)
~/.claude/CLAUDE.md (this user, global)
client-project/CLAUDE.md
# Client Project (engagement workspace)

Consulting repo for an AI governance engagement
at a regional health plan. Deliverable drafts,
meeting context, and shared team knowledge.

## Rules
- Client facing docs follow @STYLE.md
- Never modify anything in data/raw/
- Spell out every abbreviation on first use
- Deliverables stay drafts until partner review
client-project/STYLE.md (imported by CLAUDE.md)
# Writing style

- Plain, direct sentences. No corporate filler.
- No em dashes or en dashes.
- Client name appears only as "the health plan".
- Every claim cites its source document.
client-project/deliverables/CLAUDE.md
# Rules for this folder only

- Files are named YYYY-MM-DD-topic.md
- Every deliverable is marked DRAFT until it
  has passed a review pass
- Final versions move to deliverables/final/
client-project/data/CLAUDE.md
# Rules for this folder only

- Everything in data/raw/ is read only.
  Source files are never edited, ever.
- Cleaned or transformed copies go in
  data/processed/ instead.
client-project/CLAUDE.local.md (gitignored, yours only)
# Personal preferences

- Keep answers short. Bullets over paragraphs.
- Show me the file diff before saving changes.
client-project/.claude/ (what Claude just built)
.claude/
├── settings.json         shared team settings
│                         (committed to git)
├── settings.local.json   your personal settings
│                         (gitignored)
├── commands/             empty, ready for slash commands
├── skills/               empty, ready for skills
└── agents/               empty, ready for subagents
client-project/.claude/settings.json
{
  "permissions": {
    "deny": [
      "Read(data/secrets.txt)",
      "Read(**/*.pem)"
    ]
  }
}
client-project/deliverables/README.md
# deliverables/

Client facing outputs. Drafts live here,
finals in final/. See CLAUDE.md in this
folder for naming and review rules.
new session · Part 3 test: the memory layer is live
This project's conventions:
· Client facing docs follow STYLE.md (plain
  sentences, no dashes, sources cited)
· data/raw/ is never modified
· Abbreviations spelled out on first use
· Deliverables stay drafts until partner review
new session · Part 3 test: the folder rule fires itself
Created deliverables/2026-08-21-weekly-findings.md

Marked DRAFT per this folder's review rule.
Want me to start filling in the findings?
new session · Part 3 test: the lock holds
I can't read data/secrets.txt - access to this
file is denied by the project's permission
settings (.claude/settings.json).
Module 01 · Demo
Setting up a Claude ready repo
An empty folder becomes a working context layer, one plain language instruction at a time. Three parts:
1 · The memory layer 2 · The toolbox & the levels 3 · The proof
Now build yours
Open a terminal, type claude, and give these same instructions in your own words. Then run the demo's five checks against what you built: conventions, naming, the lock, read only, and discovery.

Back to Section 6 → the checklist

Part 1 · Memory layer Part 2 · Toolbox & levels Part 3 · The proof