Show HN: Memnest, local-first memory shared by pi, Claude Code and Codex Memnest, a new local-first memory tool for AI coding agents, lets pi, Claude Code, and Codex share durable memory across sessions via a single MCP contract. The Rust-based service, which runs entirely on-device with SQLite storage and local embeddings, offers hybrid BM25 and HNSW search, project isolation, and an AES-256-GCM secret vault, with Linux installers available via curl. Your AI coding agent forgets everything when the session ends. Memnest keeps that memory on your machine and hands it back to the next session, through one small tool contract that pi, Claude Code, Codex, and other MCP clients all speak. | Capability | What it means | |---|---| | Durable memory | Decisions, preferences, and corrections you save on purpose, not a chat log dump. | | Conversation history | Redacted user and assistant text, kept verbatim and searchable, with no LLM summarization. | | Hybrid search | Local BM25 keyword matching and HNSW vector similarity over both kinds of memory. | | Project isolation | One directory's memory stays in its own workspace. playbook carries rules shared everywhere. | | Secret vault | Credentials live in an AES-256-GCM store, separate from anything searchable. | One Rust service handles tool calls, prompt-time recall, and transcript capture on separate data paths. SQLite is the source of truth; the Tantivy and HNSW indexes beside it are derived and rebuildable. Nothing here calls an LLM, and embeddings run locally with intfloat/multilingual-e5-base . Writing and reading are separate paths over the same store. A write is durable before it is searchable, and a read merges two independent rankings rather than trusting either one. flowchart TD subgraph read "Read path" direction TB R1 "query plus cwd" -- R2 "scope: this workspace