Skip to content
项目

ourmem/omem has 173 GitHub stars and 10 forks. GitHot measured 0 stars in 24 hours and 0 in 7 days. Last checked 2026-11-09 21:58 UTC. Last push 2026-05-24.

这些数字如何统计

Shared Memory That Never Forgets — persistent memory for AI agents with Space-based sharing across agents and teams. Plugins for OpenCode, Claude Code, OpenClaw, MCP Server.

实测星标增长

24小时
0
7天
0
15天
更新延迟
1个月
更新延迟

各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。

README_CN.md

原文

OMEM
共享记忆,永不遗忘

License Hosted Stars

English | 简体中文


问题

你的 AI 助手每次对话都失忆 -- 而且各自为战。

  • 🧠 失忆 -- 每次新对话从零开始。偏好、决策、上下文全没了。
  • 🏝️ 孤岛 -- 你的代码 Agent 不知道写作 Agent 学到了什么。
  • 📁 绑定设备 -- 记忆存在一台机器上,换设备全部丢失。
  • 🚫 无法共享 -- 团队 Agent 之间知识完全隔绝,每个 Agent 都在重复发现相同的东西。
  • 🔍 笨搜索 -- 只有关键词匹配,没有语义理解,没有相关性排序。
  • 🧩 没有集体智能 -- 即使 Agent 在同一个团队工作,也没有共享的知识层。

ourmem 解决所有这些问题。

ourmem 是什么

ourmem 让 AI Agent 拥有共享的持久记忆 -- 跨会话、跨设备、跨 Agent、跨团队。一个 API Key 重连一切。

🌐 官网: ourmem.ai

🧑‍💻 我用 AI 编程工具

安装你平台的插件就行。记忆自动工作 -- 开始对话时自动加载历史记忆,结束时自动保存重要信息。

→ 跳转到 快速开始

🔧 我在开发 AI 产品

48+ 个 REST API 端点。Docker 一行命令自部署。把持久记忆嵌入到你自己的 Agent 和工作流中。

→ 跳转到 自部署

核心能力

🔗 跨越边界共享

三级空间 -- 个人、团队、组织 -- 让知识在 Agent 和团队之间流动,全程溯源追踪。

🧠 永不遗忘

Weibull 衰减模型智能管理记忆生命周期 -- 核心记忆持久保留,边缘记忆优雅淡出。无需手动清理。

🔍 深度理解

11 阶段混合检索:向量搜索、BM25、RRF 融合、交叉编码重排、MMR 多样性,精准召回。

⚡ 智能演化

7 种协调决策 -- 创建、合并、取代、支持、情境化、矛盾、跳过 -- 让记忆越来越聪明。

📖 记忆管线架构 -- 深入了解 ourmem 如何存储、检索和演化记忆。

🔗 记忆共享架构 -- 记忆如何跨 Agent 和团队流动:共享、溯源、版本控制和跨空间搜索。

功能一览

分类 功能 详情
平台 4 个平台 OpenCode、Claude Code、OpenClaw、MCP Server
共享 空间共享 个人 / 团队 / 组织,带溯源追踪
溯源追踪 每条共享记忆携带完整来源链
质量门控自动共享 规则在记忆创建时自动触发(异步、非阻塞)
向量嵌入传播 共享副本携带源记忆的向量嵌入,支持完整搜索
幂等分享 重复分享返回已有副本(不创建重复)
版本追踪 记忆追踪版本计数器,共享副本通过 ?check_stale=true 检测过时状态
刷新过时副本 用源记忆最新内容和向量刷新过时的共享副本
便捷分享 一步跨用户分享(share-to-user)和批量分享(share-all-to-user),自动创建桥接空间
组织管理 一步创建组织(org/setup)和发布(org/publish),支持自动分享规则
跨空间搜索 一次搜索覆盖所有可访问空间
摄入 智能去重 7 种决策:创建、合并、跳过、取代、支持、情境化、矛盾
噪声过滤 正则 + 向量原型 + 反馈学习
准入控制 5 维评分门控(效用、置信度、新颖度、时效性、类型先验)
双流写入 同步快速路径(<50ms)+ 异步 LLM 提取
导入后智能化 批量导入 → 异步 LLM 重新提取 + 关系发现
自适应导入策略 自动/原子/段落/文档 -- 启发式内容类型检测
内容保真 保留原始文本,双路径搜索(向量 + BM25 搜索源文本)
交叉关联 通过向量相似度发现记忆间关系
批量自去重 LLM 在同一导入批次内去重事实
隐私保护 <private> 标签脱敏
检索 11 阶段管道 向量 + BM25 → RRF → 重排 → 衰减 → 重要性 → MMR 多样性
用户画像 静态事实 + 动态上下文,<100ms
检索追踪 每阶段可解释性(输入/输出/分数/耗时)
生命周期 Weibull 衰减 按层级 β 值(核心=0.8、工作=1.0、边缘=1.3)
三层晋升 边缘 ↔ 工作 ↔ 核心,基于访问频率晋升
自动遗忘 时间引用检测("明天"、"下周")自动设 TTL
多模态 文件处理 PDF、图片 OCR、视频转录、代码 AST 分块
GitHub 连接器 Webhook 实时同步代码、Issue、PR
部署 开源 Apache-2.0
可自部署 单二进制、Docker 一行命令、~$5/月
musl 静态编译 零依赖二进制,任何 Linux x86_64 可运行
对象存储 AWS S3 或任何 S3 兼容存储,支持 IAM 角色
托管版 ourmem.ai -- 无需部署

