OpenClaw
OpenClaw should use pre-turn recall and post-turn async writeback with scoped identity. Handoffs should be explicit summaries with allowed memory references, not transcript inheritance.
Registry contract
This section is generated from integrations/agent_integrations.registry.json. Edit the registry or generator, not this block.
| Field | Value |
|---|---|
| Integration ID | openclaw |
| Label | OpenClaw |
| Tier | native_lifecycle_provider |
| Setup mode | plugin |
| Agent ID | openclaw |
| App ID | openclaw |
| Source app / actor | source_app=openclaw, agent_id=openclaw; key metadata wins over request body hints |
| Default scope | own |
| Config paths | ~/.openclaw/openclaw.json, ~/.openclaw/.env |
| Capabilities | memory.read, memory.write, memory.recall, memory.delete, agent.context, agent.writeback, mesh.read, evidence.read, courtroom.read, canary.read |
| Supported tools | um_store, um_search, um_forget, um_profile, um_courtroom, unifiedmemory_store, unifiedmemory_search, unifiedmemory_profile |
Capture policy
before_prompt_build injects governed recall; agent_end capture writes through writeback admission with loop-prevention metadata.
Install command(s)
openclaw plugins install ./integrations/openclaw-unifiedmemory --link
openclaw unifiedmemory setup --write --api-url "{{API_V1_BASE_URL}}" --api-key-env UNIFIEDMEMORY_OPENCLAW_API_KEY --container-tag "{{CONTAINER_TAG}}" --long-term-container "{{CONTAINER_TAG}}" --session-container "{{CONTAINER_TAG}}" --recall-scope long-term --request-timeout-ms 30000
Verify command(s)
openclaw config validate
openclaw plugins doctor
openclaw plugins inspect openclaw-unifiedmemory --runtime --json
openclaw unifiedmemory status
openclaw unifiedmemory search --query "UnifiedMemory setup" --limit 3
Environment
{
"UNIFIEDMEMORY_OPENCLAW_AGENT_SCOPE": "own",
"UNIFIEDMEMORY_OPENCLAW_API_KEY": "{{KEY_ENV_REF}}",
"UNIFIEDMEMORY_OPENCLAW_API_URL": "{{API_V1_BASE_URL}}",
"UNIFIEDMEMORY_OPENCLAW_AUTO_CAPTURE": "true",
"UNIFIEDMEMORY_OPENCLAW_AUTO_RECALL": "true",
"UNIFIEDMEMORY_OPENCLAW_CONTAINER": "{{CONTAINER_TAG}}",
"UNIFIEDMEMORY_OPENCLAW_LONG_TERM_CONTAINER": "{{CONTAINER_TAG}}",
"UNIFIEDMEMORY_OPENCLAW_RECALL_SCOPE": "long-term",
"UNIFIEDMEMORY_OPENCLAW_SESSION_CONTAINER": "{{CONTAINER_TAG}}"
}
Risk notes
- Do not set plugins.slots.memory to openclaw-unifiedmemory.
- Use the same canonical workspace for session and long-term containers unless an admin explicitly grants a separate project workspace.
Official upstream docs
https://docs.openclaw.ai/plugins/hooks
Scope and capabilities
| Setting | Value |
|---|---|
| Source app | openclaw |
| Default container | jeethendra |
| Default scope | own |
| Key env var | UNIFIEDMEMORY_OPENCLAW_API_KEY |
Install
openclaw plugins install ./integrations/openclaw-unifiedmemory --link
openclaw unifiedmemory setup --write \
--api-url "https://edge-api.jithendranara.dev/api/v1" \
--api-key-env UNIFIEDMEMORY_OPENCLAW_API_KEY \
--container-tag "jeethendra" \
--long-term-container "jeethendra" \
--session-container "jeethendra" \
--recall-scope long-term \
--request-timeout-ms 30000
Verify
Use the plugin verification command from the setup output. It should check the selected scoped key, not an owner browser session.
Expected proof:
- recall returns own memory and shared canonical owner facts;
- writeback can save a disposable outcome;
- forget/delete works only where advertised by key capabilities;
- Courtroom read works;
- cross-agent private memory does not leak.
Handoff rules
OpenClaw-to-agent handoffs should include:
handoff_from;handoff_to;- a short summary;
- explicit allowed memory references.
Do not pass entire transcripts as inherited memory.