Supports the Windsurf IDE by Codeium, enabling AI coding agents to maintain continuity through persistent memory, auto-capture of lessons, and semantic search of past sessions.
OMEGA
AI agents that remember, coordinate, and learn. All on your machine. Your agent's brain shouldn't live on someone else's server.
The Problem
AI coding agents are stateless. Every new session starts from zero. And the "solutions" want you to send your codebase context to their cloud.
Context loss. Agents forget every decision, preference, and architectural choice between sessions. Developers spend 10-30 minutes per session re-explaining context that was already established.
Repeated mistakes. Without learning from past sessions, agents make the same errors over and over. They don't remember what worked, what failed, or why a particular approach was chosen.
Cloud memory = someone else's database. Services like Mem0 require API keys and send your data to their servers. When they change pricing, get acquired, or go down, your agent's accumulated intelligence disappears.
OMEGA solves this. Memory, coordination, and learning that runs entirely on your machine. No cloud. No API keys. No vendor lock-in.
Quick Install
pip install omega-memory[server] # Full install (memory + MCP server)
omega setup # Downloads model, registers MCP, installs hooks
omega doctor # Verify everything worksIf you only need OMEGA as a Python library for scripts, CI/CD, or automation:
pip install omega-memory # Core only, no MCP server processfrom omega import store, query, remember
store("Always use TypeScript strict mode", "user_preference")
results = query("TypeScript preferences")This gives you the full storage and retrieval API without running an MCP server (~50 MB lighter, no background process). Hooks still work:
omega setup --hooks-only # Auto-capture + memory surfacing, no MCP server (~600MB RAM saved)From Source
git clone https://github.com/omega-memory/omega.git
cd omega
pip install -e ".[server,dev]"
omega setupomega setup will:
Create
~/.omega/directoryDownload the ONNX embedding model (~90 MB) to
~/.cache/omega/models/Register
omega-memoryas an MCP server with Claude CodeInstall session hooks into
~/.claude/settings.jsonAdd an OMEGA block to
~/.claude/CLAUDE.md
60-Second Quickstart
OMEGA works through natural language — no API calls, no configuration. Just talk to Claude.
1. Tell Claude to remember something:
"Remember that the auth system uses JWT tokens, not session cookies"
Claude stores this as a permanent memory with semantic embeddings.
2. Close the session. Open a new one.
3. Ask about it:
"What did I decide about authentication?"
OMEGA surfaces the relevant memory automatically:
Found 1 relevant memory:
[decision] "The auth system uses JWT tokens, not session cookies"
Stored 2 days ago | accessed 3 timesThat's it. Memories persist across sessions, accumulate over time, and are surfaced automatically when relevant — even if you don't explicitly ask.
Key Features
Memory & Learning — Stores decisions, lessons, error patterns, and preferences with semantic search. Claude recalls what matters without you re-explaining everything each session. 25 memory tools including compaction, consolidation, timeline, graph traversal, and context virtualization (checkpoint/resume).
Multi-Agent Coordination (omega-pro) — File and branch locking, session management, task queues with dependencies, intent broadcasting, and agent-to-agent messaging. 29 coordination tools that prevent agents from overwriting each other's work.
Intelligent LLM Routing (omega-pro) — Classifies tasks and routes to the optimal model. Coding → Claude Sonnet. Quick edit → Llama 8b at 1/60th the cost. 1M token context → Gemini Flash. 5 providers, 4 priority modes, sub-2ms intent classification.
Knowledge Base (omega-pro) — Ingest PDFs, markdown, web pages, and text files into a searchable knowledge base with semantic chunking.
Entity Registry (omega-pro) — Multi-entity corporate memory with relationships, hierarchies, and entity-scoped memories/profiles/documents.
Secure Profile (omega-pro) — AES-256 encrypted personal data storage with macOS Keychain integration.
How OMEGA Compares
Feature | OMEGA | Mem0 | Zep | Copilot Memory |
Your data stays on your machine | Yes | No | No | No |
No API keys or cloud dependency | Yes | No | No | No |
Multi-agent coordination | Yes (pro) | No | No | Partial |
Graph memory included free | Yes | $249/mo | No | No |
LLM routing | Yes (pro) | No | No | No |
Document ingestion (RAG) | Yes (pro) | No | Yes | No |
Free & open source | Yes (Apache 2.0) | Freemium | Freemium | Bundled |
Architecture
┌─────────────────────┐
│ Claude Code │
│ (or any MCP host) │
└──────────┬──────────┘
│ stdio/MCP
┌──────────▼──────────┐
│ OMEGA MCP Server │
│ 25 core tools │
└──┬──────────────────┘
│
┌────────▼──────────────┐
│ Core Memory Engine │
│ (semantic search, │
│ embeddings, graphs) │
└─────┬─────────────────┘
│
▼
┌──────────────────────────────────────┐
│ omega.db (SQLite) │
│ memories | edges | embeddings │
└──────────────────────────────────────┘Single database, modular handlers. Optional modules (coordination, router, entity, knowledge, profile) are available via omega-pro and register into the same server process. No separate daemons, no microservices.
MCP Tools Reference
OMEGA runs as an MCP server inside Claude Code. The core package provides 25 memory tools. omega-pro adds coordination, routing, entity, knowledge, and profile tools.
Memory (25 tools)
Tool | What it does |
| Store typed memory (decision, lesson, error, summary) |
| Semantic search with tag filters and contextual re-ranking |
| Session briefing with recent memories and profile |
| Read or update user profile |
| Delete a specific memory by ID |
| Edit the content of a memory |
| List all stored user preferences |
| Detailed health check with memory usage and recommendations |
| Export or import memories for backup/restore |
| Cross-session lessons ranked by access count |
| Record feedback on a surfaced memory |
| Clear all memories for a specific session |
| Find memories similar to a given one |
| Memories grouped by day |
| Prune stale memories, cap summaries, clean edges |
| Walk the relationship graph |
| Cluster and summarize related memories |
| Save task state for cross-session continuity |
| Resume a previously checkpointed task |
| Set a time-based reminder |
| List active reminders |
| Dismiss a reminder |
| Memory counts grouped by event type |
| Memory counts grouped by session |
| Weekly knowledge digest with stats and trends |
Additional tools with omega-pro
Module | Tools | Description |
Coordination | 29 | File/branch locking, sessions, tasks, messaging, audit |
Router | 10 | LLM routing, intent classification, model switching |
Entity | 8 | Corporate entities, relationships, hierarchies |
Knowledge | 5 | Document ingestion, semantic search, RAG |
Profile | 3 | AES-256 encrypted personal data storage |
CLI
Command | Description |
| Create dirs, download model, register MCP, install hooks ( |
| Verify installation health |
| Memory count, store size, model status |
| Search memories by semantic similarity |
| Store a memory with a specified type |
| Show memory timeline grouped by day |
| Show recent session activity overview |
| Memory type distribution and health summary |
| Deduplicate, prune, and optimize memory |
| Cluster and summarize related memories |
| Back up omega.db (keeps last 5) |
| Validate database integrity |
| Show recent hook errors |
| Migrate legacy JSON to SQLite |
Hooks (7 processes, 11 handlers)
All hooks dispatch via fast_hook.py → daemon UDS socket, with fail-open semantics.
Hook | Matcher | Handlers | Purpose |
SessionStart | all |
| Welcome briefing, session resume |
Stop | all |
| Summary |
UserPromptSubmit | all |
| Auto-capture lessons/decisions |
PostToolUse | Edit/Write/NotebookEdit |
| Surface relevant memories |
PostToolUse | Bash/Read |
| Surface relevant memories |
With omega-pro, additional coordination handlers register automatically: session lifecycle, file/branch claim guards, heartbeat, and git push guards.
Storage
Path | Purpose |
| SQLite database (memories, embeddings, edges) |
| User profile |
| Hook error log |
| ONNX embedding model |
Search Pipeline
Vector similarity via sqlite-vec (cosine distance, 384-dim bge-small-en-v1.5)
Full-text search via FTS5 (fast keyword matching)
Type-weighted scoring (decisions/lessons weighted 2x)
Contextual re-ranking (boosts by tag, project, and content match)
Deduplication at query time
Memory Lifecycle
Dedup: SHA256 hash (exact) + embedding similarity 0.85+ (semantic) + Jaccard per-type
Evolution: Similar content (55-95%) appends new insights to existing memories
TTL: Session summaries expire after 1 day, lessons/preferences are permanent
Auto-relate: Creates
relatededges (similarity >= 0.45) to top-3 similar memoriesCompaction: Clusters and summarizes related memories
Memory Footprint
Startup: ~31 MB RSS
After first query (ONNX model loaded): ~337 MB RSS
Database: ~10.5 MB for ~242 memories
What Gets Modified
omega setup modifies these files outside ~/.omega/:
~/.claude.json— Addsomega-memoryMCP server entry~/.claude/settings.json— Adds hook entries~/.claude/CLAUDE.md— Adds a managed<!-- OMEGA:BEGIN -->block
All changes are idempotent.
Troubleshooting
omega doctor
Ensure
pip install -e ".[server]"from the repo rootCheck
python3 -c "import omega"works
MCP server fails to start:
Run
pip install omega-memory[server](the[server]extra includes the MCP package)
MCP server not registered:
claude mcp add omega-memory -- python3 -m omega.server.mcp_serverHooks not firing:
Check
~/.claude/settings.jsonhas OMEGA hook entriesCheck
~/.omega/hooks.logfor errors
Development
pip install -e ".[server,dev]"
pytest tests/ # 2198+ tests
ruff check src/ # LintUninstall
claude mcp remove omega-memory
rm -rf ~/.omega ~/.cache/omega
pip uninstall omega-memoryManually remove OMEGA entries from ~/.claude/settings.json and the <!-- OMEGA:BEGIN --> block from ~/.claude/CLAUDE.md.
Contributing
License
Apache-2.0. See LICENSE.