可治理的记忆
精编与对话片段双桶策略,可检索、可容量治理,与插件/会话流对齐。
一个开放的经验进化空间,万物皆可经验,开启协作进化
open · composable · observable
OpenEvo 将长期记忆、闭环学习、Wiki 与开放经验空间合为可部署的服务层,让多智能体在统一接口下协作、进化,并对运维与产品保持可观测、可解释。
为什么需要 OpenEvo
OpenEvo 不替代你的模型,而是为模型与工具提供可治理的记忆与学习闭环,并向开放经验空间演进。
精编与对话片段双桶策略,可检索、可容量治理,与插件/会话流对齐。
从工具观测到直觉与技能草稿,让工作流在真实使用中被强化。
多源数据映射为经验,可选向量与图后端,面向多 Agent 协作与演化。
分层能力
默认以 SQLite 与轻量嵌入起步;在规模与语义需要时可接入 Qdrant、Neo4j 与句向量模型,失败时自动回退,不影响主路径。
集成
OpenEvo 提供稳定 HTTP 接口与可观测的 JSON 日志;与 Claude Code、OpenClaw 等可插件化集成。
在会话周期内完成记忆注入与回写,无需在对话里手搓工具名。
请求级追踪、结构化日志与配置热重载,便于排障与合规留痕。
先本地、单机即可验证价值;量起来后再切换向量库与图数据库。
FastAPI & OpenAPI 可插拔存储与嵌入 插件生态
从 README 提炼
以下为本仓库 openevo/README.md 的要点,可在站内直接阅读。完整源文件与历史修订仍以仓库内 Markdown 为准。
OpenEvo 将记忆、学习与开放经验空间沉淀为可部署、可观测的服务层,统一服务研发、智能体与运营。部署可线性扩展,产品与工程心智保持一致。
从安装开始OpenEvo 将 记忆(Memory)、闭环学习(Learning) 与 结构化笔记(Notes/Wiki) 以可独立部署的服务交付;以 HTTP API 与可扩展的插件为产品边界,并随仓库提供 Claude Code hooks 与 OpenClaw context-engine 等配套示例,在对话管线中自动完成写入与检索,无需在聊天中反复显式指定工具。
cd openevo
pip install -e .
evo serve
# 默认 http://127.0.0.1:8765
环境变量(可选):
OPENEVO_DATA_DIR:数据目录(默认项目下 .openevo)OPENEVO_HOST / OPENEVO_PORT:绑定地址OPENEVO_LOG__LEVEL、OPENEVO_LOG__FORMAT(json 或 text)、OPENEVO_LOG__FILE(可选)启动后访问:
http://127.0.0.1:8765/docshttp://127.0.0.1:8765/redoc/openapi.json在数据目录下可放置 config.json、config.yaml 或 config.yml,会与默认设置深度合并。服务运行时用 watchdog 监听变更并刷新 get_settings()。
注意:热重载主要影响get_settings()读到的选项;lifespan中已创建的MemoryService等不会自动重建,需完全随新配置重建服务时请重启进程。
| 模块 | 说明 |
|---|---|
| Memory | 双桶精编记忆 + 插件用 episodic JSON API |
| Learning | observations.jsonl → 本能 JSON → evolved/ 技能草稿 |
| Notes | 本地 Markdown Wiki + SQLite 索引检索 |
GET /healthPOST /api/v1/memories/group — 批量写入POST /api/v1/memories/search、POST /api/v1/memories/curatedGET /api/v1/learning/cycle?dry_run=falseGET /api/v1/notes/orient、POST /api/v1/notes/query经验数据写入 experience/experience.db。环境变量如 OPENEVO_EXPERIENCE__ENABLED、OPENEVO_EXPERIENCE__EMBEDDING_DIM 等;向量/图谱/嵌入可插拔(SQLite、Qdrant、Neo4j 等,失败时可选回退)。
evo status
evo learn --dry-run
Claude Code:plugins/claude-code-plugin/;OpenClaw:plugins/openclaw-plugin/。可运行 bash scripts/install-plugins.sh 一键安装(需探测 OPENEVO_BASE_URL 上 /health,可 SKIP_HEALTH_CHECK=1 跳过)。
openevo/docs/ARCHITECTURE.mdopenevo/docs/PLUGIN_GUIDE.mdopenevo/docs/BRANDING.md许可: MIT
OpenEvo delivers Memory, closed-loop Learning, and structured Notes/Wiki as a self-contained service, with an HTTP and plugin model plus bundled Claude Code and OpenClaw examples to read and write in the chat pipeline without manual tool invocations at every turn.
cd openevo
pip install -e .
evo serve
# default http://127.0.0.1:8765
Optional environment variables:
OPENEVO_DATA_DIR — data dir (default .openevo in project)OPENEVO_HOST / OPENEVO_PORT — bind addressOPENEVO_LOG__LEVEL, OPENEVO_LOG__FORMAT (json or text), OPENEVO_LOG__FILEhttp://127.0.0.1:8765/docshttp://127.0.0.1:8765/redoc/openapi.jsonPlace config.json / config.yaml / config.yml in the data dir; merged with defaults. Watchdog reloads files and refreshes get_settings().
Hot reload affects settings read throughget_settings()only; long-livedMemoryServiceand similar lifespans are not automatically rebuilt—restart the process to fully apply new wiring.
| Module | Notes |
|---|---|
| Memory | Curated + episodic buckets and JSON APIs for plugins |
| Learning | observations.jsonl → instincts → evolved/ skill stubs |
| Notes | Local Markdown wiki + SQLite search |
GET /healthPOST /api/v1/memories/*, GET /api/v1/learning/cycleGET /api/v1/notes/orient, POST /api/v1/notes/queryData lands in experience/experience.db with pluggable vector/graph/embed backends; see env vars OPENEVO_EXPERIENCE__* and optional fallback to SQLite/Hash when remotes are unavailable.
evo status
evo learn --dry-run
Claude Code under plugins/claude-code-plugin/; OpenClaw under plugins/openclaw-plugin/. One-shot install: bash scripts/install-plugins.sh (checks /health on OPENEVO_BASE_URL, or set SKIP_HEALTH_CHECK=1).
License: MIT