diff --git a/TODO.md b/TODO.md index bec722f..aaf3cbb 100644 --- a/TODO.md +++ b/TODO.md @@ -43,6 +43,38 @@ though it already exits cleanly when it finds no database. Update `user/CLAUDE.md` to name the command in the same change, or the doc and the layout disagree the moment this ships. +### Prior art to discuss: akitaonrails/ai-memory + + — read 2026-08-13. Solves a superset +of this: cross-vendor long-term memory so you can quit Claude Code mid-task and +continue in Codex without re-explaining. A Rust binary plus a data dir, served +over MCP, with `install-mcp` and `install-hooks` subcommands. + +Worth stealing even if we never run it: + +- **`_global` scope.** A reserved project that is unioned into every query — + standing personal rules, tech choices, style. Exactly what `user/CLAUDE.md` + is. Confirms the split we already made. +- **Page categories**: `_rules/`, `decisions/`, `procedures/`, `gotchas/`. + Better than one growing file. Our `user/CLAUDE.md` is six sections and will + not stay readable at twenty. +- **Authority-aware retrieval.** Maintained rules outrank episodic session + evidence, but do not become absolute. A good answer to "the doc says X but + the code does Y" — which bit us today with the stale `pm2` rule. +- **`.ai-memory.toml` marker file** in a repo ancestor to pin which + workspace/project a directory belongs to. Directly relevant to our manifest's + "only if this path exists" condition — a marker is more explicit than a path + test. +- **`bootstrap`** seeds pages from `git log`, README, `docs/`, module headers. + The thing we would want when adding a new machine or repo. + +The real decision: it is a **running service** (daemon, SQLite, FTS5, +embeddings, MCP, hooks). Ours is plain files and symlinks, readable with `cat`, +and works when nothing is installed. That simplicity is a feature, especially +given today's "code on disk is not what is running here" problem. Options: +adopt it, borrow the taxonomy only, or stay flat and revisit when the flat file +gets unreadable. + ### Open questions - Which files are genuinely universal vs this-machine-only? Right now