-
-
Notifications
You must be signed in to change notification settings - Fork 52.6k
Closed
Description
Bug
openclaw doctor warns about missing local model file even when local memory search is working correctly with the default auto-resolved model.
Steps to reproduce
- Configure memory search with
provider: "local"and no explicitlocal.modelPath - Run
openclaw doctor - Doctor warns: "Memory search provider is set to "local" but no local model file was found."
- But
openclaw memory status --deepshows everything working:- Provider: local
- Model:
hf:ggml-org/embeddinggemma-300m-qat-q8_0-GGUF/embeddinggemma-300m-qat-Q8_0.gguf - Embeddings: ready
- 48/48 files indexed, 212 chunks
Root cause
In the doctor check, hasLocalEmbeddings(resolved.local) only inspects local.modelPath from config:
function hasLocalEmbeddings(local) {
const modelPath = local.modelPath?.trim();
if (!modelPath) return false;
// ...
}When local is {} (no explicit modelPath), it returns false immediately. But the runtime auto-resolves a default HuggingFace model (embeddinggemma-300m) and works fine.
Expected behavior
Doctor should either:
- Check the runtime-resolved model (same logic the memory search system uses), or
- Skip the warning when the default model would be auto-resolved
Workaround
Explicitly set the model path in config:
openclaw config set agents.defaults.memorySearch.local.modelPath "hf:ggml-org/embeddinggemma-300m-qat-q8_0-GGUF/embeddinggemma-300m-qat-Q8_0.gguf"
Environment
- OpenClaw 2026.3.1 (2a8ac97)
- macOS (Apple Silicon)
- node-llama-cpp with Metal GPU
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels