Skip to content

Guide · Agent skill

How to use the Claude-Mem OpenClaw Plugin Setup agent skill

Updated · written with AI from the project's own documentation and checked against our catalogue data

The openclaw skill is a setup guide for installing the claude-mem memory plugin on an OpenClaw gateway, which is a server that runs AI agents. Once installed, agents record the tools they use, keep summaries of past sessions, and receive that history in their system prompt so they can pick up earlier work. This guide explains what the skill does, how to add it to Claude, how to ask for it, and how to check that the plugin is recording observations.

Claude-Mem OpenClaw Plugin Setupthedotmack/claude-mem · Apache-2.0

Quick start

  1. 1Get the skill. Download the openclaw skill ZIP from this page and unzip it into ~/.claude/skills/ or a project's .claude/skills/ folder. In the Claude apps, you can instead upload it under Settings → Capabilities → Skills.
  2. 2Make sure the prerequisites are present. Confirm you have an OpenClaw gateway, Bun, uv, Node.js with npm, Git, and an AI provider key if you plan to use one.
  3. 3Install the plugin. Run the quick installer or follow the manual steps to clone the claude-mem repo, build it, and start the worker.
  4. 4Add the plugin config. Add the claude-mem entry under plugins in your gateway configuration, setting a unique project name for this gateway.
  5. 5Restart and verify. Restart the gateway, check the logs for the plugin loaded line, run /claude_mem_status, and confirm observations appear at http://localhost:37777.
  6. 6Optional: set up the feed. Choose a channel type that your gateway already runs, find the target ID, and add the observationFeed block.

What does the openclaw skill make the agent do?

The skill walks you through setting up the claude-mem plugin on an OpenClaw gateway. When the setup is finished, your agents keep persistent memory across sessions through system prompt context injection. You can also turn on an optional real-time observation feed that streams new observations to a messaging channel.

The plugin works through four OpenClaw events: before_agent_start starts a claude-mem session, before_prompt_build injects the observation timeline into the system prompt (cached for 60 seconds), after_tool_call records each tool use such as Read, Write or Bash as an observation, and agent_end summarises the session and marks it complete.

What you need before you start

The setup assumes you already run an OpenClaw gateway. The plugin only targets that runtime, so it does nothing for Claude Code users who have no gateway. The installer and manual steps also expect the following tools on the machine.

  • An OpenClaw gateway
  • Bun, which the worker service uses (the installer checks for it)
  • uv
  • Node.js and npm, used to build the cloned claude-mem repo
  • Git
  • An AI provider API key if you pick a provider such as Gemini
  • Optionally, a messaging channel for the observation feed

How do you install the openclaw skill?

Download the skill ZIP from this page and unzip it. For a personal setup, place the folder in ~/.claude/skills/. For a single project, place it in that project's .claude/skills/ folder. Claude Code will then find the skill.

If you use the Claude apps, you can upload the ZIP instead. Open Settings, go to Capabilities, then Skills, and upload the file there.

  • Personal install: ~/.claude/skills/
  • Project install: .claude/skills/ inside the project folder
  • Claude apps: Settings → Capabilities → Skills

How do you install the claude-mem plugin on your gateway?

The skill points you to a one-line installer that handles dependency checks, plugin installation, memory slot configuration, AI provider setup, worker startup and the optional observation feed. It runs interactively unless you pass options. Only run the quick install if your environment allows piping a remote script into bash.

If you prefer to do it by hand, clone the claude-mem repository to a location your gateway can reach, run npm install and npm run build inside it, and then start the worker. Finally, add a claude-mem entry under plugins in your gateway configuration.

  • Pre-select a provider and key with --provider=gemini --api-key=YOUR_KEY
  • Skip prompts with --non-interactive (defaults to the Claude Max Plan and skips the observation feed)
  • Upgrade an existing install, keeping settings, with --upgrade
curl -fsSL https://install.cmem.ai/openclaw.sh | bash

How do you start the worker and check it is running?

The claude-mem worker is an HTTP service on port 37777. The plugin talks to it over HTTP, so it only needs to be reachable on localhost:37777. Check whether it is already running with the health endpoint. A response of {"status":"ok"} means it is up.

If Claude Code already has claude-mem installed, restart the worker from that installation. Otherwise, start it from your cloned repo. If the health check still fails, confirm bun is on your PATH, check npm run worker:status, and check whether another process is using port 37777 with lsof -i :37777.

  • If you use Claude Code with claude-mem: cd ~/.claude/plugins/marketplaces/thedotmack then npm run worker:restart
  • If you use the cloned repo: cd into it, then npm run worker:start
  • Debug with npm run worker:status and npm run worker:logs (if available)
curl http://localhost:37777/api/health

How do you configure the plugin and verify it works?

