You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This PR fixes two integration issues in the MemOS local OpenClaw plugin:
Register an OpenClaw memory runtime adapter so host status probes can read plugin health correctly
Gate viewer service registration and self-start logic to real gateway processes only
Problem
The plugin could still read and write memory correctly, but openclaw status reported memory as unavailable.
At the same time, CLI processes such as openclaw status could accidentally trigger the plugin's viewer self-start fallback, which caused extra viewer instances to be spawned and fallback ports to be consumed.
Changes
add registerMemoryRuntime(...) so OpenClaw can query memory status through the standard runtime interface
expose plugin-backed memory status details such as files, chunks, sources, and vector readiness
restrict viewer service registration to actual gateway processes
prevent non-gateway CLI runs from triggering viewer self-start
keep the fix limited to plugin code only
Result
After this change:
openclaw status reports normal memory status instead of unavailable
memory status can show values such as files, chunks, sources sessions, and vector ready
CLI commands no longer spawn extra viewer instances
the memory viewer lifecycle stays bound to the gateway process as expected
Notes
This PR does not include any local machine config workarounds or user-specific environment changes.
It only addresses the plugin-side integration and lifecycle issues.
Validation
Validated locally by confirming that:
memory read/write was still working before and after the fix
openclaw status no longer reported unavailable
status output showed plugin-backed memory health information
non-gateway CLI commands no longer created additional viewer listeners
Multiple window instances — already fixed in our latest release, so this part isn't needed anymore.
openclaw status still shows unavailable — tested on the latest OpenClaw and this PR doesn't resolve it. The issue is actually upstream: the status scan gates on either /.openclaw/memory/main.sqlite existing or an explicit agents.defaults.memorySearch key being present in config — before it ever reaches the plugin runtime. Since MemOS Local uses its own DB path (/.openclaw/memos-local/memos.db), both checks fail and the scan exits early. The registerMemoryRuntime call added here never gets invoked. We'll handle the fix on the plugin side.
Really appreciate you digging into this! 🙌 Love seeing the initiative and the ideas you're bringing—please keep them coming and feel free to continue contributing!
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR fixes two integration issues in the MemOS local OpenClaw plugin:
Problem
The plugin could still read and write memory correctly, but
openclaw statusreported memory asunavailable.At the same time, CLI processes such as
openclaw statuscould accidentally trigger the plugin's viewer self-start fallback, which caused extra viewer instances to be spawned and fallback ports to be consumed.Changes
registerMemoryRuntime(...)so OpenClaw can query memory status through the standard runtime interfaceResult
After this change:
openclaw statusreports normal memory status instead ofunavailablefiles,chunks,sources sessions, andvector readyNotes
This PR does not include any local machine config workarounds or user-specific environment changes.
It only addresses the plugin-side integration and lifecycle issues.
Validation
Validated locally by confirming that:
openclaw statusno longer reportedunavailable