Agent skill

mem0-cli

Mem0 CLI -- the command-line interface for mem0 memory operations. TRIGGER when: user mentions "mem0 cli", "mem0 command line", "@mem0/cli", "mem0-cli", "pip install mem0-cli", "npm install -g @mem0/cli", or is running mem0 commands in a terminal/shell (mem0 add, mem0 search, mem0 list, mem0 get, mem0 init, mem0 config, mem0 import). Also triggers when query includes CLI flags like --user-id, --output, --json, --agent, or describes bash/zsh/terminal/shell usage. DO NOT TRIGGER when: user asks about programmatic SDK integration in Python/TS code (use mem0 skill), or Vercel AI SDK provider (use mem0-vercel-ai-sdk skill).

Stars 52,700
Forks 5,913

Install this agent skill to your Project

npx add-skill https://github.com/mem0ai/mem0/tree/main/skills/mem0-cli

Metadata

Additional technical details for this skill

tags
cli, terminal, memory, ai, command-line
author
mem0ai
version
1.0.0
category
ai-memory

SKILL.md

Mem0 CLI

The official command-line interface for the Mem0 memory platform. Add, search, list, update, and delete memories from the terminal -- for developers, AI agents, and CI/CD pipelines.

Install

Node.js (npm):

bash
npm install -g @mem0/cli

Python (pip):

bash
pip install mem0-cli

Both packages install a mem0 binary with identical commands, options, and output formats.

Setup

Interactive wizard:

bash
mem0 init

Or set the environment variable directly:

bash
export MEM0_API_KEY="m0-xxx"

Get an API key at: https://app.mem0.ai/dashboard/api-keys

Quick Reference

Add a memory

bash
mem0 add "I prefer dark mode" --user-id alice

Search memories

bash
mem0 search "preferences" --user-id alice

List all memories for a user

bash
mem0 list --user-id alice

Get a specific memory

bash
mem0 get <memory-id>

Update a memory

bash
mem0 update <memory-id> "new text"

Delete a single memory

bash
mem0 delete <memory-id>

Delete all memories for a user

bash
mem0 delete --all --user-id alice --force

Agent / JSON Mode

Use --json or --agent to get structured output suitable for LLM consumption. Every command wraps its response in a standard envelope:

json
{
  "status": "success",
  "command": "search",
  "duration_ms": 245,
  "scope": { "user_id": "alice" },
  "count": 3,
  "error": null,
  "data": [
    { "id": "mem-abc", "memory": "User prefers dark mode", "score": 0.92 }
  ]
}

On error:

json
{
  "status": "error",
  "command": "search",
  "error": "Authentication failed. Your API key may be invalid or expired.",
  "data": null
}

The --agent flag is an alias for --json. Both write spinners and progress to stderr so stdout is always clean, parseable JSON.

Node and Python Parity

Both the Node.js (@mem0/cli) and Python (mem0-cli) CLIs are implemented from the same specification (cli-spec.json). They share:

  • Identical command names, arguments, and flags
  • Identical output formats (text, json, table, quiet)
  • Identical entity ID resolution, graph tri-state, filter building
  • Identical error messages and exit codes

Choose whichever runtime you already have installed. The behavior is the same.

Common Edge Cases

  • Async processing delay: After mem0 add, memories process asynchronously. Wait 2-3 seconds before searching for newly added content. Use mem0 event list to check processing status.
  • --all vs --entity delete modes: mem0 delete --all -u alice deletes all memories for user alice. mem0 delete --entity -u alice deletes the entity itself AND all its memories (cascade). These are mutually exclusive modes.
  • Entity ID resolution: If you pass any explicit scope flag (e.g. --user-id), the CLI uses ONLY the explicit IDs and ignores config defaults. If no scope flags are given, all configured defaults apply.
  • Stdin detection: When no text argument is provided and input is piped (not a TTY), the CLI reads from stdin. Works with add, search, and update.
  • Graph tri-state: --no-graph takes precedence over --graph, which takes precedence over the config default (defaults.enable_graph).

References

Load these on demand for deeper detail:

Topic File
Command reference (all commands, flags, options, examples) references/command-reference.md
Configuration (config file, env vars, precedence, init wizard) references/configuration.md
Workflows (piping, scripting, CI/CD, agent mode recipes) references/workflows.md

Related Mem0 Skills

Skill When to use Link
mem0 Python/TypeScript SDK, REST API, framework integrations local / GitHub
mem0-vercel-ai-sdk Vercel AI SDK provider with automatic memory local / GitHub

Expand your agent's capabilities with these related and highly-rated skills.

mem0ai/mem0

memory-dream

Memory consolidation protocol. Reviews all stored memories, merges duplicates, removes noise and credentials, rewrites unclear entries, and enforces TTL expiration. Use when the user asks to clean up, consolidate, or review their memories. Also triggers automatically after sufficient activity (configurable).

52,700 5,913
Explore
mem0ai/mem0

memory-triage

Persistent long-term memory protocol powered by mem0. Evaluate conversations for durable facts worth storing via memory_add. Handles identity, preferences, decisions, configurations, rules, projects, and relationships. Loaded by the openclaw-mem0 plugin when skills mode is active.

52,700 5,913
Explore
mem0ai/mem0

mem0

Integrate Mem0 Platform into AI applications for persistent memory, personalization, and semantic search. Use this skill when the user mentions "mem0", "memory layer", "remember user preferences", "persistent context", "personalization", or needs to add long-term memory to chatbots, agents, or AI apps. Covers Python and TypeScript SDKs, framework integrations (LangChain, CrewAI, Vercel AI SDK, OpenAI Agents SDK, Pipecat), and the full Platform API. Use even when the user doesn't explicitly say "mem0" but describes needing conversation memory, user context retention, or knowledge retrieval across sessions.

52,700 5,913
Explore
mem0ai/mem0

mem0-codex

Mem0 persistent memory integration for Codex. Automatically retrieve relevant memories at the start of each task, store key learnings when tasks complete, and capture session state before context is lost. Use the mem0 MCP tools (add_memory, search_memories, get_memories, etc.) for all memory operations.

52,700 5,913
Explore
mem0ai/mem0

mem0

Mem0 Platform SDK for adding persistent memory to AI applications. TRIGGER when: user mentions "mem0", "MemoryClient", "memory layer", "remember user preferences", "persistent context", "personalization", or needs to add long-term memory to chatbots, agents, or AI apps. Covers Python SDK (mem0ai), TypeScript SDK (mem0ai), and framework integrations (LangChain, CrewAI, OpenAI Agents SDK, Pipecat, LlamaIndex, AutoGen, LangGraph). Also covers the open-source self-hosted Memory class. This is the DEFAULT mem0 skill for ambiguous queries. DO NOT TRIGGER when: user asks about CLI commands, terminal usage, or shell scripts (use mem0-cli), or Vercel AI SDK / @mem0/vercel-ai-provider / createMem0 (use mem0-vercel-ai-sdk).

52,700 5,913
Explore
mem0ai/mem0

mem0-vercel-ai-sdk

Mem0 provider for Vercel AI SDK (@mem0/vercel-ai-provider). TRIGGER when: user mentions "vercel ai sdk", "@mem0/vercel-ai-provider", "createMem0", "retrieveMemories", "addMemories", "getMemories", "searchMemories", "mem0 vercel", "AI SDK provider", "AI SDK memory", or is using generateText/streamText with mem0. Also triggers for Next.js apps needing memory-augmented AI. DO NOT TRIGGER when: user asks about direct Python/TS SDK calls without Vercel (use mem0 skill), or CLI terminal commands (use mem0-cli skill).

52,700 5,913
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results