3.8 KiB
name, description
| name | description |
|---|---|
| mem0-onboard | Post-install onboarding wizard for the mem0 plugin. Detects CLAUDE.md, AGENTS.md, .cursorrules, .windsurfrules, mem0.md and offers to import them. Installs coding categories. Shows active identity. TRIGGER: user runs /mem0:onboard, or mentions "setup mem0", "configure mem0 plugin". |
Mem0 Onboarding Wizard
Run this wizard to set up the mem0 plugin for the current project. Complete in ~30 seconds.
Step 0: Ensure mem0ai SDK is installed
The plugin installs the mem0ai Python SDK automatically on session start via a venv in ${CLAUDE_PLUGIN_DATA}/venv. If Step 4 (categories) fails with an import error, run:
"${CLAUDE_PLUGIN_ROOT}/scripts/ensure_deps.sh"
This is silent and idempotent — safe to run anytime.
Step 1: Verify API key and MCP connection
Check that mem0 MCP tools are available. Use ToolSearch with query "mem0 search_memories" — the exact tool name varies by install method (may be mcp__mem0__search_memories or mcp__plugin_mem0_mem0__search_memories).
- If any mem0 search tool found: Proceed to Step 2. The API key is working.
- If NOT found: The MCP server failed to connect. Tell the user:
- "MCP server not connected. Make sure
MEM0_API_KEYis exported in your shell." - Show:
export MEM0_API_KEY="m0-your-key-here"then restart Claude Code. - If they need a key: https://app.mem0.ai/dashboard/api-keys or
mem0 init --agent --json - STOP here. Do not proceed — all other steps need MCP tools.
- "MCP server not connected. Make sure
Step 2: Show identity
Report the active identity to the user:
- Call
search_memorieswithquery="project setup",user_id=<active_user_id>,filters={"AND": [{"user_id": "<active_user_id>"}, {"app_id": "<active_project_id>"}]},limit=1to verify connectivity. - Print:
Connected. user=<user_id>, project=<project_id>, branch=<branch> - If the search fails, troubleshoot the API key.
Step 3: Detect and import project files
Check for these files in the project root:
CLAUDE.mdAGENTS.md.cursorrules.windsurfrulesmem0.md
For each file found, ask the user: "Found <filename> ( bytes). Import into mem0? [Y/n]"
If user says yes (or default):
- Read the file content
- Call
add_memorywith:messages=[{"role": "user", "content": "## Project Profile: <filename>\n\nProject: <project_id>\n\n<file_content>"}]user_id=<active_user_id>app_id=<active_project_id>metadata={"type": "project_profile", "file": "<filename>", "source": "onboard", "branch": "<active_branch>"}infer=False
Step 4: Install coding categories
Ask: "Install coding categories optimized for development workflows? [Y/n]"
If yes, run the setup script using the plugin's venv python:
VENV_PY="${CLAUDE_PLUGIN_DATA}/venv/bin/python3"
if [ -x "${VENV_PY}" ]; then
"${VENV_PY}" "${CLAUDE_PLUGIN_ROOT}/scripts/setup_coding_categories.py" --apply
else
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/setup_coding_categories.py" --apply
fi
If the script fails with "mem0ai SDK not found", run the dependency installer first:
"${CLAUDE_PLUGIN_ROOT}/scripts/ensure_deps.sh"
Then retry the categories script.
Step 5: Mark project as onboarded
Create a marker file so SessionStart won't re-trigger onboarding next session:
_SAFE_PID=$(printf '%s' "<active_project_id>" | tr '/:' '--')
mkdir -p ~/.mem0 && touch ~/.mem0/.onboarded_${_SAFE_PID}
This is silent — no user-facing output needed.
Step 6: Summary
Print a summary:
Onboarding complete.
user_id: <user_id>
project_id: <project_id> (app_id)
imported: <N> files
categories: <installed or skipped>
Memory is now active for this project. Start working — mem0 will
automatically search relevant context and capture learnings.
Run /mem0:tour to see what mem0 already knows about this project.