openclaw 网盘下载
OpenClaw

技能详情(站内镜像,无评论)

首页 > 技能库 > Mem0

Intelligent memory layer for Clawdbot using Mem0. Provides semantic search and automatic storage of user preferences, patterns, and context across conversati...

开发与 DevOps

作者:Abhay Bhat @abhayjb

许可证:MIT-0

MIT-0 ·免费使用、修改和重新分发。无需归因。

版本:v1.0.0

统计:⭐ 2 · 1.4k · 14 current installs · 17 all-time installs

2

安装量(当前) 17

🛡 VirusTotal :良性 · OpenClaw :可疑

Package:abhayjb/mem0

安全扫描(ClawHub)

  • VirusTotal :良性
  • OpenClaw :可疑

OpenClaw 评估

The skill appears to implement the described memory functionality, but its metadata and runtime expectations are inconsistent (it uses Node and OPENAI_API_KEY and writes a local DB yet does not declare those requirements or provide an install spec).

目的

The skill's name/description match the code: it implements a mem0 memory layer. However the registry metadata claims no required env vars and no required binaries, while the scripts and SKILL.md clearly require Node.js and an OPENAI_API_KEY. That mismatch is unexplained and disproportionate to the documented purpose (the skill legitimately needs the OpenAI key and node runtime but failed to declare them).

说明范围

SKILL.md instructions stay on-topic (search before responding, add/list/delete memories). They instruct running the included Node scripts which call mem0 APIs and use the OPENAI_API_KEY for embeddings and extraction. Instructions also instruct storing a SQLite DB under ~/.mem0/history.db; that's within scope for a memory layer but is a persistence and privacy consideration. There are no obvious instructions to read unrelated system files or ex…

安装机制

This is marked as an instruction-only skill (no install spec), yet the package.json/package-lock and scripts indicate Node code with an npm dependency (mem0ai). The skill does not declare that Node or npm must be available, nor does it provide an install step for dependencies. That makes the runtime behavior unclear and could surprise users (scripts will fail or behave inconsistently if dependencies are not installed).

证书

The code and SKILL.md explicitly require OPENAI_API_KEY (and optionally JSON_OUTPUT env var) but the registry metadata lists no required environment variables or primary credential. Requesting an OpenAI API key is reasonable for this function, but it must be declared. The scripts also default to a hardcoded USER_ID 'abhay', which is an odd/poorly generalized default and may expose or entrench a specific identity in a shared environment.

持久

The skill writes persistent files to the user's home directory (~/.mem0/history.db) and uses a local vector store. That persistence is expected for a memory layer. always is false and the skill does not request system-wide config changes or other skills' credentials. Still, persistent local storage and autonomous model invocation (allowed by platform defaults) mean the skill can repeatedly access and store user data during use.

安装(复制给龙虾 AI)

将下方整段复制到龙虾中文库对话中,由龙虾按 SKILL.md 完成安装。

请把本段交给龙虾中文库(龙虾 AI)执行:为本机安装 OpenClaw 技能「Mem0」。简介:Intelligent memory layer for Clawdbot using Mem0. Provides semantic search and …。
请 fetch 以下地址读取 SKILL.md 并按文档完成安装:https://raw.githubusercontent.com/openclaw/skills/refs/heads/main/skills/abhayjb/mem0/SKILL.md
(来源:yingzhi8.cn 技能库)

SKILL.md

打开原始 SKILL.md(GitHub raw)

---
name: mem0
description: >-
  Intelligent memory layer for Clawdbot using Mem0. Provides semantic search and automatic storage of user preferences, patterns, and context across conversations. Use when (1) User explicitly says "remember this", (2) Learning user preferences or patterns during conversation, (3) Searching for past context about user's choices/preferences, (4) Building adaptive responses based on learned user behavior. Complements MEMORY.md (structured facts) with dynamic, conversational memory (learned preferences, patterns, adaptive context).
---

# Mem0 Memory Integration

Mem0 adds an intelligent, adaptive memory layer to Clawdbot that automatically learns and recalls user preferences, patterns, and context across all interactions.

