Skip to main content

Supermemory Overview

Supermemory is Intern's long-term memory layer. Every device uses your own Supermemory API key plus a container tag you choose — both are written into /root/config/config.json by hand. The key + container tag are what let the openclaw-supermemory plugin read and write memories on behalf of that specific device, and what keep one Intern's memories isolated from the next.

Supermemory itself is not a service on the device. There's no supermemory.service, no local container, no extra port — the OpenClaw plugin just calls the Supermemory API over HTTPS using the key you provide.

Where it runs

┌─ Intern device ─────────────────┐ ┌─ api.supermemory.ai ─────┐
│ │ │ │
│ openclaw.service │ │ (read/write memories) │
│ └─ openclaw-supermemory plugin │ ──────▶ │ │
│ reads/writes via HTTPS │ ◀────── │ scoped by │
│ │ │ container_tag │
│ config.json │ │ │
│ └─ supermemory_api_key │ │ │
│ └─ supermemory_container_tag │ │ │
└──────────────────────────────────┘ └──────────────────────────┘

Setup flow

Requires Intern OS 2.0.20 or later for the intern-serveropenclaw.json sync to pick up the keys.

You provision Supermemory on a device with three things: a Supermemory account, a container tag of your choice, and an SSH session into the device.

  1. Sign up at supermemory.ai and create an API key.
  2. Pick a container_tag — any string that uniquely identifies this device (e.g. intern-livingroom-01, dev-alex-pi-3). Memories under the same tag are pooled; different tags are isolated.
  3. SSH into the device and write both values into /root/config/config.json:
    {
    "supermemory_api_key": "sm-...",
    "supermemory_container_tag": "intern-livingroom-01"
    }
  4. Restart intern-server so it injects the keys into /root/.openclaw/openclaw.json under plugins.entries.openclaw-supermemory.config, then restart OpenClaw:
    sudo systemctl restart intern
    sudo systemctl restart openclaw
  5. On the next /ping heartbeat, the device flips supermemory_installed to true.

If the keys are missing or the plugin can't reach api.supermemory.ai, supermemory_installed stays false. See Troubleshooting.

When you should care

Most users never interact with Supermemory after the initial setup. You do need to come back to it when:

  • The device reports supermemory_installed: false — see Troubleshooting.
  • You're moving a device to a new owner and want a fresh memory namespace — rotate the container_tag.
  • You're auditing what's stored — query the Supermemory API directly with the device's supermemory_api_key.