EverOS
One portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows.
- 13.6k estrellas
- 945 forks
- 59 issues abiertos
- Lenguaje: Python
- Licencia: Apache-2.0
- actualizado
Instalación
git clone https://github.com/EverMind-AI/EverOS && cp EverOS/*.md ~/.claude/agents/- Clone the repository and copy the agent .md definitions into ~/.claude/agents (or .claude/agents inside a project).
- Start a new Claude Code session to load the agents.
- Delegate work to them with the Task/Agent tool or by name.
Nota editorial
EverOS is an open-source Python framework that provides a portable, local-first long-term memory layer shared across multiple AI agents, including Claude Code, Codex, and others. It persists all memory as plain Markdown files, then maintains local SQLite and LanceDB indexes to support hybrid retrieval combining vector search, BM25, and scalar filters, with no external services like MongoDB or Elasticsearch required. The system maintains four distinct memory scopes: agent-level cases and skills alongside user-level episodes and profile data, allowing retrieval to be filtered independently by user, agent, app, project, or session identifiers. It connects to Claude Code as one of its primary supported runtimes and exposes an MCP-compatible interface, making it usable as a subagent memory backend. A standout detail is the self-evolution mechanism, where repeated usage patterns are automatically extracted into reusable skills without retraining. Multimodal ingestion covering PDFs, images, audio, and email is available via an optional install. Developers building multi-agent workflows who need context to persist and transfer across tools will find it most relevant.
5 items en este repositorio
Add a new business memory kind end-to-end. Pick the storage combination (Markdown / SQLite / LanceDB), pick the markdown strategy (daily-log / skill-named / single-file), then wire up the schema(s), repo(s), and writer(s).
Cut a versioned release and publish everos to PyPI via the tag-triggered workflow
Resumen de Subagents
Website · Documentation · Blog · 中文
Table of Contents
Why EverOS
EverOS is a Python library and local-first memory runtime for agents and makers. It gives one portable memory layer across coding assistants, apps, devices, and workflows from day one. It stores conversations, files, and agent trajectories as readable Markdown, then syncs local SQLite and LanceDB indexes for fast retrieval and self-evolving reuse.
Title EverOS Other Agent Memory Libraries Markdown source of truth ✅ Canonical .md files that are readable, editable, diffable, and Git-versioned ❌ Usually API, vector, graph, dashboard, or database state Direct file editing ✅ Edit .md files; cascade watcher syncs ❌ Usually SDK, API, dashboard, or backend update paths Local three-part stack ✅ Markdown + SQLite + LanceDB; no MongoDB, Elasticsearch, or Redis required ❌ Often depends on managed services, vector DBs, graph DBs, or server stacks User + agent tracks ✅ User episodes/profile and agent cases/skills are separate first-class surfaces ❌ Usually centered on chat history, profiles, entities, facts, or retrieval records Orthogonal retrieval ✅ Search by user_id, agent_id, app_id, project_id, and session_id ❌ Usually app, namespace, tenant, thread, or graph scoped Knowledge Wiki ✅ Editable, source-backed Markdown knowledge pages with taxonomy, CRUD APIs, and topic search ❌ Usually separate from memory, trapped in a dashboard, or not tied back to source files Reflection ✅ Offline memory evolution that merges episode clusters and refines profiles and skills between sessions ❌ Usually retrieval-only memory with little background consolidation or long-horizon improvement
Ecosystem Integrations
EverOS adds durable memory to the agent and workflow platforms below—and comes built into Raven. Choose an integration to open its setup guide.
DeepSeek Harness Hermes OpenClaw Raven Dify
Quick Start
One OpenRouter API key is enough to start EverOS, write durable memories, and retrieve them with keyword search.
Prerequisites
Python 3.12+
1. Install
uv pip install everos
# or: pip install everos2. Try the standalone demo — no key required
No API key or server setup required—run one command to quickly experience how EverOS stores and recalls memory:
# If you installed EverOS as a package:
everos demo
# If you cloned or forked this repository and have not activated .venv:
uv run everos demoEnter something EverOS should remember, then ask a related question to watch the memory move through ingest -> extract -> index -> recall.
https://github.com/user-attachments/assets/98cb8e1e-2ca8-4504-b0a6-0b9a040a0a5c
3. Initialize and add your OpenRouter key
everos initThis creates ~/.everos/everos.toml and ~/.everos/ome.toml. Open
~/.everos/everos.toml; the generated model and OpenRouter URL are already
correct, so replace only the empty api_key:
[llm]
model = "openai/gpt-4.1-mini"
api_key = "<OPENROUTER_API_KEY>"
base_url = "https://openrouter.ai/api/v1"This is the smallest Tier 1 setup: memory add, flush, Markdown persistence, cascade indexing, and keyword search.
Use everos init --root if you want a different memory root. Pass the
same --root to subsequent commands.
4. Start EverOS
everos server startKeep the server running, then open a second terminal and check it:
curl http://127.0.0.1:8000/healthLook for "status":"ok". With this one-key setup, capabilities.llm is
true; embedding and rerank remain false until you configure them.
5. Add and retrieve your first memory
Note
Business endpoints live under
/api/v2. The older/api/v1prefix still resolves to the same handlers so existing integrations keep working, but it is a legacy alias that may be removed in a future major release — write new code against/api/v2.
Add a tiny conversation:
TS=$(($(date +%s)*1000))
curl -X POST http://127.0.0.1:8000/api/v2/memory/add \
-H 'Content-Type: application/json' \
-d "{
\"session_id\": \"demo-001\",
\"app_id\": \"default\",
\"project_id\": \"default\",
\"messages\": [
{\"sender_id\": \"alice\", \"role\": \"user\", \"timestamp\": $TS, \"content\": \"I love climbing in Yosemite every spring.\"},
{\"sender_id\": \"alice\", \"role\": \"user\", \"timestamp\": $((TS+10000)), \"content\": \"My favorite coffee shop is Blue Bottle in SOMA.\"}
]
}"Flush the memory at the end of the session:
curl -X POST http://127.0.0.1:8000/api/v2/memory/flush \
-H 'Content-Type: application/json' \
-d '{"session_id":"demo-001","app_id":"default","project_id":"default"}'Search it back:
curl -X POST http://127.0.0.1:8000/api/v2/memory/search \
-H 'Content-Type: application/json' \
-d '{
"user_id": "alice",
"app_id": "default",
"project_id": "default",
"query": "Where do I like to climb?",
"method": "keyword",
"top_k": 5
}'You should see the Yosemite memory in the response. Keep
"method": "keyword" in this one-key setup because the API defaults to hybrid
search, which requires an embedding provider.
Tip
First memory unlocked. You just gave EverOS a fact, flushed it into durable Markdown-backed memory, and searched it back through the local index. That is the core loop. Want to see the source of truth? Open
~/.everosand inspect the generated Markdown files.
For annotated responses and the Markdown files EverOS creates, see QUICKSTART.md.
What works with one key?
The OpenRouter one-key setup is EverOS Tier 1. It supports server startup, memory add and flush, durable Markdown storage, cascade indexing, and keyword search. Add optional providers only when you need the features below:
| Configuration | Adds |
|---|---|
[llm] only | Core memory flow and keyword search |
Add [embedding] | Vector/user hybrid search, reflection, and skill extraction |
Add [rerank] too | Agentic search, default agent hybrid search, and Knowledge Wiki |
Add [multimodal] and parser extra | Image, PDF, audio, and office-file ingestion |
Missing optional capabilities are reported by /health and return a clear
HTTP 422 if you request a feature that needs them.
Note
everos demo --liveis different from the standalone demo in step 2: it connects to a running server and uses the real add/flush/search flow. It uses hybrid search, so add an embedding provider before you run it.
Lo que la gente pregunta sobre EverOS
¿Qué es EverMind-AI/EverOS?
EverMind-AI/EverOS es subagents para el ecosistema de Claude AI. One portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows. Tiene 13.6k estrellas en GitHub y su última actualización registrada es del 2026-10-22.
¿Cómo se instala EverOS?
Puedes instalar EverOS clonando el repositorio (https://github.com/EverMind-AI/EverOS) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.
¿Es seguro usar EverMind-AI/EverOS?
Nuestro agente de seguridad ha analizado EverMind-AI/EverOS y le ha asignado un Trust Score de 100/100 (tier: Verified). Revisa el desglose completo de comprobaciones superadas y flags en esta página.
¿Quién mantiene EverMind-AI/EverOS?
EverMind-AI/EverOS es mantenido por EverMind-AI. La última actividad registrada en GitHub es del 2026-10-22, con 59 issues abiertos.
¿Hay alternativas a EverOS?
Sí. En ClaudeWave puedes explorar subagents similares en /categories/agents, ordenados por popularidad o actividad reciente.
¿Mantienes este repo? Muestra su Trust Score en tu README
La insignia muestra el Trust Score y el veredicto actuales de este repositorio y enlaza a esta página. Sigue los datos del catálogo: nadie puede comprar ni editar la puntuación que enseña.
[](https://claudewave.com/en/repo/evermind-ai-everos)<a href="https://claudewave.com/en/repo/evermind-ai-everos"><img src="https://claudewave.com/api/badge/evermind-ai-everos" alt="ClaudeWave Trust Score for EverMind-AI/EverOS" width="320" height="64"></a>