$ cat ROADMAP.md
Roadmap.v0.1.0 is an early release. It is usable and it is honest — and it is not at all complete. This page is the actual backlog.
NOW · v0.1.0
What works today
- Memory lifecycle: write with dedup/supersede, versioned corrections, reversible forgetting, hard delete, and full version-chain reads.
- Memory recall: semantic + full-text (exact names, codes, rare tokens), rank-fused, recency-weighted, with a diversity pass. Hybrid document search too.
- Time-aware facts: validity windows with "as of" recall — what was true when.
- Export / import: your memory is one versioned JSON file you can take anywhere.
- Drop-in proxy (/v1/chat/completions) with memory grounding on buffered AND streamed chats.
- Auto-capture with local LLM distillation — heuristic fallback, sensitive-content exclusion, every capture traced and reversible.
- Recall traces (/inspect) and a dashboard with edit / forget / delete / history.
- Retrieval benchmark: bun run bench prints recall@k, MRR, and latency through the real HTTP routes.
- Native MCP server (bella mcp): 9 memory tools over stdio JSON-RPC on the same local store.
- Bug reporting (bella report): assembles a content-free GitHub report and prints a prefilled issue link — the binary sends nothing.
- Credential gate on every write: known secret formats and labeled values are redacted before storage.
- One binary: embedded Postgres + pgvector, local device-scaled embeddings, loopback by default.
every release passes a test suite that fails the build if coverage drops
NEXT
The trust loop, finished
Richer trust views: rejected-capture reasons, version diffs, provenance trees.
next up
LATER
Memory-system parity
- Review queue for inferred (auto-captured) memories — approve or decline before they're trusted.
- Profile rebuild rules, pinned facts, profile + search in one call.
- Context-window preview: see exactly what your agent will see, before it sees it.
- Local folder-memory contract (a watched directory that IS your memory).
- Reranking + result diversity; usage analytics; scoped API keys.
specs first, then code
SOMEDAY
The bigger bets
- Memory graph view + export.
- Optional cross-encoder reranker (downloaded on demand, device-scaled).
- Content extractors (PDF, code, web) and connectors (filesystem / Obsidian first).
- SDKs, editor integrations, desktop shell.
Plugins over bloat — the core stays one small binary.
plugin surfaces, not core
What will never change
Local-first by default. No telemetry. Every recall traceable. Every correction versioned. Forgetting reversible and audited. If a feature can't be made inspectable, it doesn't ship.
memory you can inspect
memory you can correct
memory that never phones home