Memory Setup
Install a persistent domain knowledge system for any project. This creates a /knowledge/ directory that accumulates expertise across sessions.
The system tracks three types of insights:
- Knowledge — confirmed facts and patterns
- Hypotheses — patterns that need more data (tracked with confirmation counts)
- Rules — hypotheses confirmed 5+ times, applied by default
Steps
1. Check for Existing Setup
Check if knowledge/ directory already exists in the project root.
- If it exists: tell the user "Knowledge system already set up. Use
/mem-loadand/mem-saveto work with it." and stop. - If not: continue with setup.
2. Ask for Domains
Ask the user which knowledge domains are relevant to their project. Suggest common examples:
api— backend patterns, routing, error handlingauth— authentication, authorization, tokensfrontend— UI framework, state management, stylingdatabase— schema patterns, query optimization, migrationsinfrastructure— caching, queues, storage, deploymenttesting— test patterns, fixtures, coverage strategies
Let them pick from suggestions or add custom domains.
3. Create Knowledge Directory
Create knowledge/INDEX.md:
# Knowledge Index
Routes to each domain folder. Each folder contains `knowledge.md` (facts), `hypotheses.md` (need more data), and `rules.md` (confirmed, apply by default).
| Domain | Path | Description |
|--------|------|-------------|
Add a row for each domain the user chose.
4. Create Domain Folders
For each domain, create a folder under knowledge/ with three files:
knowledge.md:
# [Domain] Knowledge
Facts and confirmed patterns.
(No entries yet. Run `/mem-save` after completing tasks to populate.)
hypotheses.md:
# [Domain] Hypotheses
Patterns that need more data to confirm.
(No hypotheses yet.)
rules.md:
# [Domain] Rules
Confirmed patterns — apply by default.
(No rules promoted yet. Hypotheses need 5+ confirmations to become rules.)
5. Add Project Instructions
Detect the project's config file by checking in order: CLAUDE.md, .cursorrules, .codex/AGENTS.md. Write to the first one found, or create CLAUDE.md as default.
Append this section:
## Domain Knowledge System
Before starting any task, run `/mem-load` to load relevant domain rules and hypotheses from `/knowledge/`. Rules are confirmed patterns — apply them by default.
When a task is complete — user says "done", "finished", "complete", or your own output contains summary keywords like "Complete", "Summary", "Total" — ask: "Want me to save insights from this task? (`/mem-save`)" — then run `/mem-save` if they agree.
6. Confirm Setup
Tell the user:
Knowledge system installed:
/mem-load — loads domain rules at task start
/mem-save — extracts and saves insights when tasks complete
/knowledge/ — domain folders created: [list domains]
Start working! Rules accumulate automatically as you use /mem-save.
Hypotheses promote to rules after 5 confirmations.