Installation

Get memex running in under 2 minutes.

Install

npm install -g @evan-moon/memex

Connect your apps

Open the app and use the Connect screen:

memex ui

It lists every MCP client on this machine — Claude, Claude Code, Codex, Cursor — and says which ones can already reach memex. One button registers the rest. Restart a client after connecting it.

The same thing from the terminal:

memex mcp install

Either way memex writes each client's own config file, leaving the servers already in it alone. If a client still runs an older copy of memex, both paths repoint it.

That's it. On first run, the embedding model (~450 MB) downloads once to ~/.memex/models/. All subsequent runs are fully offline.

What gets created

~/.memex/
  config.json, vault path and settings
  memex.db, SQLite database (notes + embeddings + FTS5)
  models/, cached multilingual-e5-base model

Notes are saved as plain Markdown files in your vault (default: ~/Documents/Second Brain). They're fully Obsidian-compatible.

Change the vault path

memex config set vault-path ~/my-notes

Verify the setup

memex list          # lists recent notes (empty on first run)
memex config show   # shows current config

Once you've connected memex to Claude, try asking Claude about something you've worked on. If the topic could relate to a past conversation or decision, Claude will automatically search your notes before answering.

Upgrading from an older version

On first run after upgrading, memex applies idempotent schema migrations, it adds a layer column to existing notes (folder-based backfill: projects / dev / heraldstate, codingrule, everything else → past) and a source column to note_links for the flashback feature. Run memex layer to see the resulting distribution, and memex layer <id> <layer> to correct any individual notes.

See Note layers for what each layer means.