К основному содержанию
скилл Claude Code CX Codex Cursor GitHub Copilot

mem0 — скилл для Claude Code: что делает и как установить

Помогает агенту встраивать долговременную память Mem0 в приложения на Python и TypeScript через SDK v3 или открытый класс Memory.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add mem0ai/mem0 --skill mem0 -a claude-code
Открыть на GitHub

Что делает mem0

Скилл даёт ИИ-ассистенту готовые шаблоны и правила работы с платформой Mem0. Он помогает выстроить базовый цикл интеграции: извлечь релевантные воспоминания по запросу, передать контекст модели и сохранить новый диалог. Скилл охватывает пакет mem0ai для Python 3.10+ и Node.js 18+, а также интеграции с LangChain, CrewAI, LlamaIndex и LangGraph.

Для облачной платформы требуется ключ MEM0_API_KEY и сетевой доступ к api.mem0.ai. Если нужен автономный контур без облака, скилл показывает настройку открытого класса Memory. При вызове add() сохранение происходит асинхронно: пока статус события остаётся в PENDING, поиск не вернёт новую запись.

В API v3 фильтрация изменилась. Параметры user_id и agent_id теперь передаются строго внутри словаря filters, иначе библиотека выдаст ошибку.

Какие задачи решает

  • добавить постоянную память о предпочтениях пользователя в чат-бота
  • настроить клиент MemoryClient для Python или TypeScript
  • подключить память Mem0 к агентам на LangChain, CrewAI или LangGraph
  • организовать семантический поиск по прошлым сообщениям

Примеры запросов агенту

  • Подключи Mem0 к нашему чат-боту на FastAPI: нужно сохранять контекст пользователя по user_id.
  • Как правильно искать воспоминания через MemoryClient в mem0ai v3 с фильтром по пользователю?
  • Покажи пример работы с локальным классом Memory без облачного API-ключа.

Как установить mem0

1Через Skills CLI (Vercel)

npx skills add mem0ai/mem0 --skill mem0 -a claude-code

2Вручную: положить файлы

~/.claude/skills/mem0/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/mem0/

Из того же набора4

Весь набор →

Похожие

claude-certification rohitg00 Ведёт по одному из четырёх треков сертификации Claude: объясняет урок, гоняет практику и проверяет артефакты. Пригодится, если готовитесь к экзамену и хотите учиться, а не читать список ссылок. Claude Code CX Codex Cursor +1 3 300установок prompt-master nidhinjs Скилл пишет и улучшает промпты под конкретный ИИ-инструмент. Подключайте его, когда нужно подготовить запрос для Claude Code, Cursor или другого поддерживаемого инструмента. Claude Code CX Codex Cursor +1 3 900установок portless vercel-labs Присваивает локальным dev-серверам стабильные имена вида myapp.localhost вместо номеров портов. Claude Code CX Codex Cursor +1 5 900установок plugin-creator официальный openai Создаёт каркас плагина для Codex с манифестом, папками и записью в marketplace.json. Пригодится для локальной разработки и тестирования. Claude Code CX Codex Cursor +1 2 500установок plannotator-compound backnotprop Разбирает архив планов Plannotator, вытаскивает причины отказов и собирает из них HTML-отчёт с графикой и выводами. Claude Code CX Codex Cursor +1 11 400установок plannotator-setup-goal backnotprop Скилл превращает идею в готовый пакет цели через интервью с пользователем, сбор фактов и анализ кодовой базы. Помогает чётко сформулировать, что нужно сделать, и создать план выполнения. Claude Code CX Codex Cursor +1 11 300установок setup-matt-pocock-skills Matt Pocock Скилл настраивает репозиторий для инженерных скиллов Matt Pocock: задаёт трекер задач, метки триажа и расположение доменной документации. Запустите его перед первым использованием остальных скиллов. Claude Code 1 052 851установок to-tickets Matt Pocock Разбивает план, спецификацию или переписку на небольшие сквозные задачи и отмечает, какие из них блокируют остальные. Пригодится, когда нужно согласовать порядок работы до публикации задач в трекере. Claude Code 711 230установок

Вопросы о mem0

Как установить mem0 в Claude Code?

Выполните в терминале команду npx skills add mem0ai/mem0 --skill mem0 -a claude-code. Файл навыка сохранится по пути ~/.claude/skills/mem0/SKILL.md.

Что делает скилл mem0?

Скилл объясняет агенту кодинга, как интегрировать долгосрочную память Mem0 в проекты на Python или TypeScript. В него входят инструкции по вызовам add, search, фильтрации данных и подключению к сторонним фреймворкам.

