No code, no database. A folder of markdown files gives Cowork persistent memory, a router, your writing voice, and specialized "workstations" — loaded only when needed.
├── CLAUDE.md ← the router ├── MEMORY.md ← long-term state ├── 00_Resources/ │ └── voice-principles.md ├── 00_Inbox/ └── Content Creation HQ/ ├── CLAUDE.md ├── MEMORY.md └── Resources/
Each file has exactly one responsibility. Together they behave like an OS: kernel, memory, drivers, and apps.
Pick a task and watch what Cowork actually loads. The point: context is lazy-loaded. Only the files relevant to the task enter the session.
The whole system hinges on one filing rule. Rules of behavior ("always…", "never…") go to CLAUDE.md. Facts that can change (status, decisions, contacts) go to MEMORY.md. Try sorting these:
Same architecture you'd write in LangGraph — implemented as markdown instead of Python.