从孤立 Agent 到集体智能

大多数 AI 记忆系统把知识困在孤岛里。ourmem 的三级空间架构让知识在 Agent 和团队之间流动 -- 带溯源追踪和质量门控的共享机制。

研究表明,协作记忆可以减少高达 61% 的重复工作 -- Agent 不再重新发现队友已经知道的东西。 — Collaborative Memory, ICLR 2026

个人空间 团队空间 组织空间
范围 一个用户的多个 Agent 多个用户 全公司
例子 代码 + 写作 Agent 共享偏好 后端团队共享架构决策 技术标准、安全策略
权限 仅所有者的 Agent 团队成员 全组织(只读)

溯源追踪共享 -- 每条共享记忆携带完整来源链:谁共享的、什么时候、从哪里来。共享副本包含源记忆的向量嵌入,在目标空间中可通过向量搜索完整检索。

质量门控自动共享 -- 按重要性、类别、标签过滤。规则在新记忆创建时自动触发。只有高价值洞察才能跨空间传播。

工作原理

┌──────────────────────────────────────────────────────────────────┐
│   你的 AI Agent(OpenCode / Claude Code / OpenClaw / Cursor)     │
│                                                                  │
│   会话开始 → 自动召回相关记忆                                       │
│   工作中   → 关键词检测触发召回                                     │
│   会话结束 → 自动捕获决策、偏好、事实                                │
└───────────────────────────┬──────────────────────────────────────┘
                            │ REST API(X-API-Key)
                            ▼
┌──────────────────────────────────────────────────────────────────┐
│                       ourmem 服务端                               │
│                                                                  │
│  ┌─ 智能摄入 ─────────────────────────────────────────────────┐  │
│  │  消息 → LLM 提取 → 噪声过滤 → 准入控制                      │  │
│  │  → 7 种协调决策(创建 / 合并 / 取代 /                        │  │
│  │    支持 / 情境化 / 矛盾 / 跳过)                             │  │
│  │  → 交叉关联发现 → 隐私脱敏                                   │  │
│  └────────────────────────────────────────────────────────────┘  │
│                                                                  │
│  ┌─ 混合检索(11 阶段)──────────────────────────────────────┐  │
│  │  向量 + BM25 → RRF 融合 → 交叉编码重排                      │  │
│  │  → Weibull 衰减加权 → 重要性评分                             │  │
│  │  → MMR 多样性 → 并行跨空间聚合                               │  │
│  └────────────────────────────────────────────────────────────┘  │
│                                                                  │
│  ┌─ 共享引擎 ─────────────────────────────────────────────────┐  │
│  │  个人 / 团队 / 组织空间                                      │  │
│  │  → 溯源追踪 → 基于版本的过时检测                              │  │
│  │  → 自动共享规则 → 一步跨用户分享                              │  │
│  └────────────────────────────────────────────────────────────┘  │
│                                                                  │
│  ┌─ 生命周期 ─────────────────────────────────────────────────┐  │
│  │  Weibull 衰减(核心 β=0.8 / 工作 β=1.0 / 边缘              │  │
│  │  β=1.3)→ 三层晋升 → 自动遗忘 TTL                           │  │
│  └────────────────────────────────────────────────────────────┘  │
└──────────────────────────────────────────────────────────────────┘
  • 写一次,到处召回 — 记忆跨会话、跨设备、跨 Agent 持久存在
  • 越用越聪明 — 协调机制自动合并、更新和标记矛盾记忆
  • 跨越边界共享 — 个人 → 团队 → 组织的知识流动,全程溯源
  • 无需手动管理 — Weibull 衰减处理生命周期,自动共享规则处理分发

核心概念

API Key = 租户 ID = 你的身份

创建租户时,返回的 id 就是你的 API Key。它们是同一个 UUID,没有独立的"租户 ID"。

curl -X POST https://api.ourmem.ai/v1/tenants -d '{"name": "alice"}'
# → {"id": "a1b2c3d4-...", "api_key": "a1b2c3d4-...", "status": "active"}
#          ↑ 同一个值 ↑

API Key 与 Space ID 的区别

概念 说明 示例 数量
API Key 你的身份标识。放在 X-API-Key 请求头中。 a1b2c3d4-... 每用户 1 个
Space ID 记忆存储地址。每个 Space 是一个独立的数据库。 personal/a1b2c3d4-... 每用户多个

一个 API Key 拥有多个 Space:

API Key "a1b2c3d4"
  │
  ├── personal/a1b2c3d4     ← 自动创建,你的私有记忆
  ├── team/e5f6g7h8          ← 你创建的团队空间(你是管理员)
  ├── team/i9j0k1l2          ← 你被邀请加入的团队空间(你是成员)
  └── org/m3n4o5p6           ← 你加入的组织(你是只读)

分享 = 传递对方的 API Key

分享记忆给另一个用户时,把对方的 API Key 作为 target_user 传入:

# 把你的所有偏好分享给用户 Bob
curl -X POST https://api.ourmem.ai/v1/memories/share-all-to-user \
  -H "X-API-Key: your-api-key" \
  -d '{"target_user": "bobs-api-key", "filters": {"categories": ["preference"]}}'

系统自动在你和 Bob 之间创建桥接 Team Space,无需手动管理空间。

快速开始

Agent 安装(推荐)

告诉你的 AI 助手一句话,它会自动完成所有操作 -- 创建 API Key、安装插件、配置、验证。

托管版(ourmem.ai -- 无需部署):

平台 复制给你的 Agent
OpenClaw Read https://ourmem.ai/SKILL.md and follow the instructions to install and configure ourmem for OpenClaw
Claude Code Read https://ourmem.ai/SKILL.md and follow the instructions to install and configure ourmem for Claude Code
OpenCode Read https://ourmem.ai/SKILL.md and follow the instructions to install and configure ourmem for OpenCode
Cursor / VS Code Read https://ourmem.ai/SKILL.md and follow the instructions to install and configure ourmem as MCP Server

自部署版(你自己的服务器):

平台 安装方式
OpenClaw 运行 openclaw skills install ourmem,然后告诉 Agent:setup ourmem in self-hosted mode
Claude Code Read https://raw.githubusercontent.com/ourmem/omem/main/skills/ourmem/SKILL.md and install ourmem for Claude Code, self-hosted mode
OpenCode Read https://raw.githubusercontent.com/ourmem/omem/main/skills/ourmem/SKILL.md and install ourmem for OpenCode, self-hosted mode

就这样。Agent 会处理剩下的一切。

Skill 安装(替代方式):

如果你更喜欢命令行安装,可以直接安装 ourmem skill:

npx skills add ourmem/omem --skill ourmem -g

支持 44+ AI Agent,包括 Claude Code、OpenCode、Cursor 等。详见 Vercel Skills CLI。


手动安装(不通过 Agent)

1. 获取 API Key

托管版:

curl -sX POST https://api.ourmem.ai/v1/tenants \
  -H "Content-Type: application/json" \
  -d '{"name": "my-workspace"}' | jq .
# → {"id": "xxx", "api_key": "xxx", "status": "active"}

自部署版:

docker run -d -p 8080:8080 -e OMEM_EMBED_PROVIDER=bedrock ghcr.io/ourmem/omem-server:latest
curl -sX POST http://localhost:8080/v1/tenants \
  -H "Content-Type: application/json" \
  -d '{"name": "my-workspace"}' | jq .

保存返回的 api_key -- 用它可以从任何设备重连到同一份记忆。

2. 安装插件

OpenCode: 在 opencode.json 中添加 "plugin": ["@ourmem/opencode"] + 在同文件中通过 plugin_config 配置 apiUrl 和 apiKey。

Claude Code: /plugin marketplace add ourmem/omem + 在 ~/.claude/settings.json 设环境变量。

OpenClaw: openclaw plugins install @ourmem/ourmem + 配置 openclaw.json 中的 apiUrl 和 apiKey。

MCP (Cursor / VS Code / Claude Desktop):

{
  "mcpServers": {
    "ourmem": {
      "command": "npx",
      "args": ["-y", "@ourmem/mcp"],
      "env": {
        "OMEM_API_URL": "https://api.ourmem.ai",
        "OMEM_API_KEY": "your-api-key"
      }
    }
  }
}

3. 验证

curl -sX POST "$OMEM_API_URL/v1/memories" \
  -H "X-API-Key: $OMEM_API_KEY" -H "Content-Type: application/json" \
  -d '{"content": "I prefer dark mode", "tags": ["preference"]}'

curl -s "$OMEM_API_URL/v1/memories/search?q=dark+mode" -H "X-API-Key: $OMEM_API_KEY"

Agent 获得的能力

记忆工具

工具 用途
memory_store 保存事实、决策、偏好,智能去重
memory_search 11 阶段混合搜索(向量 + BM25 + 重排)
memory_get 按 ID 获取特定记忆
memory_update 修改内容、标签、重要性、层级
memory_delete 删除记忆
memory_list 浏览记忆,支持过滤和分页
memory_ingest 智能摄入完整对话(LLM 提取)
memory_profile 自动生成用户画像(静态事实 + 动态上下文)
memory_stats 分析:标签分布、衰减曲线、关系图谱

共享工具

工具 用途
space_create 创建团队或组织空间
space_list 列出所有可访问的空间
space_add_member 邀请用户加入共享空间
memory_share 将记忆分享到任意空间,带溯源
memory_pull 将共享记忆拉取到个人空间
memory_reshare 用最新内容刷新过时的共享副本

便捷 API: share-to-user(一步跨用户分享,自动创建桥接空间)和 share-all-to-user(批量分享)。MCP 提供 15 个工具 + 1 个资源。OpenCode/OpenClaw 提供 11 个工具 + 3 个钩子。

智能钩子

钩子 触发时机 效果
SessionStart 新会话开始 近期记忆 + 用户画像自动注入上下文
KeywordRecall 会话中检测到关键词 相关记忆自动浮现,无需显式搜索
SessionEnd 会话结束 关键决策、偏好和事实自动捕获
Compaction 上下文窗口压缩 关键记忆跨压缩边界保留

Memory Space

在 ourmem.ai/space 可视化浏览、搜索和管理你的 Agent 记忆 -- 查看记忆如何连接、演化和衰减。

安全与隐私

Rust 内存安全 无 GC、无数据竞争。所有权模型编译时保证安全。
租户隔离 X-API-Key 认证 + 查询级租户过滤。每个操作验证归属。
隐私保护 <private> 标签脱敏,存储前自动剥离敏感内容。
传输加密 全部 API 通过 HTTPS 传输。S3 服务端静态加密。
准入控制 5 维评分门控,低质量数据拒绝入库。
开源可审计 Apache-2.0 许可。审计每一行代码,fork 它,运行你自己的实例。

自部署

# 最小化(仅 BM25 搜索,无需 embedding API)
docker run -d -p 8080:8080 ghcr.io/ourmem/omem-server:latest

# 使用 Bedrock embedding(推荐,需要 AWS 凭证)
docker run -d -p 8080:8080 \
  -e OMEM_EMBED_PROVIDER=bedrock \
  -e AWS_REGION=us-east-1 \
  ghcr.io/ourmem/omem-server:latest

# 使用 OpenAI 兼容 embedding
docker run -d -p 8080:8080 \
  -e OMEM_EMBED_PROVIDER=openai-compatible \
  -e OMEM_EMBED_API_KEY=sk-xxx \
  ghcr.io/ourmem/omem-server:latest

完整部署指南:docs/DEPLOY.md

对象存储(可选)

默认情况下 ourmem 将数据存储在本地磁盘。如需持久化和可扩展性,可配置 AWS S3 或任何 S3 兼容的对象存储:

# 添加到你的环境变量
OMEM_S3_BUCKET=your-bucket            # 启用 s3:// 方案
AWS_ENDPOINT_URL=https://s3.amazonaws.com
AWS_REGION=us-east-1

# 替代方案:OSS 兼容存储
OMEM_OSS_BUCKET=your-bucket           # 启用 oss:// 方案
OSS_ENDPOINT=https://oss-xx-internal.aliyuncs.com
OSS_ACCESS_KEY_ID=your-ak             # 或使用 ECS RAM 角色(自动发现)
OSS_ACCESS_KEY_SECRET=your-sk

如果同时设置了 OMEM_S3_BUCKET 和 OMEM_OSS_BUCKET,OSS 优先。

从源码构建

两种构建模式

模式 命令 二进制 Bedrock 运行环境
glibc(完整版) cargo build --release 动态链接,~218MB ✅ AWS Bedrock 与构建主机相同 glibc 版本
musl(便携版) 见下方 静态链接,~182MB ❌ 仅 OpenAI 兼容 任何 Linux x86_64

glibc 构建(支持 Bedrock)

cargo build --release -p omem-server
# 二进制:target/release/omem-server
# 要求:目标机器有相同或更新版本的 glibc

musl 静态构建(便携,零依赖)

单个二进制文件,可在任何 Linux x86_64 上运行 -- 不需要 glibc,不需要任何库。

rustup target add x86_64-unknown-linux-musl

RUSTFLAGS="-C target-feature=+crt-static -C relocation-model=static" \
  cargo build --release --target x86_64-unknown-linux-musl \
  -p omem-server --no-default-features

# 二进制:target/x86_64-unknown-linux-musl/release/omem-server
# 静态链接,到处可运行

注意: musl 构建使用 --no-default-features,不包含 AWS Bedrock 支持。请改用 OMEM_EMBED_PROVIDER=openai-compatible(如 DashScope、OpenAI)。原因是 aws-lc-sys(AWS 加密库)在 musl 静态链接时因 dlopen(NULL) 不兼容而崩溃(aws-c-cal#213),且 Rust 默认的 static-pie 输出在 musl-gcc 下会段错误(rust-lang/rust#95926)。

传输到任意服务器

# 压缩
gzip -c target/x86_64-unknown-linux-musl/release/omem-server > omem-server.gz

# 复制到服务器
scp omem-server.gz user@server:/opt/

# 运行(无需任何依赖)
ssh user@server "gunzip /opt/omem-server.gz && chmod +x /opt/omem-server && /opt/omem-server"

API 概览

方法 端点 说明
POST /v1/tenants 创建工作空间,获取 API Key
POST /v1/memories 存储记忆或智能摄入对话
GET /v1/memories/search 11 阶段混合搜索
GET /v1/memories 列表查询,支持过滤和分页
GET /v1/profile 自动生成的用户画像
POST /v1/spaces 创建共享空间
POST /v1/memories/:id/share 分享记忆到空间
POST /v1/files 上传 PDF / 图片 / 视频 / 代码
GET /v1/stats 分析与洞察

完整 API 参考(48+ 个端点):docs/API.md

文档

文档 说明
docs/API.md 完整 REST API 参考
docs/PIPELINE.md 记忆管线架构 -- 存储、检索和插件集成流程
docs/SHARING.md 记忆共享架构、流程和教程
docs/DEPLOY.md Docker 与 AWS 部署指南
docs/PLUGINS.md 4 个平台的插件安装指南
docs/TWEETCLAW_OPENCLAW.md OpenClaw 工作流:将 TweetClaw X/Twitter 研究决策存入 ourmem
skills/ourmem/SKILL.md AI Agent 入门技能

许可证

Apache-2.0


共享记忆,永不遗忘。
ourmem.ai · GitHub

探索相关项目