Add the claude-mem plugin to your gateway configuration. The project field scopes observations in the memory database, so use a different name for each gateway or use case, such as coding-bot. syncMemoryFile controls whether the timeline is injected into system prompts. Set it to false to stop injection while still recording observations. Restart the gateway, then check the logs for a line starting with [claude-mem] OpenClaw plugin loaded. You can also run /claude_mem_status in any OpenClaw chat. A feed status of disconnected is expected until you configure the observation feed.

To confirm recording, run an agent task and then open the worker viewer at http://localhost:37777 to see observations appear.

  • project (default openclaw): scopes observations; use a unique name per gateway
  • syncMemoryFile (default true): injects the timeline into system prompts
  • syncMemoryFileExclude (default empty list): agent IDs that skip injection but are still recorded
  • workerPort (default 37777): change only if you moved the worker
{"plugins":{"claude-mem":{"enabled":true,"config":{"project":"my-project","syncMemoryFile":true,"workerPort":37777}}}}

How do you ask an agent to use the skill?

Describe the task in plain language. Claude matches the request to the skill's description, so you do not need special syntax. The phrasings below are examples of the kind of request this skill covers, not a fixed list of trigger words.

Be specific about your gateway and channel. For instance, say which chat app you want the feed in, or whether the worker is already running on the machine.

  • Set up claude-mem memory on my OpenClaw gateway
  • Check whether the claude-mem worker on localhost:37777 is responding
  • Walk me through adding a Telegram observation feed to my gateway
  • My claude-mem worker is not starting, help me debug it
  • Turn off context injection for the agent named reviewer

What are the safety notes for this skill?

This skill runs scripts and uses the network. The quick install downloads a script from install.cmem.ai and runs it with bash in one step. Read the script first if you want to inspect it, or use the manual route. The manual route clones a public GitHub repo and runs npm commands.

Be aware that tool uses are recorded as observations by default. If agent activity is sensitive, set syncMemoryFile to false or leave the observation feed off. The observation feed sends observation text to whichever chat channel you configure, so check who can read that channel.

The skill folder also includes a skills/agent-cost-report folder with Python scripts and a CHECKSUMS.txt file listing hashes for those files. Use it to check that the files are unchanged before you run anything.

  • Quick install pipes a remote script into bash
  • Observations are stored by default for every tool use
  • Feed messages go to the chat channel you set, so check its members
  • Verify bundled files against CHECKSUMS.txt

What tips help the setup go smoothly?

Use a unique project name for each gateway so memories do not mix. Run the health check before editing config, which tells you whether the worker is the problem or the plugin is. For the observation feed, find your chat ID first. In Telegram, group IDs are negative numbers. In Discord, enable Developer Mode to copy a channel ID. The feed only works for channel types that already run as plugins on your gateway. The repo's TESTING.md describes a Docker-based end-to-end test and a unit test suite if you want to check the plugin yourself.

  • Check the health endpoint before changing config
  • Give each gateway its own project name
  • Telegram group chat IDs are negative numbers
  • Discord: Settings → Advanced → Developer Mode, then right-click the channel and copy its ID

What people use it for

  • Giving a coding bot memory of earlier sessions so it can continue work it began yesterday
  • Keeping a live Telegram, Discord or Slack log of what an agent changes, such as retry logic added to an API client
  • Debugging a claude-mem worker that will not respond on port 37777 on a shared gateway
  • Keeping one agent's memory out of the system prompt by listing its ID in syncMemoryFileExclude while still recording its work

Frequently asked questions

How do I install the openclaw skill?

Download the ZIP from this page and unzip it into ~/.claude/skills/ for personal use or a project's .claude/skills/ folder. In the Claude apps, you can upload the ZIP under Settings → Capabilities → Skills.

Is claude-mem OpenClaw plugin free?

The repository is licensed under Apache-2.0. The source does not give pricing for the plugin itself. If you choose an AI provider such as Gemini, you will need that provider's API key.

What do I need to run the claude-mem OpenClaw plugin?

You need an OpenClaw gateway, Bun, uv, Node.js and npm, Git, and optionally an AI provider API key and a messaging channel for the observation feed. The plugin only works on an OpenClaw gateway.

Why is my claude-mem worker not responding on port 37777?

Run curl http://localhost:37777/api/health to check it. If it fails, confirm bun is installed and on your PATH, run npm run worker:status, and check whether another process is using the port with lsof -i :37777.

Does the claude-mem OpenClaw plugin record everything my agents do?

By default, each tool use such as Read, Write or Bash is recorded as an observation. To keep recording but stop injecting history into prompts, set syncMemoryFile to false. Agents listed in syncMemoryFileExclude are still recorded.

How is this different from using claude-mem with Claude Code?

This guide targets an OpenClaw gateway that runs agents, and the plugin only targets that runtime. The source also covers reusing an existing Claude Code claude-mem installation to run the worker, so the two can share a worker.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

This skill suits operators who already run OpenClaw agents and want memory across sessions, or developers debugging a claude-mem worker on a gateway. Skip it if you do not run an OpenClaw gateway, do not want tool activity recorded, or cannot run a remote install script.

Download the skill