memex CLAUDE.md

memex CLAUDE.md is an instructions file for coding agents from evan-moon/memex. It costs 2,539 tokens per session, scanned A, original, MIT.

Repository instructions for Memex, a desktop note system that searches personal notes by meaning using a local database and text embeddings.

In plain words
What is it for?
Use them when modifying Memex’s desktop app, command-line tool, MCP server, user interface, or note-search system.
Why use it?
They explain the project’s architecture and development setup, helping an agent change the interface without breaking how the app, database, and search components connect.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/evan-moon/memex/claude-md
Clone the repo
git clone --depth 1 https://github.com/evan-moon/memex

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for memex CLAUDE.md

README.md
[![agentmods](https://agentmods.dev/badge/instructions/evan-moon/memex/claude-md.svg)](https://agentmods.dev/instructions/evan-moon/memex/claude-md)
Your own site
<a href="https://agentmods.dev/instructions/evan-moon/memex/claude-md"><img src="https://agentmods.dev/badge/instructions/evan-moon/memex/claude-md.svg" alt="Measured on agentmods" height="20"></a>
Per session 2,539 This file is loaded in full into every session.
When invoked 2,539 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.02539 $0.02539
Opus 5 $0.01269 $0.01269
Sonnet 5 $0.00508 $0.00508
Haiku 4.5 $0.00254 $0.00254

Measured today against content hash dc90ad4774dd, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

memex CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 153 lines

How it starts

The opening of the file, as written. The whole thing — 153 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Memex

Memex

Evan's second brain — semantic search over personal notes, powered by SQLite + vector embeddings.

Architecture

apps/
├── cli/     # memex CLI — the safety net (see surface policy below)
├── desktop/ # The Electron app — the only way a person reaches the screen
├── mcp/     # MCP server — exposes memex tools to Claude
└── ui/      # The React screens, served by the app's own `memex://` handler
packages/
├── core/   # Note service shared by cli/mcp (save/edit/search/delete)
├── db/     # SQLite client, schema, repository (drizzle + sqlite-vec)
├── embed/  # Embedding model wrapper (@huggingface/transformers)
├── rerank/ # Cross-encoder reranker, opt-in via MEMEX_RERANK=1
└── utils/  # Config loader, path helpers, formatters, note chunker

DB lives at ~/.memex/memex.db. Model cache at ~/.memex/models/.

openDb snapshots the database to memex.db.bak-<YYYYMMDD-HHMMSS> whenever a schema migration is pending and the vault is not empty, then keeps the newest three. It uses VACUUM INTO rather than copying the file, because the app, the MCP server and the CLI are all attached in WAL mode and a filesystem copy can be torn mid-transaction — if you ever copy the DB by hand, take -wal with it. A snapshot that fails does not stop the database from opening; memex stats prints how many backups are kept and when the newest was taken.

Working on the UI

yarn dev:app runs the app against your real vault with the screen hot-reloading: Vite owns the page and swaps a component without losing where you were, Electron owns everything else. The window still loads memex://app/ — the handler asks Vite for the page instead of reading it off disk, so /api goes the same way it does in a packaged build. yarn desktop is the same thing without Vite, which is what to reach for when the question is about packaging rather than the screen.

better-sqlite3 is built against V8's ABI, so one build cannot serve both runtimes. yarn native keeps two — better_sqlite3-node.node and better_sqlite3-electron.node, side by side in node_modules/better-sqlite3/build/Release — and openDb names the one it can load. The app, the MCP server and the tests all run at the same time; nothing is swapped, and nothing has to be put back. dev:app, desktop and package:mac run it for you, and it does nothing when both builds are already there for the current Node and Electron.

Read the full file on GitHub · 153 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. today Changed · +32 lines · +605 tokens per session dc90ad4774dd
  2. 4d ago First seen · 121 lines · 1,934 tokens per session scan A 6b68d1636240

Subscribe to this mod's changes

memex CLAUDE.md is an instructions file published in the GitHub repository evan-moon/memex (3 stars, last pushed today), licensed MIT. It adds 2,539 tokens to every session, about $0.0127 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.