Memory Engine
Your browser becomes a knowledge system. Doda’s Knowledge Graph automatically captures and indexes everything you read, turning your browsing history into a searchable, queryable second brain.
Overview
The Memory Engine is a native C++ component compiled into the browser (not an extension). Every page you visit is automatically indexed in a local SQLite database with full-text search.
Key Features
- Automatic Content Capture — every page you visit gets indexed via JSWindowActor
- SQLite FTS5 Full-Text Search — fast, ranked search with snippet generation
- Semantic Search — find pages by meaning, not just keywords
- Related Pages — domain-based clustering for “other pages like this”
- Entity Extraction — people, places, topics extracted and connected
- Timeline View — browse your history by time and relationships
- Annotations — save notes and highlights directly into the Knowledge Graph
- Graph View — visualize connections between pages, entities, and concepts
How It Works
| Layer | Role |
|---|---|
| XPIDL Interface | Scriptable API: indexPage(), search(), getRelated(), clear() |
| C++ Service | Opens knowledgegraph.sqlite in profile dir, manages FTS5 full-text search |
| Public JS Module | Importable module wrapping the XPCOM service |
| JSWindowActor (child) | Fires on DOMContentLoaded, extracts text via idle callback |
| JSWindowActor (parent) | Receives page text, calls indexPage() on native service |
| About Page | about:knowledgegraph — native UI with search, graph, annotations |
Access
- Navigate to
about:knowledgegraphin Doda - Or use the Command Palette (
Ctrl+Shift+,)
Privacy
All data stays in knowledgegraph.sqlite in your profile directory. Nothing is ever sent to any server. Zero telemetry, zero exfiltration.