Skip to content

doctor: false positive 'no local model file found' for memory search #28944

@stevecoffee

Description

@stevecoffee

Description

openclaw doctor reports a false positive for the memory search check when using the local provider with node-llama-cpp.

Steps to reproduce

  1. Set up local memory search with node-llama-cpp (provider: local)
  2. Download a GGUF embedding model (e.g., embeddinggemma-300m-qat-Q8_0.gguf)
  3. Verify it works: openclaw memory status --deep shows "Embeddings: ready"
  4. Run openclaw doctor --non-interactive

Expected

Doctor should detect the working local model and report memory search as healthy.

Actual

Doctor reports:

Memory search provider is set to "local" but no local model file was found.

Fix (pick one):
- Install node-llama-cpp and set a local model path in config
- Switch to a remote provider: openclaw config set agents.defaults.memorySearch.provider openai

Meanwhile openclaw memory status --deep confirms everything is working:

Provider: local (requested: local)
Model: hf:ggml-org/embeddinggemma-300m-qat-q8_0-GGUF/embeddinggemma-300m-qat-Q8_0.gguf
Embeddings: ready
Indexed: 197/257 files · 2595 chunks
Embedding cache: enabled (7641 entries)

Root cause (likely)

Doctor appears to look for a model path in openclaw.json config rather than checking where node-llama-cpp actually stores downloaded models (~/.node-llama-cpp/models/). The config only has "provider": "local" without an explicit model path, but node-llama-cpp resolves the model from its own cache at runtime.

Environment

  • OpenClaw: v2026.2.25
  • Platform: Linux x86_64 (Ubuntu 24.04)
  • node-llama-cpp models dir: ~/.node-llama-cpp/models/

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions