loading…
Search for a command to run...
loading…
Dual-mode tool providing long-term memory management for Claude Code and MCP clients, with semantic search and user/session isolation via Qdrant.
Dual-mode tool providing long-term memory management for Claude Code and MCP clients, with semantic search and user/session isolation via Qdrant.
A dual-mode tool providing long-term memory management for Claude Code and other MCP clients. Features both a CLI interface for direct commands and an MCP server for programmatic access.
Built on Qdrant vector database with semantic search and user/session isolation.
userIdrunId# Install
pip install -e .
# CLI usage
rememberme add "User prefers dark mode"
rememberme search "preferences" --limit 5
rememberme status
# MCP mode (for Claude Code)
python -m rememberme
This guide walks you through setting up RememberMe from downloading the repository to your first command.
git clone https://github.com/JoeXie/remember-me.git
cd remember-me
Or download and extract the archive from GitHub.
pip install -e .
This installs RememberMe in development mode and creates the rememberme command.
Create the config directory and copy the example env file:
mkdir -p ~/.config/rememberme/
cp .env.example ~/.config/rememberme/.env
Edit ~/.config/rememberme/.env with your settings:
# Required: Your embedding API credentials
EMBEDDING_API_KEY=your_api_key_here
OPENAI_BASE_URL=https://ark.cn-beijing.volces.com/api/coding/v3
# Required: Embedding model configuration
EMBEDDING_MODEL=doubao-embedding-vision
EMBEDDING_DIMENSIONS=2048
# Optional: Qdrant connection (defaults shown)
QDRANT_HOST=localhost
QDRANT_PORT=6333
QDRANT_COLLECTION_NAME=memories
# Optional: Default user ID
DEFAULT_USER_ID=user_default
Make sure Qdrant is running:
# Using Docker
docker run -p 6333:6333 -p 6334:6334 qdrant/qdrant
# Or using Podman
podman run -p 6333:6333 -p 6334:6334 qdrant/qdrant
Check that everything is connected:
rememberme status
Expected output:
## RememberMe Status
- **Qdrant**: `Connected`
- Host: `localhost:6333`
- Collection: `memories`
- **Memories**: `0` stored
# Add a memory
rememberme add "User prefers dark mode theme"
# Search memories
rememberme search "preferences"
# Get help
rememberme --help
| Issue | Solution |
|---|---|
QdrantOfflineError |
Ensure Qdrant is running (docker run -p 6333:6333 qdrant/qdrant) |
ValidationError |
Check EMBEDDING_API_KEY and OPENAI_BASE_URL in ~/.config/rememberme/.env |
| Command not found | Re-run pip install -e . to create the rememberme command |
| Collection error | RememberMe auto-creates the collection on first run |
| Config not found | Ensure ~/.config/rememberme/.env exists (or will be auto-created) |
# Add a new memory
rememberme add "User prefers dark mode"
# Search memories
rememberme search "user preferences"
rememberme search "project decisions" --limit 10
# Check status
rememberme status
# Delete a memory
rememberme delete <memory_id>
# Delete all memories
rememberme delete-all --force
# JSON output (for programmatic use)
rememberme add "text" --json
rememberme search "query" --json
| Option | Description |
|---|---|
--user-id |
User ID scope (defaults to DEFAULT_USER_ID env var) |
--debug |
Enable debug logging |
Dual-Mode Entry
┌─────────────────┐
│ __main__.py │
│ auto-detects │
└────────┬────────┘
│
┌────────────────┼────────────────┐
│ │
▼ ▼
┌───────────┐ ┌─────────────┐
│ CLI Mode │ │ MCP Mode │
│ (Click) │ │ (stdio) │
└─────┬─────┘ └──────┬──────┘
│ │
▼ │
MemoryManager │
(core/memory_manager.py) │
│ │
└────────────────┼────────────────┘
│
▼
┌─────────────────────────┐
│ MemoryStore │
│ (Qdrant operations) │
└─────────────────────────┘
# Add MCP server
claude mcp add rememberme -- python -m rememberme
# Or specify working directory
claude mcp add rememberme -- bash -c "cd /path/to/RememberMe && python -m rememberme"
Add to ~/.claude/settings.json:
{
"mcpServers": {
"rememberme": {
"command": "python",
"args": ["-m", "rememberme"],
"env": {
"QDRANT_HOST": "<HOST>",
"QDRANT_PORT": "<PORT>",
"EMBEDDING_API_KEY": "<YOUR_API_KEY>",
"EMBEDDING_MODEL": "<EMBEDDING_MODEL>",
"EMBEDDING_DIMENSIONS": "<EMBEDDING_DIMENSIONS>",
"OPENAI_BASE_URL": "<OPENAI_BASE_URL>",
"DEFAULT_USER_ID": "<DEFAULT_USER_ID>"
}
}
}
}
add_memory - Add a memorysearch_memories - Semantic searchget_memory - Get a single memoryupdate_memory - Update a memorydelete_memory - Delete a memorydelete_all_memories - Clear all memoriesFor OpenClaw agents, install the RememberMe skill to enable auto-recall and auto-storage:
# Install skill from local repository
/skill install path/to/RememberMe/skills/using-rememberme-cli --always true
Important: When installing, set always: true to enable automatic pre-execution recall and post-response storage on every conversation.
The skill provides:
Configuration is loaded from ~/.config/rememberme/.env by default.
If this file doesn't exist, it will be created automatically (the directory will be created if needed).
To set up:
mkdir -p ~/.config/rememberme/
cp .env.example ~/.config/rememberme/.env
Then edit ~/.config/rememberme/.env with your settings.
Note: Environment variables (e.g., when running via MCP with env in ~/.claude/settings.json) take precedence over the .env file.
| Variable | Description | Default |
|---|---|---|
QDRANT_HOST |
Qdrant server address | localhost |
QDRANT_PORT |
Qdrant port | 6333 |
QDRANT_COLLECTION_NAME |
Collection name | memories |
QDRANT_API_KEY |
Qdrant API key | - |
EMBEDDING_API_KEY |
Embedding API key | Required |
EMBEDDING_MODEL |
Embedding model (OpenAI compatible) | doubao-embedding-vision |
EMBEDDING_DIMENSIONS |
Vector dimensions | 2048 |
OPENAI_BASE_URL |
Embedding API endpoint | Required |
DEFAULT_USER_ID |
Default user ID | user_default |
LOG_LEVEL |
Log level | INFO |
Payload structure stored in Qdrant:
{
"userId": "<USER_ID>",
"data": "Memory content",
"hash": "<MD5_HASH>",
"createdAt": "<TIMESTAMP>",
"runId": "agent:main:<UUID>"
}
src/rememberme/
├── __main__.py # Dual-mode entry (CLI + MCP auto-detect)
├── config.py # Configuration management
├── models.py # Data models
├── embeddings.py # Embedding service
├── memory_store.py # Qdrant operations
│
├── core/ # Core business logic
│ ├── __init__.py
│ ├── exceptions.py # Custom exceptions
│ └── memory_manager.py
│
├── cli/ # CLI interface
│ ├── __init__.py
│ ├── commands.py # Click commands
│ ├── formatter.py # Output formatters
│ └── lazy.py # Lazy imports
│
├── mcp/ # MCP adapter
│ ├── __init__.py
│ └── adapter.py # MCP server
│
└── skill/ # OpenClaw skill
└── manage_personal_memory.py
skills/ # OpenClaw skills (distributed separately)
└── using-rememberme-cli/
└── SKILL.md
tests/
├── test_models.py
├── test_config.py
└── test_embeddings.py
pytest tests/
MIT
Run in your terminal:
claude mcp add rememberme -- npx Security
Low riskAutomated heuristic from public metadata — not a security guarantee.