EverMind-AI/EverOS
One portable memory layer for every AI agent: local-first, Markdown-native, user-owned, and self-evolving across apps, tools, and workflows.
EverOS – 永続的で、Markdownで構成されたAIエージェント用記憶
何であるか – EverOSは、任意のLLM駆動エージェントにローカル優先の長期記憶層を提供するPythonライブラリです。会話、ファイル、エージェントの「エピソード」をプレーンテキストのMarkdownファイルとして保存し、SQLiteインデックスとLanceDBベクタインデックスを同期させることで、高速な検索が可能になります。
なぜ重要か – 多くのエージェント記憶ツールはデータを不透明なデータベースやクラウドサービスの裏に隠しています。EverOSは真実のソースを人間が読める形式にし、バージョン管理(Git対応)可能で、任意のエディタで編集できます。これにより、開発者は別途ダッシュボードを用意せずに、記憶の検査、差分比較、進化を実現できます。
コアコンセプト
| 機能 | EverOSの実装方法 |
|---|---|
| Markdownを真実のソースとする | すべてのエピソード、プロフィール、知識ページはディスク上の.mdファイルです。ファイルは直接編集可能で、ファイル監視者がSQLite/LanceDBインデックスを自動更新します。 |
| 3段階のローカルスタック | 外部サービスは不要です: • Markdownファイル:永続化用 • SQLite:関係型クエリ(例:ユーザー、アプリ、プロジェクトごと) • LanceDB:埋め込みプロバイダが設定された場合、高速なベクタ検索が可能。 |
| ユーザーとエージェントの分離 | episodes/profileはユーザーの個人的履歴を保存し、cases/skillsはエージェントが学習した能力を保存します。 |
| 直交的な検索 | クエリはuser_id、agent_id、app_id、project_id、session_idでスコープを絞ることができ、どの記憶を参照するかを細かく制御できます。 |
| 知識ウィキ | タクソノミー、CRUD API、トピック検索を備えた編集可能なMarkdown知識ページが、同じ記憶ストアに含まれます。 |
| リフレクション / オフライン進化 | セッション終了後、関連するエピソードをマージし、プロフィールを最適化し、再利用可能なスキルを抽出して次の実行に備えます。 |
クイックスタート(ワンキーセットアップ)
- インストール –
pip install everos(またはuv pip install everos)。 - デモ実行 –
everos demoでAPIキーなしでインジェスト → インデックス → リコールのループを確認できます。 - LLMの設定 –
everos initで~/.everos/everos.tomlを作成。OpenRouter APIキーを入力(例:model = "openai/gpt-4.1-mini")。 - サーバー起動 –
everos server start(/api/v2/memory/*を公開)。 - 記憶の追加・取得 –
/api/v2/memory/add、/flush、/searchにJSONをPOST。LLM設定のみでキーワード検索が可能。[embedding]セクションを追加するとハイブリッド(ベクタ+キーワード)検索、リフレクション、スキル抽出が有効になります。
オプショナル拡張機能
| 拡張機能 | 追加機能 |
|---|---|
everos[multimodal] |
everalgo-parserを介して画像、PDF、音声、オフィス文書のインジェスト。.doc/.ppt/.xls変換にはLibreOfficeが必要。 |
埋め込みプロバイダ([embedding]) |
ハイブリッド検索、メモリクラスタリング、自動スキル抽出。 |
リランクプロバイダ([rerank]) |
エージェント検索と知識ウィキスタイルのランク付け。 |
一般的な利用例(READMEに記載)
- スマートグラスアシスタント – スポーツやウェアラブルエージェント向けの永続的コンテキスト。
- AIコーディングアシスタント – コードスニペット、プロジェクト履歴、開発者好みの長期記憶。
- データ分析技術者 – 高次元時系列データの過去の探索を記憶するエージェント。
- 個人記憶支援ツール – アルツハイマー支援、味覚ジャーナル、クリエイティブブレインストーミング用アプリ。ユーザー体験の動的なログを維持。
- マルチエージェントオーケストレーションプラットフォーム – Claude、Gemini、OpenCodeなど複数エージェントが共通の知識ベースを通じて協働できる共有記憶バックエンド。
使用すべき人
- LLMエージェントを開発する開発者:軽量でオフライン優先の記憶ストアが必要で、バージョン管理に残る必要がある人。
- プロダクトチーム:外部ベクタデータベースを管理せずに、下流アプリ(ブラウザ、スマートグラス、IDEプラグイン)に記憶APIを公開したい人。
- 研究者:記憶駆動型プロンプティング、リフレクション、長期ホライズンエージェント行動を探索する人。
コードでの導入(最小限の例)
from everos import EverOSClient
client = EverOSClient(root="~/.everos")
# 短い会話を追加
client.add_memory(
session_id="demo-001",
app_id="demo",
project_id="demo",
messages=[
{"sender_id": "alice", "role": "user", "content": "私はヨセミテで登攀が好きです。"},
{"sender_id": "alice", "role": "assistant", "content": "楽しそうですね!"},
],
)
client.flush_memory(session_id="demo-001")
# キーワード検索
results = client.search_memory(
user_id="alice",
query="どこで登攀するのが好きですか?",
method="keyword",
top_k=5,
)
print(results)
この呼び出しは~/.everos配下にMarkdownファイルを書き込み、SQLite/LanceDBインデックスを更新し、一致するエピソードを返します。
エコシステム
EverOSは以下の既存統合を備えています:
- DeepSeek Harness, Hermes, OpenClaw, Raven, Dify(
EverMind-AI/pluginsリポジトリ経由)。 - READMEにリストアップされたコミュニティプロジェクト(例:AIUIスポーツエージェント、Hiveオーケストレーター、EverMem同期ツールなど)。
ライセンスと貢献
リポジトリは一般的なオープンソースモデルに従います(READMEにmake test、uv sync、CONTRIBUTINGガイドへのリンクあり)。プルリクエストによる貢献を歓迎。サポートはDiscordとWeChatコミュニティで提供されています。
結論 – EverOSは本格的でプロダクション対応のライブラリであり、外部クラウドサービスに依存せずに、どのLLMベースエージェントにも耐久性があり、編集可能で検索可能な記憶ストアを提供します。Markdownベースの永続性に重点を置いているため、開発者にとってエージェントの長期知識に対する透明性とバージョン管理が特に魅力的です。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト