XMemo: Memory OS for AI Agents

MCP serverDocs & knowledge

Give your AI a long-term memory that lasts across sessions and is shared across the tools it uses. Once added, your AI can save important details and recall them later, so it picks up where it left off instead of starting over. What gets stored and shared follows governed rules, so the memory stays consistent and controlled.

Use XMemo: Memory OS for AI Agents in Claude, ChatGPT or Ahel Desktop

Free. Sign in, add XMemo: Memory OS for AI Agents and connect your AI. About a minute.

Also: Claude Code · Cursor · Codex

Then ask your AI: use XMemo: Memory OS for AI Agents

Details

Available today. Use it from your connected AI after setup.

After adding xmemo, start a conversation and save the details you want kept long-term; your AI can then recall them in later sessions and other tools. Setup instructions are in the GitHub repository: github.com/yonro/memory-os-cli.

XMemo: Memory OS for AI AgentsStart free

What your AI can do with it

  • Remember details from one conversation in the next
  • Carry knowledge between different tools
  • Pick up where a previous session left off
  • Draw on one shared memory instead of separate notes for each tool
  • Store and share memories under governed rules

Install XMemo: Memory OS for AI Agents

The server’s own address, for the clients that take one directly. Or connect Ahel once and every client you use reads it from one address, with the account kept on Ahel rather than in each client’s config.

  • Claude Code

    claude mcp add --transport http --scope user xmemo-memory-os-for-ai-agents 'https://xmemo.dev/mcp'

    Run it once in your project, then open /mcp to approve any sign-in the server asks for.

  • Claude Desktop

    https://xmemo.dev/mcp

    Add a custom connector in Settings, paste this address, and approve the sign-in.

  • Cursor

    cursor://anysphere.cursor-deeplink/mcp/install?name=xmemo-memory-os-for-ai-agents&config=eyJ1cmwiOiJodHRwczovL3htZW1vLmRldi9tY3AifQ==

    Open the link and Cursor adds the server at that address.

  • ChatGPT

    https://xmemo.dev/mcp

    In Settings, enable Developer mode, create an MCP app, and paste this address. Your plan and workspace must allow custom apps.

  • Codex

    codex mcp add xmemo-memory-os-for-ai-agents --url 'https://xmemo.dev/mcp'

    Run it once, then sign in with codex mcp login xmemo-memory-os-for-ai-agents if the server asks for an account.

From the project's README

As published by yonro/memory-os-cli in README.md.

XMemo is a user-owned Memory OS for AI agents: persistent memory, project context and session continuity with agent identity, provenance and governed access, shared across AI clients through MCP, the CLI and a public REST API surface.

English · 简体中文 | Documentation · Hosted MCP

Quick start · What this repo contains · Beyond MCP · Integrations · Connection modes · Plugins · Commands · Versioning · Security


