Skip to content

Bug: active-memory still allowlists memory_search/memory_get, incompatible with bundled memory-lancedb tool surface #73502

Description

Summary

active-memory appears to still allowlist the legacy memory tool names memory_search / memory_get, while the bundled memory-lancedb backend exposes memory_recall / memory_store / memory_forget.

In practice this makes bundled active-memory incompatible with bundled memory-lancedb unless the installed code is patched locally.

This looks like an OpenClaw integration bug between two bundled plugins, not a third-party plugin issue.

Environment

  • OpenClaw: 2026.4.25
  • Install: npm/global install on Linux x64
  • Active memory plugin: bundled active-memory
  • Memory backend: bundled memory-lancedb

Observed behavior

With memory-lancedb configured as the memory backend, active-memory fails its recall path because it appears to request or allowlist the stale tool names:

  • memory_search
  • memory_get

But the actual tool surface available from the LanceDB backend is:

  • memory_recall
  • memory_store
  • memory_forget

A local patch replacing:

["memory_search", "memory_get"]

with:

["memory_recall"]

in:

/home/ubuntu/.npm-global/lib/node_modules/openclaw/dist/extensions/active-memory/index.js

was required to make the integration line up.

Expected behavior

If active-memory is intended to work with bundled memory-lancedb, it should use the current memory runtime/tool contract exposed by that backend, rather than stale legacy tool names.

At minimum, bundled plugins should not ship with incompatible built-in defaults.

Why this seems like a core bug

Both sides are bundled OpenClaw components:

  • bundled active-memory
  • bundled memory-lancedb

So if one ships expecting memory_search / memory_get and the other ships exposing memory_recall, that is an upstream integration regression/drift inside OpenClaw.

Related symptoms

This may also explain or contribute to:

  • active-memory recall failures
  • timeouts/skips in the recall path
  • confusing diagnosis when memory-lancedb itself is otherwise functional

Reproduction steps

  1. Install OpenClaw 2026.4.25
  2. Configure memory-lancedb as the active memory backend
  3. Enable bundled active-memory
  4. Start the gateway and trigger a conversation where active-memory should perform recall
  5. Observe that the active-memory path appears to rely on stale legacy memory tool names rather than the current LanceDB tool surface

Suggested fix

Audit the bundled active-memory integration against the current memory runtime contract used by bundled memory-lancedb, and update the allowlist/tool selection accordingly.

It would also be worth checking for any other stale references to:

  • memory_search
  • memory_get

inside the bundled active-memory pipeline.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    Priority

    None yet

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions