Skip to main content
ClaudeWave

One portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows.

Subagents12.9k stars918 forksPythonApache-2.0Updated 2d ago
Editor's note

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.

ClaudeWave Trust Score
100/100
Verified
Passed
  • Open-source license (Apache-2.0)
  • Actively maintained (<30d)
  • Healthy fork ratio
  • Clear description
  • Topics declared
  • Documented (README)
Last scanned: 9/11/2026
Install as a Claude Code subagent
Method: Clone
Terminal
git clone https://github.com/EverMind-AI/EverOS && cp EverOS/*.md ~/.claude/agents/
1. Clone the repository and copy the agent .md definitions into ~/.claude/agents (or .claude/agents inside a project).
2. Start a new Claude Code session to load the agents.
3. Delegate work to them with the Task/Agent tool or by name.

5 items in this repository

commitSkill

Stage and create a Conventional Commits message for the current change

Install

Create a GitHub branch from main with the project naming convention

Install
prSkill

Open a GitHub PR targeting the correct branch with the project template

Install

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).

Install
releaseSkill

Cut a versioned release and publish everos to PyPI via the tag-triggered workflow

Install
Use cases

Subagents overview

<div align="center" id="readme-top">

![EverOS banner](https://github.com/user-attachments/assets/806e9d7f-c861-4b89-9141-11e38f8753e3)

<p align="center">
  <a href="https://x.com/evermind"><img src="https://img.shields.io/badge/EverMind-000000?labelColor=gray&style=for-the-badge&logo=x&logoColor=white" alt="X"></a>
  <a href="https://huggingface.co/EverMind-AI"><img src="https://img.shields.io/badge/🤗_HuggingFace-EverMind-F5C842?labelColor=gray&style=for-the-badge" alt="HuggingFace"></a>
  <a href="https://discord.gg/gYep5nQRZJ"><img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fdiscord.com%2Fapi%2Fv10%2Finvites%2FgYep5nQRZJ%3Fwith_counts%3Dtrue&query=%24.approximate_presence_count&suffix=%20online&label=Discord&color=404EED&labelColor=gray&style=for-the-badge&logo=discord&logoColor=white" alt="Discord"></a>
  <a href="https://github.com/EverMind-AI/EverOS/discussions/67"><img src="https://img.shields.io/badge/WeCom-EverMind_社区-07C160?labelColor=gray&style=for-the-badge&logo=wechat&logoColor=white" alt="WeChat"></a>
</p>

[Website](https://evermind.ai) · [Documentation](https://docs.evermind.ai) · [Blog](https://evermind.ai/blogs) · [中文](README.zh-CN.md)

</div>


<br>

<details>
  <summary><kbd>Table of Contents</kbd></summary>

<br>

- [Why EverOS](#why-ever-os)
- [Ecosystem Integrations](#ecosystem-integrations)
- [Quick Start](#quick-start)
- [Use Cases](#use-cases)
- [Documentation](#documentation)
- [EverMind Ecosystem](#evermind-ecosystem)
- [Contributing](#contributing)

<br>

</details>


## 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.

<table>
<tr>
<th width="28%">Title</th>
<th width="36%">EverOS</th>
<th width="36%">Other Agent Memory Libraries</th>
</tr>
<tr>
<td><strong>Markdown source of truth</strong></td>
<td>✅ Canonical <code>.md</code> files that are readable, editable, diffable, and Git-versioned</td>
<td>❌ Usually API, vector, graph, dashboard, or database state</td>
</tr>
<tr>
<td><strong>Direct file editing</strong></td>
<td>✅ Edit <code>.md</code> files; cascade watcher syncs</td>
<td>❌ Usually SDK, API, dashboard, or backend update paths</td>
</tr>
<tr>
<td><strong>Local three-part stack</strong></td>
<td>✅ Markdown + SQLite + LanceDB; no MongoDB, Elasticsearch, or Redis required</td>
<td>❌ Often depends on managed services, vector DBs, graph DBs, or server stacks</td>
</tr>
<tr>
<td><strong>User + agent tracks</strong></td>
<td>✅ User <code>episodes/profile</code> and agent <code>cases/skills</code> are separate first-class surfaces</td>
<td>❌ Usually centered on chat history, profiles, entities, facts, or retrieval records</td>
</tr>
<tr>
<td><strong>Orthogonal retrieval</strong></td>
<td>✅ Search by <code>user_id</code>, <code>agent_id</code>, <code>app_id</code>, <code>project_id</code>, and <code>session_id</code></td>
<td>❌ Usually app, namespace, tenant, thread, or graph scoped</td>
</tr>
<tr>
<td><strong>Knowledge Wiki</strong></td>
<td>✅ Editable, source-backed Markdown knowledge pages with taxonomy, CRUD APIs, and topic search</td>
<td>❌ Usually separate from memory, trapped in a dashboard, or not tied back to source files</td>
</tr>
<tr>
<td><strong>Reflection</strong></td>
<td>✅ Offline memory evolution that merges episode clusters and refines profiles and skills between sessions</td>
<td>❌ Usually retrieval-only memory with little background consolidation or long-horizon improvement</td>
</tr>
</table>

<br>

## 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.

<table width="100%">
<tr>
<td width="400" align="center"><a href="https://github.com/EverMind-AI/plugins/tree/main/dsh"><img src="https://avatars.githubusercontent.com/u/148330874?s=200&amp;v=4" alt="DeepSeek Harness" width="72"><br><strong>DeepSeek Harness</strong></a></td>
<td width="400" align="center"><a href="https://github.com/EverMind-AI/plugins/tree/main/hermes"><img src="https://github.com/user-attachments/assets/477eebc4-e615-4425-921e-368d7667e491" alt="Hermes" width="72"><br><strong>Hermes</strong></a></td>
<td width="400" align="center"><a href="https://github.com/EverMind-AI/plugins/tree/main/openclaw"><img src="https://github.com/user-attachments/assets/01d948fe-1e2b-48e8-9b32-b8057cb3f336" alt="OpenClaw" width="72"><br><strong>OpenClaw</strong></a></td>
<td width="400" align="center"><a href="https://github.com/EverMind-AI/Raven"><img src="https://github.com/user-attachments/assets/27e1ea63-69d4-48b3-a884-7f0355926907" alt="Raven" width="72"><br><strong>Raven</strong></a></td>
<td width="400" align="center"><a href="https://github.com/EverMind-AI/plugins#plugins"><img src="https://raw.githubusercontent.com/langgenius/dify/280f81757d5fdea9c2dd804483c7f70c2e95cd9a/web/public/logo/logo-site.png" alt="Dify" width="112"><br><strong>Dify</strong></a></td>
</tr>
</table>

<br>

## Quick Start

> One OpenRouter API key is enough to start EverOS, write durable memories,
> and retrieve them with keyword search.

### Prerequisites

- Python 3.12+
- One [OpenRouter API key](https://openrouter.ai/keys)

### 1. Install

```bash
uv pip install everos
# or: pip install everos
```

### 2. 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:

```bash
# If you installed EverOS as a package:
everos demo

# If you cloned or forked this repository and have not activated .venv:
uv run everos demo
```

Enter 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

```bash
everos init
```

This 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`:

```toml
[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 <path>` if you want a different memory root. Pass the
same `--root <path>` to subsequent commands.

### 4. Start EverOS

```bash
everos server start
```

Keep the server running, then open a second terminal and check it:

```bash
curl http://127.0.0.1:8000/health
```

Look 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/v1` prefix 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:

```bash
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:

```bash
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:

```bash
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 `~/.everos` and inspect the generated
> Markdown files.

For annotated responses and the Markdown files EverOS creates, see
[QUICKSTART.md](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 --live` is 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.

### Optional: Ingest Multimodal Fi
agent-memoryagentic-aiaichatsclawdbotclawdbot-skilldeepseek-harnessdshdsh-pluginllmlong-term-memorymcpmemorymemory-managementpython3ragskills

What people ask about EverOS

What is EverMind-AI/EverOS?

+

EverMind-AI/EverOS is subagents for the Claude AI ecosystem. One portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows. It has 12.9k GitHub stars and its last recorded update is dated 2026-09-09.

How do I install EverOS?

+

You can install EverOS by cloning the repository (https://github.com/EverMind-AI/EverOS) or following the README instructions on GitHub. ClaudeWave also provides quick install blocks on this page.

Is EverMind-AI/EverOS safe to use?

+

Our security agent has analyzed EverMind-AI/EverOS and assigned a Trust Score of 100/100 (tier: Verified). See the full breakdown of passed checks and flags on this page.

Who maintains EverMind-AI/EverOS?

+

EverMind-AI/EverOS is maintained by EverMind-AI. The last recorded GitHub activity is dated 2026-09-09, with 69 open issues.

Are there alternatives to EverOS?

+

Yes. On ClaudeWave you can browse similar subagents at /categories/agents, sorted by popularity or recent activity.

Deploy EverOS to your cloud

Ship this repo to production in minutes. Each platform spins up its own environment with editable env vars.

Maintain this repo? Add a badge to your README

Drop the badge into your GitHub README to show it's tracked on ClaudeWave. Each badge links back to this page and reflects the live Trust Score.

Featured on ClaudeWave: EverMind-AI/EverOS
[![Featured on ClaudeWave](https://claudewave.com/api/badge/evermind-ai-everos)](https://claudewave.com/repo/evermind-ai-everos)
<a href="https://claudewave.com/repo/evermind-ai-everos"><img src="https://claudewave.com/api/badge/evermind-ai-everos" alt="Featured on ClaudeWave: EverMind-AI/EverOS" width="320" height="64" /></a>

More Subagents

EverOS alternatives