AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
Provide persistent, retrievable long-term memory for AI agents using local SQLite and graph databases
AI summary · README
Developer toolsPython · TypeScriptGitHub @shaun17Self-installOwner unconfirmed
Paste into Claude or ChatGPT for installation instructions suited to your environment.
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Installable projects can be verified without a deployment domain. Use GitHub sign-in for a personal repository, or the repository verification file above for an organization repository.
Ask about other verification options
Loading the full README. The saved excerpt is shown below.
memoLite 是一个面向 AI Agent/LLM 应用的轻量级记忆基础设施。 它把常见的“多数据库重部署”记忆架构,收敛为本地优先的组合: • SQLite:事务数据(projects/sessions/episodes/semantic) • Kùzu:Episode/Derivative 图关系与回溯 • sqlite-vec 兼容层:向量检索(当前默认实现为 SQLite + Python fallback) 目标:让 Agent 具备可持久、可检索、可扩展的长期记忆能力,同时保持部署简单。 说明: • 仅安装 memolite:适合 hash embedder / 不启用本地 reranker 的场景 • 安装 memolite[embeddings]:同时覆盖 embedding 和 reranker 依赖 适用:普通用户、生产环境、快速上手。 • Python 3.12+ • 在仓库根目录执行 适用:二次开发、调试、修改源码。 • memolite(统一入口,推荐) •Read the full README ↗
English version: README.en.md
memoLite 是一个面向 AI Agent/LLM 应用的轻量级记忆基础设施。
它把常见的“多数据库重部署”记忆架构,收敛为本地优先的组合:
目标:让 Agent 具备可持久、可检索、可扩展的长期记忆能力,同时保持部署简单。
set/category/tag/feature 结构化事实packages/ts-client)integrations/openclaw)memolite configure ...reconcile / repairbenchmark-searchload-testsrc/memolite/
app/ # 应用启动、资源注入、后台补偿
api/ # REST 路由与 schema
orchestrator/ # 统一编排层
episodic/ # 事件记忆写入/检索/删除
semantic/ # 语义记忆服务与 session manager
memory/ # short-term 与 memory-config
storage/ # SQLite/Kùzu/vector 存储实现
mcp/ # MCP server
client/ # Python SDK
tools/ # benchmark/loadtest/migration
pipx install memolite
# 或
pip install memolite
如果要启用本地语义 embedding + reranker(sentence-transformers / CrossEncoder):
pip install 'memolite[embeddings]'
# 或源码开发时
pip install -e '.[dev,embeddings]'
说明:
memolite:适合 hash embedder / 不启用本地 reranker 的场景memolite[embeddings]:同时覆盖 embedding 和 reranker 依赖适用:普通用户、生产环境、快速上手。
3.12+git clone https://github.com/shaun17/memoLite.git
cd memoLite
python3 -m venv .venv
source .venv/bin/activate
pip install -e .[dev]
适用:二次开发、调试、修改源码。
安装后可用命令:
memolite(统一入口,推荐)memolite-mcp-stdiomemolite-mcp-httpmemolite configure ... 用于“服务外”的配置与数据管理,主要做三件事:
configure:生成 .env(写入服务运行所需配置)init:初始化本地数据目录与数据库结构(SQLite/Kùzu)detect-sqlite-vec:检测 sqlite-vec 扩展可用性(可选)memolite configure configure --output .env --data-dir ~/.memolite
memolite configure init --data-dir ~/.memolite
可选:检测 sqlite-vec 扩展
memolite configure detect-sqlite-vec --extension-path /path/to/sqlite-vec.dylib
# 前台模式(开发调试)
MEMOLITE_PORT=18731 memolite serve
默认地址:http://127.0.0.1:18731
说明:如果你使用
memolite openclaw setup,它会自动安装并启动后台服务,因此第 2、3 步可跳过。
语义约定:
memolite-server:前台运行,适合开发调试(可惰性 init)memolite service ...:后台托管命令(install/enable/disable/start/stop/restart/status/uninstall)- 开机自启只在
install --enable/enable中显式设置start/restart只影响运行态,不改变自启策略统一 CLI:
# 安装服务定义(不自动开机自启) memolite service install # 启用开机自启并立即启动 memolite service enable # 或一步完成 memolite service install --enable # 生命周期管理 memolite service start memolite service stop memolite service restart memolite service status # 关闭开机自启 / 卸载服务定义 memolite service disable memolite service uninstall平台说明:
- macOS: LaunchAgent (
~/Library/LaunchAgents/ai.memolite.server.plist)- Linux: systemd user service (
~/.config/systemd/user/ai.memolite.server.service)Linux 如需用户级服务在离线后继续运行,可按需启用 linger:
loginctl enable-linger "$USER"
memolite openclaw setup
该脚本会自动执行:
openclaw plugins install <plugin-path>~/.openclaw/openclaw.json 的 memolite 配置可覆盖参数(CLI):
memolite openclaw setup \
--base-url http://127.0.0.1:18731 \
--org-id openclaw \
--project-id openclaw \
--user-id openclaw \
--auto-capture true \
--auto-recall true \
--search-threshold 0.5 \
--top-k 5
参数说明:
--base-url:memolite 服务地址,默认 http://127.0.0.1:18731--org-id:组织标识,用于项目隔离(默认 openclaw)--project-id:项目标识,用于项目级隔离(默认 openclaw)--user-id:用户标识,用于用户级归属(默认 openclaw)--auto-capture:是否自动写入会话记忆(true/false)--auto-recall:是否自动召回相关记忆(true/false)--search-threshold:检索阈值(0~1,越高越严格)--top-k:每次检索返回的最大候选条数插件更新(推荐做法):
# 升级包(获取最新内置插件)
pipx upgrade memolite
# 重新安装插件并刷新 OpenClaw 配置
memolite openclaw setup
# 重启 gateway 使插件生效
openclaw gateway restart
# 验证插件名称/版本
openclaw plugins list | rg "openclaw-memolite|MemoLite"
如果发现版本仍未更新,可强制清理后重装:
memolite openclaw uninstall
rm -rf ~/.openclaw/extensions/openclaw-memolite
memolite openclaw setup
openclaw gateway restart
额外运维子命令:
# 状态与诊断
memolite openclaw status
memolite openclaw doctor
# 配置查看 / 更新 / 重置
memolite openclaw configure show
memolite openclaw configure set --base-url http://127.0.0.1:18731
memolite openclaw configure reset
# 卸载集成(仅移除 memolite 相关项)
memolite openclaw uninstall --dry-run
memolite openclaw uninstall
curl -X POST http://127.0.0.1:18731/projects \
-H 'content-type: application/json' \
-d '{
"org_id": "demo-org",
"project_id": "demo-project",
"description": "quickstart"
}'
curl -X POST http://127.0.0.1:18731/sessions \
-H 'content-type: application/json' \
-d '{
"session_key": "demo-session",
"org_id": "demo-org",
"project_id": "demo-project",
"session_id": "demo-session",
"user_id": "demo-user"
}'
curl -X POST http://127.0.0.1:18731/memories \
-H 'content-type: application/json' \
-d '{
"session_key": "demo-session",
"semantic_set_id": "demo-session",
"episodes": [
{
"uid": "ep-1",
"session_key": "demo-session",
"session_id": "demo-session",
"producer_id": "demo-user",
"producer_role": "user",
"sequence_num": 1,
"content": "Ramen is my favorite food."
}
]
}'
curl -X POST http://127.0.0.1:18731/memories/search \
-H 'content-type: application/json' \
-d '{
"query": "favorite food",
"session_key": "demo-session",
"session_id": "demo-session",
"semantic_set_id": "demo-session",
"mode": "mixed"
}'
返回重点字段:
episodic_matchessemantic_featurescombinedexpanded_contextshort_term_contextimport asyncio
from memolite.client import MemLiteClient
async def main() -> None:
async with MemLiteClient(base_url="http://127.0.0.1:18731") as client:
await client.projects.create(org_id="demo-org", project_id="demo-project")
await client.memory.add(
session_key="demo-session",
episodes=[
{
"uid": "ep-1",
"session_key": "demo-session",
"session_id": "demo-session",
"producer_id": "demo-user",
"producer_role": "user",
"sequence_num": 1,
"content": "Ramen is my favorite food.",
}
],
)
result = await client.memory.search(
query="favorite food",
session_key="demo-session",
session_id="demo-session",
)
print(result.combined)
asyncio.run(main())
完整示例:examples/python_sdk_quickstart.py
memolite-mcp-stdio
# 或
memolite-mcp-http
set_contextadd_memorysearch_memorydelete_memorylist_memoryget_memory详见:docs/mcp-guide.md
# 导出/导入
memolite configure export --output snapshot.json --data-dir ~/.memolite
memolite configure import --input snapshot.json --data-dir ~/.memolite
# 对账/修复
memolite configure reconcile --output reconcile.json --data-dir ~/.memolite
memolite configure repair --output repair.json --data-dir ~/.memolite
# 搜索基准/压测
memolite configure benchmark-search --output benchmark.json --data-dir ~/.memolite
memolite configure load-test --base-url http://127.0.0.1:18731 --total-requests 200 --concurrency 20
docs/quickstart.mddocs/architecture.mddocs/api-reference.mddocs/sdk-usage-guide.mddocs/mcp-guide.mddocs/config-reference.mddocs/deployment-guide.mddocs/troubleshooting.mddocs/faq.mdmemoLite 已具备可运行的端到端原型能力(写入、检索、删除、MCP、SDK、修复工具)。 在生产化前,建议结合你的业务继续增强: