universal-memory
A vendor-agnostic cognitive persistence layer for AI agents. Eliminate the "repetition tax" by transporting your context, preferences, and history across sessions. Features an auto-adaptation engine that syncs global instructions to ensure operational cohesion and optimize token usage across any LLM or multi-agent workflow.
README
<p align="center"> <img src="assets/umem-logo-transparent.png" alt="Universal Memory logo" width="720"> </p>
Universal Memory (umem)
A vendor-agnostic cognitive persistence layer for AI agents. Eliminate the "repetition tax" by transporting your context, preferences, guidelines, and history seamlessly across sessions, IDEs, and LLM models.
To see the core idea visually, check out the Excalidraw design or the proposal structure:

Diagram Breakdown
- Short-Term Memory (Ephemeral): Project-specific (folder-level) memories. A simple summary of recent changes, pending tasks, and project or task-level constraints.
- Agents Behaviours: Comports the user's expected agent behaviors. Instead of requesting the same settings in every session, the agent understands the user by their traits, thoughts, and any context key to enhancing the overall experience. This encompasses:
- Long-Term Memory
- Short-Term Memory
- User Preferences
- Skill Creator: Encapsulates understanding of specific workflows. When a user explains a task pattern multiple times, the system translates it into structured, reusable agent skills.
- Unified Instruction File (
AGENT.MD): The shared persistence endpoint consumed by all local agent instances (e.g., Agent A, Agent B, Agent C).
The Problem: The "Repetition Tax"
Every time you open a new session in Claude Code, start a new chat in Cursor, spin up a terminal with OpenCode, or invoke a local AI assistant, you pay a steep cognitive tax:
- Re-explaining your stack (e.g., "We use Python 3.12, Typer, and Ruff").
- Repeating coding style preferences (e.g., "Prefer functional design, do not write docstrings unless requested").
- Copy-pasting database connection schemas or module layouts.
- Explaining workflow methodologies (e.g., "We follow Spec-Driven Development (SDD)").
Universal Memory acts as a local "Cognitive USB Drive" that automatically connects to your AI runtimes, aligning them to your exact workflow, context, and rules with zero friction.
Key Architectural Concepts
1. Dual-Memory Model
- Short-Term Memory (Project Scope): Ephemeral, directory-specific context. Tracks what you did 10 minutes ago, current active tasks, and immediate constraints.
- Universal Memory (Global Scope): Long-lived preferences, style guidelines, tool configurations, and identity.
2. Auto-Adaptation Engine
Instead of copy-pasting instructions, umem monitors your session context and automatically updates active project instruction manifests (AGENTS.md, CLAUDE.md, .cursor/rules/, etc.), enforcing operational consistency across all agents.
3. Model Context Protocol (MCP) Integration
Integrate umem natively with any client supporting the standard MCP (such as Claude Desktop or Cursor). AI agents can programmatically retrieve context, learn new facts, and suggest skills on the fly.
4. Agent Skills Standard
Encapsulates complex, repetitive procedural instructions into formal Agent Skills (conforming to the agentskills.io standard), complete with structured directories containing SKILL.md instructions, helper scripts/, and documentation references/.
Installation & Setup
Ensure you have Python 3.12+ installed. You can run or install umem using your preferred package manager.
Try instantly with uvx
You can run umem without installing it permanently:
uvx --from universal-memory umem --help
[!WARNING]
uvxis best for quick trials. For ongoing use, install Universal Memory as a persistent tool soumemis always available and can fully manage long-lived global memories and synced agent skills:uv tool install universal-memory
Install via PyPI
pip install universal-memory
Upgrade Universal Memory
umem update does not upgrade the Python package from PyPI. It performs local, offline
maintenance for the current .umem workspace, such as schema migrations, benchmark refreshes,
and skill synchronization.
To upgrade the installed umem executable, use the package manager that installed it:
# If installed with uv tool
uv tool upgrade universal-memory
# If installed with pipx
pipx upgrade universal-memory
# If installed with pip
python -m pip install --upgrade universal-memory
# If running temporarily with uvx
uvx --refresh --from universal-memory umem --version
Confirm the executable you are running:
umem --version
which umem
Quick Start Guide
1. Initialize your project
Initialize umem in the current directory and hook it to your preferred runtimes/agents:
umem init --runtime claude-code --runtime opencode --runtime cursor
This sets up a local repository configuration, hooks up the necessary workspace instructions (AGENTS.md, CLAUDE.md), and prepares native skill folders.
2. Save your first preferences and facts
Tell umem what to keep in mind. You can target either the project scope (this folder) or the global scope (across all projects):
# Save a global preference
umem remember --scope global "Yan is a solutions architect specializing in AI applications"
# Save a project-specific constraint
umem remember --scope project "Always use Tomllib instead of PyYAML for configuration files" --tag config
3. Retrieve Context
Verify the consolidated context summary generated by combining short-term facts, rules, and global preferences:
umem context --scope project
4. Check status and health
umem status
Host Integration & Support Matrix
umem maps cognitive context and agent skills directly into native runtime paths:
| Runtime / Host | Support Tier | Config / Instructions Target |
|---|---|---|
| Claude Code | Tier 1 (Full) | CLAUDE.md, .claude/, ~/.claude/ |
| OpenCode | Tier 1 (Full) | AGENTS.md, .opencode/, ~/.config/opencode/ |
| Codex (OpenAI) | Tier 1 (Full) | AGENTS.md, workspace configuration files |
| Cursor | Tier 2 (Basic) | .cursor/rules/, ~/.cursor/ |
| Antigravity / Gemini | Tier 2 (Basic) | GEMINI.md, ~/.gemini/ |
Running as an Model Context Protocol (MCP) Server
AI agents can interact directly with your memory over the Model Context Protocol.
CLI Launch Command
umem-mcp
Example Config: Claude Desktop (claude_desktop_config.json)
{
"mcpServers": {
"universal-memory": {
"command": "uv",
"args": [
"run",
"--package",
"universal-memory",
"umem-mcp"
]
}
}
}
Safety & Guardrails
- API Secret Scanner:
umempasses all incoming facts through a passive scanner to block API keys, tokens, or credentials from being stored in your persistent cognitive base. - Snapshots & Rollbacks: Every automated update to your config files (
AGENTS.md,CLAUDE.md) is preceded by a snapshot backup. You can rollback anytime:# View audit logs umem audit list --scope project # Revert last automated modification umem rollback --scope project - Update Conflict Warnings: When updating canonical skills, if
umemdetects manual edits in local runtime rule directories (e.g..cursor/rules/sdd-rules.md), it prompts you interactivelly to choose whether to keep your local edits or overwrite them, preventing workflow disruption.
Managing Agent Skills
You can create, list, and sync specialized behaviors:
# List all active skills
umem skills list
# Synchronize skills into active native runtime folders
umem update --skills
# Generate a new skill template from a latent skill proposal
umem skills generate --name build-standard
License
Distributed under the MIT License. See LICENSE for more information.
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。