memory-pro
Efficient semantic search engine for OpenClaw workspace memory using FAISS and Sentence-Transformers, indexing Markdown and key agent files.
Description
Memory Pro Skill
A highly efficient semantic search engine for your OpenClaw workspace memory, powered by FAISS and Sentence-Transformers.
This skill indexes Markdown files and key agent files (e.g. MEMORY.md, SOUL.md) to provide meaning-based context retrieval instead of exact keyword matching.
🚀 Installation
This skill can be installed on any OpenClaw host.
# Clone or copy the folder
cd memory-pro-export
chmod +x install.sh
./install.sh
The installation script will:
- Copy the skill to
~/.openclaw/skills/memory-pro - Set up a Python virtual environment using
uv - Configure and start a
systemduser service (memory-pro.service)
⚙️ Architecture
- Engine: FAISS +
sentence-transformers(all-MiniLM-L6-v2) - API: FastAPI running on port 8001
- Data Source: Configurable via environment variables (Defaults to
~/.openclaw/workspace/memory/andMEMORY.md,SOUL.md, etc.) - Service: Runs safely in the background, rebuilding the index on startup to ensure consistency.
💻 Usage (For Agents)
Use the client script to query the running service.
1. Semantic Search (Recommended)
# Basic search
python ~/.openclaw/skills/memory-pro/scripts/search.py "What did I do yesterday?"
# JSON output (for better tool parsing)
python ~/.openclaw/skills/memory-pro/scripts/search.py "project updates" --json
2. Manual Index Rebuild
The index is automatically rebuilt when the background service restarts. If you need to force an immediate update:
systemctl --user restart memory-pro.service
(Note: Service restart takes ~15-20 seconds to rebuild index and load models. The client script has auto-retry logic.)
🔧 Environment Configuration
The service behavior can be customized by editing ~/.config/systemd/user/memory-pro.service:
MEMORY_PRO_WORKSPACE_DIR: The root of your workspace (e.g.,~/.openclaw/workspace/)MEMORY_PRO_DATA_DIR: Directory containing.mdfiles to index.MEMORY_PRO_CORE_FILES: Comma-separated list of core files to always index.MEMORY_PRO_PORT: The port for the API (default8001).
🩺 Troubleshooting
"Connection failed"
- The service might be stopped or restarting.
- Check status:
systemctl --user status memory-pro.service - If restarting, wait 15 seconds. The client script retries automatically for up to 20s.
"Address already in use"
- Port 8001 is taken by a zombie process.
- Fix:
kill $(lsof -t -i:8001)then restart service.
Reviews (0)
No reviews yet. Be the first to review!
Comments (0)
No comments yet. Be the first to share your thoughts!