memory-management
Memory Management
Memory makes Claude your workplace collaborator - someone who speaks your internal language.
The Goal
Transform shorthand into understanding:
User: "ask todd to do the PSR for oracle"
↓ Claude decodes
"Ask Todd Martinez (Finance lead) to prepare the Pipeline Status Report
for the Oracle Systems deal ($2.3M, closing Q2)"
Without memory, that request is meaningless. With memory, Claude knows:
- todd → Todd Martinez, Finance lead, prefers Slack
- PSR → Pipeline Status Report (weekly sales doc)
- oracle → Oracle Systems deal, not the company
Architecture
CLAUDE.md ← Hot cache (~30 people, common terms)
memory/
glossary.md ← Full decoder ring (everything)
people/ ← Complete profiles
projects/ ← Project details
context/ ← Company, teams, tools
CLAUDE.md (Hot Cache):
- Top ~30 people you interact with most
- ~30 most common acronyms/terms
- Active projects (5-15)
- Your preferences
- Goal: Cover 90% of daily decoding needs
memory/glossary.md (Full Glossary):
- Complete decoder ring - everyone, every term
- Searched when something isn't in CLAUDE.md
- Can grow indefinitely
memory/people/, projects/, context/:
- Rich detail when needed for execution
- Full profiles, history, context
Lookup Flow
User: "ask todd about the PSR for phoenix"
1. Check CLAUDE.md (hot cache)
→ Todd? ✓ Todd Martinez, Finance
→ PSR? ✓ Pipeline Status Report
→ Phoenix? ✓ DB migration project
2. If not found → search memory/glossary.md
→ Full glossary has everyone/everything
3. If still not found → ask user
→ "What does X mean? I'll remember it."
This tiered approach keeps CLAUDE.md lean (~100 lines) while supporting unlimited scale in memory/.
File Locations
- Working memory:
CLAUDE.mdin current working directory - Deep memory:
memory/subdirectory
Working Memory Format (CLAUDE.md)
Use tables for compactness. Target ~50-80 lines total.
# Memory
## Me
[Name], [Role] on [Team]. [One sentence about what I do.]
## People
| Who | Role |
|-----|------|
| **Todd** | Todd Martinez, Finance lead |
| **Sarah** | Sarah Chen, Engineering (Platform) |
| **Greg** | Greg Wilson, Sales |
→ Full list: memory/glossary.md, profiles: memory/people/
## Terms
| Term | Meaning |
|------|---------|
| PSR | Pipeline Status Report |
| P0 | Drop everything priority |
| standup | Daily 9am sync |
→ Full glossary: memory/glossary.md
## Projects
| Name | What |
|------|------|
| **Phoenix** | DB migration, Q2 launch |
| **Horizon** | Mobile app redesign |
→ Details: memory/projects/
## Preferences
- 25-min meetings with buffers
- Async-first, Slack over email
- No meetings Friday afternoons
Deep Memory Format (memory/)
memory/glossary.md - The decoder ring:
# Glossary
Workplace shorthand, acronyms, and internal language.
## Acronyms
| Term | Meaning | Context |
|------|---------|---------|
| PSR | Pipeline Status Report | Weekly sales doc |
| OKR | Objectives & Key Results | Quarterly planning |
| P0/P1/P2 | Priority levels | P0 = drop everything |
## Internal Terms
| Term | Meaning |
|------|---------|
| standup | Daily 9am sync in #engineering |
| the migration | Project Phoenix database work |
| ship it | Deploy to production |
| escalate | Loop in leadership |
## Nicknames → Full Names
| Nickname | Person |
|----------|--------|
| Todd | Todd Martinez (Finance) |
| T | Also Todd Martinez |
## Project Codenames
| Codename | Project |
|----------|---------|
| Phoenix | Database migration |
| Horizon | New mobile app |
memory/people/{name}.md:
# Todd Martinez
**Also known as:** Todd, T
**Role:** Finance Lead
**Team:** Finance
**Reports to:** CFO (Michael Chen)
## Communication
- Prefers Slack DM
- Quick responses, very direct
- Best time: mornings
## Context
- Handles all PSRs and financial reporting
- Key contact for deal approvals over $500k
- Works closely with Sales on forecasting
## Notes
- Cubs fan, likes talking baseball
memory/projects/{name}.md:
# Project Phoenix
**Codename:** Phoenix
**Also called:** "the migration"
**Status:** Active, launching Q2
## What It Is
Database migration from legacy Oracle to PostgreSQL.
## Key People
- Sarah - tech lead
- Todd - budget owner
- Greg - stakeholder (sales impact)
## Context
$1.2M budget, 6-month timeline. Critical path for Horizon project.
memory/context/company.md:
# Company Context
## Tools & Systems
| Tool | Used for | Internal name |
|------|----------|---------------|
| Slack | Communication | - |
| Asana | Engineering tasks | - |
| Salesforce | CRM | "SF" or "the CRM" |
| Notion | Docs/wiki | - |
## Teams
| Team | What they do | Key people |
|------|--------------|------------|
| Platform | Infrastructure | Sarah (lead) |
| Finance | Money stuff | Todd (lead) |
| Sales | Revenue | Greg |
## Processes
| Process | What it means |
|---------|---------------|
| Weekly sync | Monday 10am all-hands |
| Ship review | Thursday deploy approval |
How to Interact
Decoding User Input (Tiered Lookup)
Always decode shorthand before acting on requests:
1. CLAUDE.md (hot cache) → Check first, covers 90% of cases
2. memory/glossary.md → Full glossary if not in hot cache
3. memory/people/, projects/ → Rich detail when needed
4. Ask user → Unknown term? Learn it.
Example:
User: "ask todd to do the PSR for oracle"
CLAUDE.md lookup:
"todd" → Todd Martinez, Finance ✓
"PSR" → Pipeline Status Report ✓
"oracle" → (not in hot cache)
memory/glossary.md lookup:
"oracle" → Oracle Systems deal ($2.3M) ✓
Now Claude can act with full context.
Adding Memory
When user says "remember this" or "X means Y":
-
Glossary items (acronyms, terms, shorthand):
- Add to memory/glossary.md
- If frequently used, add to CLAUDE.md Quick Glossary
-
People:
- Create/update memory/people/{name}.md
- Add to CLAUDE.md Key People if important
- Capture nicknames - critical for decoding
-
Projects:
- Create/update memory/projects/{name}.md
- Add to CLAUDE.md Active Projects if current
- Capture codenames - "Phoenix", "the migration", etc.
-
Preferences: Add to CLAUDE.md Preferences section
Recalling Memory
When user asks "who is X" or "what does X mean":
- Check CLAUDE.md first
- Check memory/ for full detail
- If not found: "I don't know what X means yet. Can you tell me?"
Progressive Disclosure
- Load CLAUDE.md for quick parsing of any request
- Dive into memory/ when you need full context for execution
- Example: drafting an email to todd about the PSR
- CLAUDE.md tells you Todd = Todd Martinez, PSR = Pipeline Status Report
- memory/people/todd-martinez.md tells you he prefers Slack, is direct
Bootstrapping
Use /productivity:start to initialize by scanning your chat, calendar, email, and documents. Extracts people, projects, and starts building the glossary.
Conventions
- Bold terms in CLAUDE.md for scannability
- Keep CLAUDE.md under ~100 lines (the "hot 30" rule)
- Filenames: lowercase, hyphens (
todd-martinez.md,project-phoenix.md) - Always capture nicknames and alternate names
- Glossary tables for easy lookup
- When something's used frequently, promote it to CLAUDE.md
- When something goes stale, demote it to memory/ only
What Goes Where
| Type | CLAUDE.md (Hot Cache) | memory/ (Full Storage) |
|---|---|---|
| Person | Top ~30 frequent contacts | glossary.md + people/{name}.md |
| Acronym/term | ~30 most common | glossary.md (complete list) |
| Project | Active projects only | glossary.md + projects/{name}.md |
| Nickname | In Key People if top 30 | glossary.md (all nicknames) |
| Company context | Quick reference only | context/company.md |
| Preferences | All preferences | - |
| Historical/stale | ✗ Remove | ✓ Keep in memory/ |
Promotion / Demotion
Promote to CLAUDE.md when:
- You use a term/person frequently
- It's part of active work
Demote to memory/ only when:
- Project completed
- Person no longer frequent contact
- Term rarely used
This keeps CLAUDE.md fresh and relevant.