Почему поиск search() сразу после add() возвращает пустой результат?

Метод add() по умолчанию работает асинхронно и возвращает статус PENDING. Запись станет доступна для поиска после перехода статуса в SUCCEEDED, либо при явной передаче параметра infer=False.

Исходный текст

SKILL.md · Apache-2.0
---
name: mem0
description: >
  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).
license: Apache-2.0
metadata:
  author: mem0ai
  version: "3.1.0"
  category: ai-memory
  tags: "memory, personalization, ai, python, typescript, vector-search"
  mem0_tested_versions: "mem0ai (PyPI) >=2.0.0,<3.0.0; mem0ai (npm) >=3.0.0,<4.0.0"
compatibility: Requires Python 3.10+ or Node.js 18+, pip install mem0ai or npm install mem0ai, MEM0_API_KEY env var (Platform), and internet access to api.mem0.ai. Targets the v3 API (Python mem0ai 2.x, TypeScript mem0ai 3.x).
---

# Mem0 Platform Integration

> **Skill Graph:** This skill is part of the Mem0 skill graph:
> - **mem0** (this skill) -- Platform Client SDK + OSS (Python + TypeScript)
> - **[mem0-cli](../mem0-cli/SKILL.md)** ([GitHub](https://github.com/mem0ai/mem0/tree/main/skills/mem0-cli)) -- Command-line interface
> - **[mem0-vercel-ai-sdk](../mem0-vercel-ai-sdk/SKILL.md)** ([GitHub](https://github.com/mem0ai/mem0/tree/main/skills/mem0-vercel-ai-sdk)) -- Vercel AI SDK provider

Mem0 is a managed memory layer for AI applications. It stores, retrieves, and manages user memories via API — no infrastructure to deploy. For self-hosted usage, see the OSS section in the client references below.

## Step 1: Install and authenticate

**Python:**
```bash
pip install mem0ai
export MEM0_API_KEY="m0-your-api-key"
```

**TypeScript/JavaScript:**
```bash
npm install mem0ai
export MEM0_API_KEY="m0-your-api-key"
```

Get an API key at: https://app.mem0.ai/dashboard/api-keys?utm_source=oss&utm_medium=skill-mem0

> **Don't have a `MEM0_API_KEY`?** Run `mem0 init --agent --agent-caller <your-name> --json` (after `pip install mem0-cli` or `npm install -g @mem0/cli`), substituting your agent identity (e.g. `claude-code`, `cursor`). If you forgot to pass `--agent-caller`, run `mem0 identify <your-name>` after init. The human can claim later with `mem0 init --email <your-email>`.

## Step 2: Initialize the client

**Python:**
```python
from mem0 import MemoryClient
client = MemoryClient(api_key="m0-xxx")
```

**TypeScript:**
```typescript
import MemoryClient from 'mem0ai';
const client = new MemoryClient({ apiKey: 'm0-xxx' });
```

For async Python, use `AsyncMemoryClient`.

## Step 3: Core operations

Every Mem0 integration follows the same pattern: **retrieve → generate → store**.

### Add memories
```python
messages = [
    {"role": "user", "content": "I'm a vegetarian and allergic to nuts."},
    {"role": "assistant", "content": "Got it! I'll remember that."}
]
client.add(messages, user_id="alice")
```

### Search memories
```python
results = client.search("dietary preferences", filters={"user_id": "alice"})
for mem in results.get("results", []):
    print(mem["memory"])
```

### Get all memories
```python
all_memories = client.get_all(filters={"user_id": "alice"})
```

### Update a memory
```python
client.update("memory-uuid", text="Updated: vegetarian, nut allergy, prefers organic")
```

### Delete a memory
```python
client.delete("memory-uuid")
client.delete_all(user_id="alice")  # delete all for a user
```

## Common integration pattern

```python
from mem0 import MemoryClient
from openai import OpenAI

mem0 = MemoryClient()
openai = OpenAI()

def chat(user_input: str, user_id: str) -> str:
    # 1. Retrieve relevant memories
    memories = mem0.search(user_input, filters={"user_id": user_id})
    context = "\n".join([m["memory"] for m in memories.get("results", [])])

    # 2. Generate response with memory context
    response = openai.chat.completions.create(
        model="gpt-5-mini",
        messages=[
            {"role": "system", "content": f"User context:\n{context}"},
            {"role": "user", "content": user_input},
        ]
    )
    reply = response.choices[0].message.content

    # 3. Store interaction for future context
    mem0.add(
        [{"role": "user", "content": user_input}, {"role": "assistant", "content": reply}],
        user_id=user_id
    )
    return reply
```

## Common edge cases

- **Search returns empty:** `add()` is asynchronous and returns `{"event_id": "...", "status": "PENDING"}` (`eventId` on the TS client). Memories are searchable once the event is `SUCCEEDED` (poll `GET /v1/event/{event_id}/`, or wait a few seconds). `infer=False` is synchronous. Also verify `user_id` matches exactly (case-sensitive) and use `filters={"user_id": "..."}` syntax.
- **AND filter with user_id + agent_id returns empty:** Entities are stored separately. Use `OR` instead, or query separately.
- **Duplicate memories:** Don't mix `infer=True` (default) and `infer=False` for the same data. Stick to one mode.
- **Wrong import:** For the hosted Platform use `from mem0 import MemoryClient` (or `AsyncMemoryClient` for async). `from mem0 import Memory` is the self-hosted OSS class and does not use `MEM0_API_KEY`.
- **v3 defaults (Platform):** `top_k=10`, `rerank=False`. `threshold` is a server-side cutoff applied before score blending, not a floor on the returned `score` (the default and `0.0` return the same or nearly the same results). The client sends none of these unless you pass them. The OSS `Memory.search()` default is `top_k=20`. Adjust as needed for your use case.

## v2 Compatibility

The "v2" line is Python SDK 1.x and TypeScript SDK 2.x. If you are still on it, note these differences from the current SDKs (Python 2.x, TypeScript 3.x):
- **Entity IDs:** `user_id` / `agent_id` / `run_id` could be top-level kwargs on `search()` and `get_all()`. They now go inside `filters` (top-level raises an error)
- **Defaults (Platform):** `threshold=0.3`, `rerank=False`. OSS: `top_k=100`, no threshold, `rerank=True`
- **Graph memory:** `enable_graph=True` and `relations` are gone. Entity linking is built in (see [client/python.md](client/python.md) for OSS)

See the [Platform migration guide](https://docs.mem0.ai/migration/platform-v2-to-v3) and the [OSS migration guide](https://docs.mem0.ai/migration/oss-v2-to-v3) for details.

## Live documentation search

For the latest docs beyond what's in the references, use the doc search tool:

```bash
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --query "topic"
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --page "/platform/features/graph-memory"
python ${CLAUDE_SKILL_DIR}/scripts/mem0_doc_search.py --index
```

No API key needed — searches docs.mem0.ai directly.

## Client SDK References

Language-specific deep references (Platform + OSS):

| Language | File |
|----------|------|
| Python (MemoryClient + AsyncMemoryClient + Memory OSS) | [client/python.md](client/python.md) |
| TypeScript/Node.js (MemoryClient + Memory OSS) | [client/node.md](client/node.md) |
| Python vs TypeScript differences | [client/differences.md](client/differences.md) |

## Platform References

Load these on demand for deeper detail:

| Topic | File |
|-------|------|
| Quickstart (Python, TS, cURL) | [references/quickstart.md](references/quickstart.md) |
| SDK guide (all methods, both languages) | [references/sdk-guide.md](references/sdk-guide.md) |
| API reference (endpoints, filters, object schema) | [references/api-reference.md](references/api-reference.md) |
| Architecture (pipeline, lifecycle, scoping, performance) | [references/architecture.md](references/architecture.md) |
| Platform features (retrieval, graph, categories, MCP, etc.) | [references/features.md](references/features.md) |
| Framework integrations (LangChain, CrewAI, OpenAI Agents, etc.) | [references/integration-patterns.md](references/integration-patterns.md) |
| Use cases & examples (real-world patterns with code) | [references/use-cases.md](references/use-cases.md) |

## Related Mem0 Skills

| Skill | When to use | Link |
|-------|-------------|------|
| mem0-cli | Terminal commands, scripting, CI/CD, agent tool loops | [local](../mem0-cli/SKILL.md) / [GitHub](https://github.com/mem0ai/mem0/tree/main/skills/mem0-cli) |
| mem0-vercel-ai-sdk | Vercel AI SDK provider with automatic memory | [local](../mem0-vercel-ai-sdk/SKILL.md) / [GitHub](https://github.com/mem0ai/mem0/tree/main/skills/mem0-vercel-ai-sdk) |

© mem0ai · Apache-2.0 · mem0ai/mem0

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой