Skip to content

OpenClaw OB1 plugin is disabled when memory-core remains the active memory slot #385

Description

@AGHXX

Summary

The OpenClaw OB1 Agent Memory plugin currently declares itself as a memory-kind plugin. In a tools-only deployment where OpenClaw's native memory-core remains the configured memory slot, OpenClaw disables the OB1 plugin after gateway restart instead of registering the openbrain_* tools as a sidecar provider.

Expected

A deployment should be able to keep:

  • memory slot: memory-core
  • OB1 plugin enabled for tools-only access
  • openbrain_* tools registered and callable after gateway restart

This lets local memory remain primary while OB1 acts as a shared review-gated memory tool layer.

Actual

After gateway restart with memory-core selected, runtime inspection showed the OB1 plugin disabled:

enabled: false
status: disabled
activationReason: memory slot set to "memory-core"
toolCount: 0
toolNames: []

The fresh-turn agent tool list did not include openbrain_*, so openbrain_list_review_queue and openbrain_recall were not callable.

Root Cause

The plugin declares kind: "memory" in both the plugin manifest and plugin entry. OpenClaw treats memory-kind plugins as mutually exclusive with the configured memory slot, so OB1 is disabled whenever another memory provider remains active.

Proposed Fix

For the current OpenClaw integration, present OB1 as a tools-only plugin by removing the memory-kind declaration. If future OpenClaw support needs OB1 as an active memory provider, it may be cleaner to introduce an explicit dual-kind/sidecar model rather than overloading kind: "memory".

Related PR: #384

Validation From Local Deployment

After applying the source change locally and restarting OpenClaw:

  • memory slot stayed memory-core
  • OB1 runtime doctor reported active with 7 tools
  • native openbrain_list_review_queue({"project_id":"paperclip"}) was callable
  • native openbrain_recall with project_id=clubhouse returned Clubhouse-scoped memories

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions