Persistent files that carry context across sessions

Memory

6 memory files that persist across conversations. They store component registries, team profiles, and project state — so Claude never forgets what was built, who's on the team, or what patterns exist.

Memory Files

FileContents
preferences.jsonPort 3000, single .env, pnpm-only
repositories.json14 databayt repos with paths + stacks
atom.json59 atoms across 6 categories
template.json31 templates across 5 categories
block.json4 blocks (DataTable, Auth, Invoice, Report)
report.jsonT&C electrical report templates

Project-Level Memory

Stored at ~/.claude/projects/[project]/memory/:

FileContents
Company profileDatabayt team, financials, products
Active projectsHogwarts pilot status, Ahmed Baha
User preferencesFeedback, corrections, working style
Team profiles4 members with equipment, access, strengths

How Memory Works

Memory files are JSON or markdown files in ~/.claude/memory/. Claude reads them at the start of each conversation and updates them when new information is learned.

Auto-Memory

Claude automatically saves memories when it learns:

  • User info — role, preferences, expertise level
  • Feedback — corrections, confirmations, working style
  • Project state — active work, decisions, deadlines
  • References — where to find things in external systems

Memory Index

MEMORY.md is the index file — always loaded into context. Each entry is one line pointing to a memory file:

# Memory Index
 
- [Company Profile](company_databayt.md) — Team of 4
- [Team Profiles](team_profiles.md) — All 4 members

Component Registry

The atom, template, and block memory files serve as a registry of all components built across projects:

{
  "atoms": [
    {
      "name": "tabs",
      "primitives": ["Tabs", "TabsList", "TabsTrigger", "TabsContent"],
      "path": "src/components/atom/tabs.tsx"
    }
  ]
}

When you say atom tabs, Claude checks the registry first before creating something new.

Team Memory

team.json stores profiles of all 4 team members:

{
  "team": [
    {
      "name": "Abdout",
      "role": "founder-tech-lead",
      "installRole": "engineer"
    }
  ]
}

This allows agents to tailor their output to each team member's role.