Skip to content
Data
Skill

/setup

Use when Mem9 needs to be initialized, repaired, or checked in this Claude Code environment.

From plugin
mem9
1.2k5 skills

Claude Code

$ npx -y skills add mem9-ai/mem9 --skill setup --agent claude-code

SKILL.md

setup.SKILL.md
description: Use when Mem9 needs to be initialized, repaired, or checked in this Claude Code environment.
context: fork
allowed-tools:
  - Bash
  - Read
  - Edit
disable-model-invocation: true

Mem9 Setup

Use this skill when the user asks to set up Mem9, diagnose why memory is not working, or manually retry initialization.

What to check

1. Verify `node` is installed and version `>= 18`. 2. Verify `${CLAUDE_PLUGIN_DATA}` is available. 3. Check `${CLAUDE_PLUGIN_DATA}/auth.json`.

If auth already exists

  • Tell the user Mem9 is already initialized.
  • Show the auth file path.
  • Do not print the file contents or the API key.

If auth is missing

Provision an API key and write `${CLAUDE_PLUGIN_DATA}/auth.json`:

set -euo pipefail

plugin_data_dir="${CLAUDE_PLUGIN_DATA}"
test -n "$plugin_data_dir"
node -e 'process.exit(Number(process.versions.node.split(".")[0]) >= 18 ? 0 : 1)'
plugin_version="unknown"
if [ -n "${CLAUDE_PLUGIN_ROOT:-}" ] && [ -f "${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json" ]; then
  plugin_version="$(node -e 'const fs=require("node:fs"); const data=JSON.parse(fs.readFileSync(process.argv[1],"utf8")); process.stdout.write(data.version || "unknown");' "${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json")"
fi

response="$(curl -sf --max-time 8 -X POST \
  -H "User-Agent: mem9-plugin/claude-code/${plugin_version}" \
  https://api.mem9.ai/v1alpha1/mem9s)"
api_key="$(printf '%s' "$response" | node -e 'const fs=require("node:fs"); const data=JSON.parse(fs.readFileSync(0,"utf8")); process.stdout.write(data.id || "");')"
test -n "$api_key"

auth_file="${plugin_data_dir}/auth.json"
mkdir -p "$(dirname "$auth_file")"
node -e 'const fs=require("node:fs"); const authPath=process.argv[1]; const apiKey=process.argv[2]; const payload={base_url:"https://api.mem9.ai",api_key:apiKey,created_at:new Date().toISOString(),source:"manual_setup_skill"}; fs.writeFileSync(authPath, JSON.stringify(payload, null, 2) + "\n");' "$auth_file" "$api_key"

If setup cannot complete

  • If Node is missing, tell the user to install `Node.js 18+`.
  • If `${CLAUDE_PLUGIN_DATA}` is missing, tell the user this skill must run from the Mem9 Claude plugin environment.
  • If provisioning fails, tell the user Mem9 server could not be reached.
  • Never print or quote the API key in the reply.
Read more
@mem9-ai
Ships withmem9

Unlimited memory for OpenClaw

Stars on GitHub

Momentum

stars in total
1.2k
Star history of mem9-ai/mem9 on GitHub, a chart by star-history.com

Other skills on mem9.

recall

recall

Use when the current request needs relevant memories from Mem9.

@mem9-ai@mem9-aiInstall Skill
store

store

Use when the user explicitly asks Claude to remember one fact, preference, or instruction in Mem9.

@mem9-ai@mem9-aiInstall Skill
cleanup

cleanup

Remove mem9-managed Codex files before reinstalling, resetting, or uninstalling mem9.

@mem9-ai@mem9-aiInstall Skill
mnemos-setup

mnemos-setup

Setup mnemos persistent memory with mnemo-server. Triggers: "set up mnemos", "install mnemo plugin", "configure memory plugin",…

@mem9-ai@mem9-aiInstall Skill

More skills from other plugins.

context-loader
Auto-invoked

context-loader

Search memories from earlier Pi sessions in this repository. Use it when earlier work may already explain the code, error,…

mem04d69k
@mem0ai@mem0aiInstall Skill
analyzing-ai-citations

analyzing-ai-citations

Answer AI citation and answer engine optimization (AEO) questions in PostHog: whether AI answer engines (ChatGPT, Claude, and an…

posthog11d41k
@posthog@posthogInstall Skill

Questions about setup.

Which coding agents can use setup?
setup installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.