| name | mnemos-setup |
| description | Setup mnemos persistent memory with mnemo-server.
Triggers: "set up mnemos", "install mnemo plugin", "configure memory plugin",
"configure openclaw memory", "configure opencode memory",
"configure claude code memory".
|
mnemos Setup
Persistent memory for AI agents. This skill helps you set up mnemos with any agent platform.
Prerequisites
You need a running mnemo-server instance. See the server README for deployment instructions.
Step 1: Deploy mnemo-server
cd mnemos/server
MNEMO_DSN="user:pass@tcp(host:4000)/mnemos?parseTime=true" go run ./cmd/mnemo-server
Step 2: Provision a tenant
curl -s -X POST http://localhost:8080/v1alpha1/mem9s | jq .
Save the returned id.
- For OpenClaw, this is the value you should store as
apiKey (preferred).
- Legacy OpenClaw config can still store the same value as
tenantID, but the plugin will still use v1alpha2.
- For Claude Code / OpenCode env vars, this remains the tenant ID value used by the current server API.
Step 3: Configure your agent platform
Pick your platform and follow the instructions:
OpenClaw
Add to openclaw.json:
{
"plugins": {
"slots": { "memory": "mem9" },
"entries": {
"mem9": {
"enabled": true,
"hooks": {
"allowConversationAccess": true
},
"config": {
"apiUrl": "http://localhost:8080",
"apiKey": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
}
}
}
Restart OpenClaw. You should see:
[mem9] Server mode (v1alpha2)
Compatibility note:
- Preferred config:
apiKey -> plugin uses v1alpha2 with X-API-Key.
- Legacy config:
tenantID -> plugin treats it as an alias for apiKey and still uses v1alpha2.
- OpenClaw 4.23+ / 2026.4.22+ requires
plugins.entries.mem9.hooks.allowConversationAccess = true so mem9 can read conversation messages in agent_end and upload them. Older OpenClaw builds that reject this hook policy should omit the hooks block and upgrade for full automatic conversation upload.
- The underlying value is the same UUID either way.
OpenCode
Set environment variables (add to shell profile or .env):
export MNEMO_API_URL="http://localhost:8080"
export MNEMO_TENANT_ID="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Add to opencode.json:
{
"plugin": ["mnemo-opencode"]
}
Restart OpenCode. You should see:
[mem9] Server mode (mnemo-server REST API)
Claude Code
Add to ~/.claude/settings.json:
{
"env": {
"MNEMO_API_URL": "http://localhost:8080",
"MNEMO_TENANT_ID": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}
}
Install plugin:
/plugin marketplace add mem9-ai/mem9
/plugin install mnemo-memory@mnemos
Restart Claude Code.
Verification
After setup, test memory:
- Ask your agent: "Remember that the project uses PostgreSQL 15"
- Start a new session
- Ask: "What database does this project use?"
The agent should recall the information from memory.
Troubleshooting
| Problem | Fix |
|---|
No MNEMO_API_URL configured | Set MNEMO_API_URL env var or apiUrl in plugin config |
MNEMO_TENANT_ID is not set | Set MNEMO_TENANT_ID for env-based clients, or use apiKey (preferred) / legacy tenantID in OpenClaw plugin config |
| Plugin not loading | Check platform-specific config format |