What this repository contains

  • @xmemo/client: the official xmemo CLI for setup, diagnostics, behavior profiles, and memory commands.
  • MCP distribution: hosted Streamable HTTP configuration (https://xmemo.dev/mcp) and the local xmemo-mcp stdio server.
  • XMemo Skill & native integrations: skills/xmemo for agent platforms and the native plugin index (src/plugins/index.json).
  • Marketplace and registry metadata: canonical descriptors for MCP Registry (server.json), LobeHub (lhm.plugin.json), and AI agents (context7.json).

The hosted service implementation is private.

Beyond MCP

MCP is one access surface of XMemo, not the product boundary. XMemo provides a persistent, governed memory operating layer across AI tools and agents:

Preview: Cloud Skills; Dream (off by default); Teams (Business plan not yet available). Knowledge Bases are available where enabled for the account.

XMemo CLI

@xmemo/client is the official control plane for connecting AI tools to XMemo. It makes setup repeatable, keeps credentials out of project files, and gives every supported client a consistent path to durable, user-owned memory.

The package is deliberately small: the CLI runtime, safe client configuration, behavior profiles, XMemo skills, and marketplace metadata. Server code, databases, deployment files, logs, and internal operations remain outside the npm distribution.

Architecture

Package@xmemo/client
Primary commandxmemo (alias: client)
Local MCP commandxmemo-mcp
Hosted MCPhttps://xmemo.dev/mcp
RuntimeNode.js 20 or later
LicenseMIT

Why XMemo CLI

  • One control plane — login, diagnostics, configuration, profiles, updates, and smoke checks share one predictable interface.
  • Private by design — generated project configuration references a credential; it never embeds the credential value.
  • Native where it matters — OpenClaw and Hermes use dedicated memory integrations instead of duplicating the same capability through MCP.
  • Portable everywhere else — hosted Streamable HTTP MCP and local stdio cover modern editors, terminals, and agent runtimes.
  • Safe automation — supported setup and removal paths offer preview, dry-run, or explicit confirmation before making changes.
  • Small supply-chain surface — the npm package is governed by an explicit file allowlist and release provenance.

Quick start

Guided onboarding (xmemo init)

For an interactive first-run experience across account authentication, detected clients, agent behavior instructions, MCP server setup, skills, and plugins, run:

npm install -g @xmemo/client
xmemo init

Flags and options:

  • xmemo init --dry-run: View the full onboarding plan without performing network calls or disk writes.
  • xmemo init --yes: Automatically accept and apply all onboarding steps without interactive prompts.
  • xmemo init --json: Emit structured JSON for the plan or result envelope.
  • xmemo init --client <id>...: Restrict onboarding to specific clients (e.g., cursor, codex, claude-code).
  • xmemo start: Alias for xmemo init with quick-start walkthrough steps.

Global installation exposes xmemo as the primary command, and also provides client and memory-os as aliases.

Manual step-by-step setup

xmemo account login
xmemo doctor
xmemo setup codex
xmemo status

Replace codex with your client. Preview a configuration before writing it:

xmemo setup cursor --dry-run

Running with npx

You can also run any CLI command directly without a global install via npx @xmemo/client <command>:

# Check version or health
npx @xmemo/client --version
npx @xmemo/client doctor

# Guided onboarding without global install
npx @xmemo/client init

# Install skill or run MCP stdio server
npx @xmemo/client skill install
npx @xmemo/client mcp serve

[!TIP] Start with xmemo init (or xmemo account login, xmemo doctor, and xmemo setup <client>). Hand-edit MCP configuration only when a client has no verified setup path.

How the commands fit together

The XMemo CLI architecture is built on four core design principles:

1. Unified Resource Grammar (xmemo <resource> <action>)

Every integration component is a first-class resource with predictable lifecycle actions:

ResourceScopeActionsExamples
mcpMCP server connection configurationinstall, remove, statusxmemo mcp install codex, xmemo mcp status
pluginHost-native extension packagesinstall, remove, status, list, infoxmemo plugin install gemini-cli, xmemo plugin list
skillAgent skill scripts & documentationinstall, remove, status, updatexmemo skill install --client openclaw
profileMarkdown behavior steering instructionsinstall, remove, status, showxmemo profile install cursor
  • Composite commands: xmemo setup [<client>...], xmemo uninstall [<client>...], and xmemo status [<client>] orchestrate these resources in a single step according to the client's declarative profile.
  • Backward-compatible aliases: Familiar commands such as xmemo mcp add (alias for mcp install), xmemo profile uninstall (alias for profile remove), and xmemo skill uninstall (alias for skill remove) remain fully functional and print a helpful one-line hint in interactive terminals.

2. Unified Target Resolver

When no client is explicitly passed, the CLI uses a deterministic three-tier precedence resolution model:

  1. Explicit flag or argument: --client <id>, positional client argument, or --all.
  2. Calling agent environment: Automatically identifies the calling agent runtime when running inside an agent session (e.g., CLAUDECODE / CLAUDE_CODE_ENTRYPOINT maps to claude-code, and CODEX_THREAD_ID / CODEX_SESSION_ID maps to codex).
  3. Detected installed clients: Inspects local configuration paths and markers. If exactly one matching client is found, it is automatically selected; if multiple clients are found in interactive mode, an interactive picker is presented. The CLI never silently writes configuration to arbitrary unverified paths.

3. Plan, Confirm Once, Apply (PlanRunner)

Mutating commands follow a strict, atomic execution pattern:

  1. Build Plan: Assemble an ordered sequence of actions across resources (e.g. plugin install followed by skill configuration).
  2. Preview: Print the entire plan (including modified paths, commands, and unified diffs) to the terminal.
  3. Confirm Once: Prompt [y/N] exactly once for the entire sequence. Re-running with --yes or -y bypasses the prompt; --dry-run displays the preview without mutation.
  4. Apply Sequentially: Steps run in dependency order, stopping immediately upon first failure. Re-running an already configured client detects that all components are up to date and reports Nothing to do.

4. Declarative Client Registry

All client configurations, recipes, and capabilities are declared centrally in src/clients/registry.js. Command implementations are purely generic orchestrators with zero hardcoded client ID strings. Platforms can also be added dynamically at runtime via registerClient().

Supported integrations

ClientRecommended commandConnection
Codexxmemo setup codexHosted MCP + behavior profile
Cursorxmemo setup cursorHosted MCP + Bearer Token + behavior profile
Copilot CLIxmemo setup copilotLocal authenticated proxy
Gemini CLIxmemo setup geminiHosted MCP + OAuth
Antigravityxmemo setup antigravityHosted MCP + OAuth
OpenClawxmemo setup openclawNative memory plugin + Skill
Hermesxmemo setup hermesNative memory provider
Kiroxmemo setup kiroNative HTTP OAuth; --auth key for API Key
Grokxmemo setup grokHosted MCP
Other MCP clientsxmemo mcp config --client genericGenerated template

The client registry also covers Devin Desktop (formerly Windsurf), Cline, Continue, Claude Desktop, Claude Code, Kimi Code, Zed, JetBrains, OpenCode, Qwen, Trae, and compatible MCP hosts. Run xmemo mcp list for the current machine-readable catalog.

For VS Code users looking for the dedicated editor extension, see the yonro/xmemo-vscode repository. For Cursor users looking for the dedicated plugin, see the yonro/xmemo-cursor-plugin repository. For Claude users looking for the dedicated plugin, see the yonro/xmemo-claude-plugin repository.

Connection modes

Hosted MCP

The recommended universal path is the XMemo Streamable HTTP endpoint:

https://xmemo.dev/mcp

OAuth-capable clients complete authentication in the browser. Other clients reference XMEMO_KEY without copying its value into repository files.

Generic configuration shape:

{
  "mcpServers": {
    "XMemo": {
      "type": "streamable-http",
      "url": "https://xmemo.dev/mcp",
      "headers": {
        "Authorization": "Bearer ${XMEMO_KEY}"
      }
    }
  }
}

Client configuration keys differ; prefer xmemo setup <client> over copying this generic example directly.

Local stdio MCP

xmemo-mcp is the dedicated stdio entry point for marketplaces and clients that launch a local process. Safe discovery exposes 20 tools, three prompts, and two documentation resources without a token. Tool execution still requires authentication.

After a global installation:

xmemo-mcp

Install-free MCP configuration:

{
  "mcpServers": {
    "XMemo": {
      "command": "npx",
      "args": [
        "-y",
        "--package",
        "@xmemo/client@latest",
        "xmemo-mcp"
      ]
    }
  }
}

xmemo mcp serve is equivalent when the CLI is already installed.

Native integrations

OpenClaw and Hermes have dedicated memory providers. Their default setup avoids installing a second, duplicate XMemo tool surface:

  • OpenClaw: installs the pinned plugin clawhub:@xmemo/openclaw-memory@1.0.18 without --force by default. Re-running setup gracefully detects existing installations; use --force to reinstall or overwrite.
  • Hermes: installs the pinned provider package hermes-xmemo==1.1.3 via pip install without -U.
  • Every install command prints the exact command before executing. Use --dry-run to preview actions without installing.
# Native OpenClaw plugin (clawhub:@xmemo/openclaw-memory@1.0.18) + XMemo Skill
xmemo setup openclaw

# Native Hermes memory provider (hermes-xmemo==1.1.3)
xmemo setup hermes

Add hosted MCP only when an explicit fallback is desired:

xmemo setup openclaw --with-mcp
xmemo setup hermes --with-mcp

Use --mcp-only to skip the native integration and install only the hosted MCP fallback.

XMemo Skill install

The CLI installs the verified XMemo Skill locally into agent skill folders or a target directory:

  • Installs into client skill directories:
    • Claude Code: ~/.claude/skills/xmemo-memory (global) or .claude/skills/xmemo-memory (project with --project)
    • Codex: ~/.codex/skills/xmemo-memory
    • OpenClaw: ~/.openclaw/skills/xmemo-memory
    • All other 21 clients remain null until officially documented.
  • Defaults to the pinned @xmemo/skill@1.1.35 release from npm and verifies tarball integrity (sha512 SRI) before extraction.
  • Override version with --version <semver> or explicitly opt into the latest release via --version latest.
  • For air-gapped or offline installations, install from a local directory or packed tarball with --from <dir|tgz> (optional --integrity <sha512>).
  • Manage client skills with skill status, skill update, and skill remove.
  • Preview actions without writing files using --dry-run.
  • Safety & Consent:
    • Interactive install prompts [y/N] before writing (Enter, EOF, or empty input cancels) unless --yes is specified.
    • Existing installs refuse overwrite without --force; when --force is used, a backup is created in ~/.xmemo/backups/skills/<client>/ (outside the agent skills directory).
    • skill remove only removes verified XMemo skill directories, refusing foreign folders, and reports the preserved backup location.
# Install to agent skill folder (Claude Code global, Codex, or OpenClaw)
xmemo skill install --client claude-code
xmemo skill install --client codex
xmemo skill install --client openclaw

# Install OpenClaw skill globally (shared ~/.openclaw/skills)
xmemo skill install --client openclaw --global

# Install to project-level skill folder (Claude Code project: .claude/skills/xmemo-memory)
xmemo skill install --client claude-code --project

# Install for all detected supported clients
xmemo skill install --all

# Automatically resolve detected client(s) (or specify --client <id>)
xmemo skill install

# Install into a custom directory path
xmemo skill install --dir ./custom-skill-dir

# Non-interactive install (skips [y/N] prompt)
xmemo skill install --client codex --yes

# Replace existing installation (creates backup in ~/.xmemo/backups/skills/<client>/)
xmemo skill install --client codex --force --yes

# Update alias (equivalent to skill install --force)
xmemo skill update --client codex --yes

# Inspect installation status across clients
xmemo skill status
xmemo skill status --client codex
xmemo skill status --all --json

# Remove installed skill from an agent folder (refuses non-XMemo folders)
xmemo skill remove --client codex --yes
xmemo skill remove --client claude-code --project --yes

# Dry run preview
xmemo skill install --client codex --dry-run
Standalone curl & PowerShell installers

For environments without Node.js or @xmemo/client, XMemo provides standalone HTTPS installers at https://xmemo.dev/skill/install (POSIX sh) and https://xmemo.dev/skill/install.ps1 (PowerShell).

The installer is agent-aware and automatically resolves the correct target directory for your active agent:

# Claude Code: installs to ~/.claude/skills/xmemo-memory
curl -fsSL https://xmemo.dev/skill/install | XMEMO_SKILL_AGENT=claude-code sh

# Codex: installs to ${CODEX_HOME:-$HOME/.codex}/skills/xmemo-memory
curl -fsSL https://xmemo.dev/skill/install | XMEMO_SKILL_AGENT=codex sh

# OpenClaw: install via OpenClaw CLI
openclaw skills install @xmemo/xmemo --version 1.1.35

# Windows (PowerShell):
# $env:XMEMO_SKILL_AGENT="claude-code"; irm https://xmemo.dev/skill/install.ps1 | iex
# $env:XMEMO_SKILL_AGENT="codex"; irm https://xmemo.dev/skill/install.ps1 | iex

[!TIP] Prompt for your AI Agent (copy and paste directly into Claude Code, Codex, or another agent):

Install the standalone XMemo Skill into your skills directory: run the installer from https://xmemo.dev/skill/install (on Windows, https://xmemo.dev/skill/install.ps1) with XMEMO_SKILL_DIR set to your skills directory plus /xmemo-memory. Run the doctor command it prints to verify the installation, then reload your skills and follow the Skill's first-run steps. Follow your normal safety checks and do not use elevated privileges.

Target resolution precedence (first match wins):

  1. XMEMO_SKILL_DIR: Installs to the specified directory.
  2. XMEMO_SKILL_AGENT=claude-code|codex: Installs to the explicit agent's skills directory (openclaw redirects to openclaw skills install xmemo).
  3. Auto-detection: Automatically detects Claude Code (CLAUDECODE=1) or Codex (CODEX_THREAD_ID, CODEX_SESSION_ID, or CODEX_HOME).
  4. Home directory discovery: If only ~/.claude or only ~/.codex exists in HOME, selects that agent.
  5. Fallback: Installs to ./xmemo-skill with a warning on stderr explaining that AI agents will not automatically load the skill from this directory.

Safety & Replacement:

  • Refuses to overwrite existing installations unless XMEMO_SKILL_FORCE=1 is provided.
  • When replacing, moves the previous installation to ~/.xmemo/backups/skills/<agent>/<name>-<timestamp> (safely outside agent skill search paths).
  • After installation, prints the absolute install path, the verification doctor command (node <path>/scripts/xmemo-skill.mjs doctor --anonymous), and a prompt to reload your agent.

Agent plugins

The CLI provides a curated, static index of verified agent plugins shipped directly in @xmemo/client. Each entry contains a pinned version, release tag, and exact Git commit SHA resolved at release time.

ℹ️ Strict Separation Rule: xmemo plugin installs agent plugins only (e.g. @xmemo/openclaw-memory). Skills are installed exclusively via xmemo skill install (e.g. @xmemo/xmemo).

Plugin IDPlatform / AgentKindStatusIntegration
openclawOpenClawnative-cliStableopenclaw plugins install clawhub:@xmemo/openclaw-memory@1.0.18 (auto-prompts update if already installed)
hermesHermes Agentnative-cliStablehermes plugins install xmemo (fallback: python -m pip install hermes-xmemo==1.1.3)
claude-codeClaude Codegit-dirPreviewPinned Git clone verified against commit 5d0d280 (defaults to ~/.xmemo/plugins/claude-code)
cursorCursormarketplacePreviewCursor Marketplace plugin
gemini-cliGemini CLInative-cliPreviewgemini extensions install https://github.com/yonro/xmemo-gemini-cli --ref 39e25b185b5157490d1683e4ca8c5c5fb1312a88
kiroKiromanualPreviewSteering rules & Power integration
vscodeVS CodemanualPreviewVS Code extension manual steps (pending marketplace publication)
deepseek-dshDeepSeek DSHnative-cliPreviewdsh plugin --profile <name> add dsh-xmemo (requires --profile)
chatgpt-codexChatGPT / CodexmarketplacePreviewChatGPT & Codex extension
cindyCindymanualPreviewNative agent memory integration
codexCodexmcpPreviewDedicated MCP configuration (xmemo setup codex)

Commands:

# List available plugins (excluding legacy entries)
xmemo plugin list

# Include legacy plugins
xmemo plugin list --all

# View plugin details and verification metadata
xmemo plugin info <id>

# Preview install plan without executing
xmemo plugin install <id> --dry-run

# Install with explicit confirmation (prompts [y/N] by default)
xmemo plugin install <id>

# Non-interactive install
xmemo plugin install <id> --yes

# Specify profile for deepseek-dsh
xmemo plugin install deepseek-dsh --profile default --yes

# Specify custom target directory for git-dir plugins
xmemo plugin install claude-code --yes --dir ~/.custom-plugins/claude-code

# Open plugin documentation or marketplace in browser
xmemo plugin install <id> --open

# Check installation status
xmemo plugin status [<id>]

Shortened here. Read the whole README on GitHub.

Signals

GitHub stars
12
Forks
1
Last commit
Oct 2026
Weekly_downloads
1k weekly_downloads
Advanced
Delivery
xmemo MCP server → your Ahel connector (mcp.ahel.ai) → your AI.
Item type
mcp-server
Key
io-github-yonro-xmemo
Source
github.com/yonro/memory-os-cli
Hosted endpoint
https://xmemo.dev/mcp