Keel

Docs / AI-native / The memory/ system

The memory/ system

Most boilerplates ship a CLAUDE.md that explains the boilerplate. That's useful for about a week, until you've renamed things, added your own features, and the doc is describing a codebase that no longer exists. Keel takes a different approach. The memory/ folder is a small, structured set of documents your AI assistant reads automatically, and it's built to keep being true as your product grows. You don't just inherit context about Keel, you inherit a place to record context about what you build on top of it.

What's in the folder

code
memory/
  MEMORY.md         # pointer index, read first
  architecture.md   # the WHY behind Keel's non-obvious choices
  conventions.md    # naming, folders, server-action patterns
  decisions.md       # ADR-style log, starts empty, you append

How your assistant uses it

CLAUDE.md at the repo root references AGENTS.md and memory/MEMORY.md. Claude Code, Cursor, Copilot, and Windsurf all read these on their own, no plugin, no setup. When you ask "why is every table scoped by team_id?", the assistant finds the answer in architecture.md instead of guessing.

The one habit that matters

Tip, log decisions as you make them

When you make an architectural call (a new table, a billing rule, an auth tweak), add a short entry to memory/decisions.md. It takes thirty seconds and it's the difference between an assistant that stays calibrated to your product and one that drifts back to generic guesses.

md
## 2026-07-01, Projects are team-scoped, soft-deleted
Added a projects table scoped by team_id (same pattern as the
rest of the schema). Soft delete via deleted_at so we can offer
a 30-day restore window. Hard-delete job runs nightly.
Edit this page on GitHub →Last updated Jul 19, 2026