Skip to main content

Quick Start

Get the plugin running and test the memory loop in a few minutes.

  • OpenClaw >=2026.3.11 installed and running

You also need a delegate key, account ID, and relayer URL from Walrus Memory, the steps below guides you through getting these.

Install the plugin

openclaw plugins install @mysten-incubation/oc-memwal

Get your Walrus Memory credentials

The plugin needs three values to connect to Walrus Memory:

ValueWhat it is
Delegate KeyA private key (64-char hex) used to sign requests and encrypt memories
Account IDYour MemWalAccount object ID on Sui (0x...)
Relayer URLThe Walrus Memory relayer endpoint that handles search, storage, and encryption

The easiest way to get your delegate key and account ID is through the Walrus Memory dashboard. See the main Quick Start for detailed setup instructions.

For the relayer URL, use a managed endpoint or deploy your own:

EnvironmentRelayer URL
Production (Mainnet)https://relayer.memory.walrus.xyz
Staging (Testnet)https://relayer-staging.memory.walrus.xyz
info

These managed relayer endpoints are provided as a public good by Walrus Foundation.

Set your delegate key

Store your delegate key as an environment variable so it's never hardcoded in config files:

# Add to your shell profile (.zshrc, .bashrc, and so on. )
export MEMWAL_PRIVATE_KEY="your-64-char-hex-key"

Configure OpenClaw

Add the plugin config to ~/.openclaw/openclaw.json:

{
"plugins": {
"slots": { "memory": "oc-memwal" },
"entries": {
"oc-memwal": {
"enabled": true,
"config": {
"privateKey": "${MEMWAL_PRIVATE_KEY}", // References the env var
"accountId": "0x3247e3da...", // Your account ID from the dashboard
"serverUrl": "https://relayer-staging.memory.walrus.xyz" // Or your self-hosted relayer
}
}
}
}
}
Optional settings

You can add these to the config block to tune behavior. The defaults work well for most setups.

OptionDefaultDescription
autoRecalltrueInject relevant memories before each turn
autoCapturetrueExtract and store facts after each turn
maxRecallResults5Max memories to inject per turn
minRelevance0.3Relevance threshold (0-1) for memory injection
captureMaxMessages10How many recent messages to analyze for facts
defaultNamespace"default"Memory scope for the main agent

Start OpenClaw

openclaw gateway stop && openclaw gateway

You should see in the logs:

oc-memwal: registered (server: https://..., key: e21d...ed9b, namespace: default)
oc-memwal: connected (status: ok, version: ...)
tip

If you see health check failed, check that your relayer URL is reachable and your MEMWAL_PRIVATE_KEY env var is set.

Check connectivity

Run the stats command to confirm the plugin is connected:

$ openclaw memwal stats

This shows the relayer status, your key (masked), account ID, active namespace, and whether auto-recall/capture are enabled.

Test the memory loop

The core value of the plugin is the automatic recall/capture cycle. Test it end-to-end:

1. Store a fact, start a conversation and share something memorable:

You: I prefer TypeScript over JavaScript for backend work
Bot: (responds normally)

Check logs, you should see:

oc-memwal: auto-captured 1 facts (agent: main, namespace: default)

2. Recall it, in a new conversation, ask about it:

You: What programming languages do I like?

Check logs, you should see:

oc-memwal: auto-recall injected 1 memories (agent: main, namespace: default)

3. Search from terminal, confirm the memory exists through CLI:

$ openclaw memwal search "programming"

If all three steps work, the plugin is fully operational.

Enable LLM tools (optional)

By default, the plugin works entirely through hooks, the LLM doesn't know about memory tools. To give the LLM explicit control, add tools to your agent profile:

{
"tools": {
"allow": ["memory_search", "memory_store"]
}
}

Then the LLM can call memory_search and memory_store on its own when it decides to. This is a power-user feature, hooks handle the common case automatically.

Next steps

  • How It Works, understand the architecture, message flow, and hook mechanics
  • Reference, detailed breakdown of hooks, tools, CLI, and configuration