Configure Memory Search

View as Markdown

Configure OpenClaw memory search to use an embedding model from a host Ollama container. This setup lets another local server, such as managed vLLM, continue to serve the chat model.

Prepare the Embedding Server

Before you continue, ensure that a host Ollama container is running on port 11434 and has the qwen3-embedding:4b model available. This procedure does not start the container or pull the model.

The sandbox reaches the container through http://host.openshell.internal:11434. Keep the container bound to the local host or a reviewed host interface. Port 11434 is commonly unauthenticated. Allow it only from the OpenShell Docker bridge or an equivalent local container network.

Permit the Bridge Route

The local-inference policy preset permits the sandbox to reach the host bridge. Apply the preset, then verify the Ollama API from the sandbox.

nemoclaw my-assistant policy add local-inference --yes
nemoclaw my-assistant exec -- curl -fsS http://host.openshell.internal:11434/api/tags

Continue only when the returned JSON models array contains an entry whose name is qwen3-embedding:4b.

Configure the Embedding Provider

Define an Ollama provider, select it for memory search, and restart OpenClaw.

nemoclaw my-assistant config set \
--key models.providers.ollama-mem \
--value '{"api":"ollama","baseUrl":"http://host.openshell.internal:11434","apiKey":"x","models":[{"id":"qwen3-embedding:4b","name":"Qwen3 embedding 4B"}]}' \
--config-accept-new-path
nemoclaw my-assistant config set \
--key agents.defaults.memorySearch.provider \
--value ollama-mem \
--config-accept-new-path \
--restart

The host-side config set command accepts the bridge URL only for supported provider baseUrl fields. Generic configuration keys and other private URL shapes remain rejected.

Rebuild and Verify the Index

An existing index can report an identity mismatch after its embedding provider changes. Inspect the index, rebuild it, and verify the configured memory provider.

nemoclaw my-assistant exec -- openclaw memory status --index
nemoclaw my-assistant exec -- openclaw memory index --force
nemoclaw my-assistant exec -- openclaw memory status --deep

Add --agent <id> to each openclaw memory command for a non-default OpenClaw agent.