Using Basic Memory with Built-in AI Memory
Your AI tools already have built-in memory features. Basic Memory doesn't replace them — it works alongside them. This page explains what each system is good at and how to use them together effectively.
For a broader comparison of Basic Memory with all the alternatives — including Obsidian, database-only memory services, and more — see Why Basic Memory.
What each tool offers
Claude (web, desktop, and mobile) has a memory system available to all users:
- Memory summary — Claude automatically synthesizes a summary of you from your chat history, refreshed roughly every 24 hours. You can view and edit it (Settings → Capabilities → "View and edit memory"), or update it just by asking Claude in chat.
- Project memory — Each Claude Project gets its own isolated memory space and summary.
- Chat search — Claude can also search your raw conversation history. Controls include pausing memory, resetting it, and incognito chats.
Claude Code has two built-in systems:
- CLAUDE.md files — Instructions you write for how Claude should work in a project. Coding standards, build commands, architectural conventions.
- Auto memory — Notes Claude writes itself when it notices patterns or preferences. Stored in
~/.claude/projects/as markdown files. The first 200 lines ofMEMORY.mdload into every session.
ChatGPT has two memory systems:
- Saved memories — Facts you tell it to remember ("I'm vegetarian," "I live in San Francisco"). These persist until you delete them, and total capacity is limited to roughly 1,200–1,400 words — once full, nothing new is saved until you delete entries. ChatGPT may also save details on its own if they seem useful. The Manage Memories panel lets you view and delete entries; to change one, ask ChatGPT in chat.
- Reference chat history — ChatGPT can look back at past conversations to pick up preferences and context. Unlike saved memories, these details change over time as ChatGPT decides what's most relevant.
Cursor has a "Memories" feature for storing brief preference strings and rules.
Basic Memory is a full knowledge base with structured notes, semantic search, a knowledge graph, and schemas. It works across all of these tools through MCP.
How they work together
The best setup uses both. Here's how they complement each other:
| Built-in memory | Basic Memory | |
|---|---|---|
| Best for | Quick preferences, tool-specific rules | Structured knowledge, decisions, research |
| Scope | One AI tool | Every AI tool you use |
| Source | That tool's own chats | Anything — chats, docs, your own writing |
| Format | Short summaries / instructions | Full markdown notes with semantic structure |
| Search | That tool's chat history | Semantic, text, metadata, and tag search |
| Connections | None | Knowledge graph with typed relations |
| Portability | Bound to your account | Plain files, works everywhere |
| Setup | Automatic | One-time MCP connection |
In practice
Claude: Let Claude's memory summary and project memory handle who you are and what you're working on — it builds that automatically, and you can edit it in Settings. Use Basic Memory for knowledge at a different scale: full notes, decision records, and research that one rolling summary can't hold, and that you can open in any other tool.
Claude Code: Use CLAUDE.md for project instructions ("use 2-space indentation," "run tests before committing"). Use auto memory for small learnings Claude picks up. Use Basic Memory for everything deeper — architecture decisions, API design notes, research, meeting summaries, project context that you want searchable and linked.
ChatGPT: Let ChatGPT's saved memories and chat history handle personal preferences — "I'm vegetarian," "I live in San Francisco." Use Basic Memory for structured knowledge — project documentation, decision records, research notes — especially anything you also need in your IDE or other AI tools.
Cursor: Use Cursor's built-in memories for quick rules. Use Basic Memory for the project knowledge that should survive across tools and sessions.
A concrete example
Say you're designing an authentication system. Here's what goes where:
Built-in memory stores:
- "We use TypeScript with strict mode"
- "Preferred test framework: vitest"
- "Always use 2-space indentation"
Basic Memory stores:
---
title: Authentication Design Decision
type: decision
tags: [auth, security, api]
---
# Authentication Design Decision
## Observations
- [decision] Using JWT with refresh tokens for stateless auth
- [rationale] Chose JWT over sessions for horizontal scaling
- [constraint] Refresh tokens rotate on each use
- [risk] Token revocation requires a blacklist check
## Relations
- implements [[API Security Requirements]]
- depends_on [[User Database Schema]]
- informs [[Rate Limiting Strategy]]
The built-in memory tells the AI how you like to work. Basic Memory tells the AI what you know and what you've decided. Both make the AI more useful, in different ways.
Getting started
If you're already using an AI tool with built-in memory, adding Basic Memory takes a few minutes:

