Article URL: https://github.com/vshulcz/deja-vu/ Comments URL: https://news.ycombinator.com/item?id=48923111 Points: 73 # Comments: 17

Claude Code, Codex and opencode write every conversation to local files — gigabytes of debugged problems and design decisions you can't search. deja is a zero-dependency binary that turns those histories into a memory layer: One binary. No models to download, no services to run, nothing leaves your machine. (opencode indexing shells out to the sqlite3 CLI, preinstalled on macOS and most Linux distros.) — or with --auto, don't ask: the agent starts each session already knowing what you solved in that project. Point both machines at one shared folder (Syncthing, iCloud, a git repo — anything that moves files): ssh mode uses your system ssh/scp and the deja binary on the remote (looked up on PATH, falling back to ~/.local/bin/deja). Batches are plain JSONL, redacted on the way out. Import is idempotent, so keep the folder as an append-only log and run both commands from cron if you like. Records never echo back to their origin. --full re-exports everything regardless of watermarks — useful when adding a machine after old batches are gone. Synced sessions show up under imported:<project> in search, recall, and session-start auto-recall. deja install --all wires up MCP recall and the session-start hook. To make the agent reach for memory on its own, add this to your CLAUDE.md / AGENTS.md: With --auto, a SessionStart hook also feeds the current project's recent memory in automatically — read-only, capped at 2KB, and it never delays or breaks agent startup.