## Core Workflow

### 1. Search Before Responding
Before answering user questions, search mem0 for relevant context:

```bash
node scripts/mem0-search.js "user preferences" --limit=3
```

Use retrieved memories to:
- Personalize responses
- Remember preferences
- Recall past patterns
- Adapt communication style

### 2. Store After Interactions

**Explicit Storage** (when user says "remember this"):
```bash
node scripts/mem0-add.js "Abhay prefers concise updates"
```

**Conversation Storage** (for context learning):
```bash
# Pass messages as JSON
node scripts/mem0-add.js --messages='[{"role":"user","content":"I like brief updates"},{"role":"assistant","content":"Got it!"}]'
```

## Available Commands

### Search Memories
```bash
node scripts/mem0-search.js "query text" [--limit=3] [--user=abhay]
```

Searches semantically across stored memories. Returns relevant memories ranked by relevance.

### Add Memory
```bash
# Simple text
node scripts/mem0-add.js "memory text" [--user=abhay]

# Conversation messages (auto-extracts memories)
node scripts/mem0-add.js --messages='[{...}]' [--user=abhay]
```

Mem0's LLM automatically extracts, deduplicates, and merges related memories.

### List All Memories
```bash
node scripts/mem0-list.js [--user=abhay]
```

Shows all stored memories for the user with IDs and creation dates.

### Delete Memories
```bash
# Delete specific memory
node scripts/mem0-delete.js <memory_id>

# Delete all memories for user
node scripts/mem0-delete.js --all --user=abhay
```

## What to Store vs Not Store

### ✅ Store These:
- **Explicit requests**: "Remember that I..."
- **Preferences**: Communication style, format choices
- **Personal context**: Work info, interests, family (non-sensitive)
- **Usage patterns**: Frequent requests, timing preferences
- **Corrections**: When user corrects your mistakes
- **Adaptive facts**: Current projects, recent interests

### ❌ Don't Store:
- Secrets, passwords, API keys
- Temporary context (unless explicitly requested)
- System errors or debug info
- Information already in MEMORY.md (avoid duplication)

## Complementing Clawdbot Memory

**Clawdbot MEMORY.md** (Structured, Deliberate):
- Permanent facts: Name = Abhay, Location = Singapore
- Reference data: Email, blog URL, Twitter handle
- Structured knowledge: Project details, credentials

**Mem0** (Dynamic, Learned):
- Preferences: "Abhay prefers concise updates"
- Patterns: "Usually asks for bus info at 8:30am"
- Adaptive context: "Currently interested in AI news"
- Behavioral: "Likes direct answers, minimal fluff"

**Use both together**: Check MEMORY.md for facts, check mem0 for preferences/patterns.

## Performance Benefits

- **+26% accuracy** over OpenAI Memory (LOCOMO benchmark)
- **91% faster** than full-context retrieval
- **90% fewer tokens** than including all conversation history
- **Sub-50ms** semantic search retrieval

## Configuration

Located in `scripts/mem0-config.js`:

```javascript
{
  embedder: "openai/text-embedding-3-small",
  llm: "openai/gpt-4o-mini",
  vectorStore: "memory" (local),
  historyDb: "~/.mem0/history.db",
  userId: "abhay"
}
```

Uses Clawdbot's OpenAI API key from environment (`OPENAI_API_KEY`).

## Integration Patterns

For detailed workflow patterns, error handling, and best practices, see:
- `references/integration-patterns.md`

## Programmatic Use

All scripts support `JSON_OUTPUT` environment variable for programmatic access:

```bash
JSON_OUTPUT=1 node scripts/mem0-search.js "query"
```

Returns JSON after human-readable output (look for `---JSON---` marker).

## Resources

### scripts/
- `mem0-config.js` - Configuration and instance initialization
- `mem0-search.js` - Search memories semantically
- `mem0-add.js` - Add new memories
- `mem0-list.js` - List all memories
- `mem0-delete.js` - Delete memories

### references/
- `integration-patterns.md` - Detailed best practices and patterns