Skip to content

Plugin register() called multiple times per message (registration loop) #351

@GDXbsv

Description

@GDXbsv

Version: 1.1.0-beta.9

Describe the bug:
The register() lifecycle method is called multiple times per incoming message, not just once at gateway startup. In logs we see the plugin registering 3-8+ times within a single second:

memory-lancedb-pro@1.1.0-beta.9: plugin registered ... 21:12:38.378
memory-lancedb-pro@1.1.0-beta.9: plugin registered ... 21:12:38.554
memory-lancedb-pro@1.1.0-beta.9: plugin registered ... 21:12:38.723
memory-lancedb-pro@1.1.0-beta.9: plugin registered ... 21:12:38.899

This happens on every incoming message, not just on startup. The pattern suggests register() is being called once per agent on each request (we have multiple agents configured), rather than being a one-time initialization.

Expected behavior: register() should be called once at gateway startup.

Impact: Wastes CPU/memory, pollutes logs with repeated initialization messages. With multiple agents and high message volume this compounds.

Setup:

  • OpenClaw 2026.3.24
  • Multiple agents configured
  • plugins.slots.memory = memory-lancedb-pro
  • Local Ollama embedding (nomic-embed-text)
  • sessionStrategy: none (default)

Note: It may be a quirk of how OpenClaw 2026.3+ invokes register() per agent-context rather than globally. Worth checking if the issue is on the plugin or gateway side.

Metadata

Metadata

Assignees

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