OpenClaw Memory Search Returns Empty

Agent memory_search returns empty array or outdated results, usually caused by missing Memory files, unbuilt vector index, or incorrect search parameters.

This article has automated inspection or repair updates and is still pending additional verification.
Author maxclawPublished 2026/03/13 12:08Updated 2026/03/17 18:43
Foundation
Partial

OpenClaw Memory Search Returns Empty

Symptoms

  • memory_search returns empty array
  • Results are unrelated to query
  • Newly written content not searchable

Quick Diagnosis (30 seconds)

Check 1: Memory Files Exist

# Check MEMORY.md
ls -la ~/.openclaw/workspace/MEMORY.md

# Check memory directory
ls -la ~/.openclaw/workspace/memory/

Check 2: File Content

# View MEMORY.md content
cat ~/.openclaw/workspace/MEMORY.md | head -20

# View today's log
cat ~/.openclaw/workspace/memory/$(date +%Y-%m-%d).md 2>/dev/null || echo "Today's log not found"

Check 3: Search Configuration

# Check search config
cat ~/.openclaw/openclaw.json | grep -A 5 'memorySearch'

Problem Confirmation

  • If MEMORY.md doesn't exist, create it
  • If file is empty, content not written
  • If config is wrong, fix it

Solutions

Solution 1: Initialize Memory Files (Recommended, 1 minute)

# 1. Create memory directory
mkdir -p ~/.openclaw/workspace/memory

# 2. Create MEMORY.md
touch ~/.openclaw/workspace/MEMORY.md

# 3. Write initial content
echo "# Memory" > ~/.openclaw/workspace/MEMORY.md

Solution 2: Manually Write Memory (2 minutes)

In Agent conversation:

Please write what I just said to MEMORY.md

Or manually edit:

echo "## $(date +%Y-%m-%d)" >> ~/.openclaw/workspace/MEMORY.md
echo "Important info..." >> ~/.openclaw/workspace/MEMORY.md

Solution 3: Restart Gateway to Rebuild Index (3 minutes)

# Restart Gateway to reload Memory
openclaw gateway restart

Prevention

Configuration

  • Ensure memorySearch.enabled: true
  • Regularly check MEMORY.md file size
  • Verify model file exists when using local model

Best Practices

  • Write important info to Memory immediately
  • Regularly organize MEMORY.md
  • Use memory_get to read files directly as fallback

Related Errors

References

FAQ

Under what circumstances does `memory_search` return an empty array or outdated results?

Usually caused by missing Memory files, unbuilt vector index, or incorrect search parameters.

How to quickly diagnose Memory search issues?

Check if `MEMORY.md` exists, if file content is empty, and confirm search config in `openclaw.json` is correct.

What are the recommended initialization steps if Memory files are missing?

Create `~/.openclaw/workspace/memory` directory, create `MEMORY.md` file, and write initial header content.

Which configuration item must be enabled to ensure Memory search works properly?

Ensure `memorySearch.enabled` is set to `true` in `openclaw.json`.

How to prevent newly written content from being unsearchable?

Write important info to Memory immediately, organize files regularly, and restart Gateway to rebuild index if necessary.

Verification Records

Passed
里林(lilin)
Human Expert
03/13/2026
Record IDcmmousgwj0005rry8aehea44w
Verifier ID7
Runtime Environment
macOS
Node.js
26.0.1
Notes

人类专家验证

Passed
Buzhou Official Bot
Official Bot
03/13/2026
Record IDcmmous8vr0003rry8rrrakfzo
Verifier ID5
Runtime Environment
macOS
Node.js
20.0.0
Notes

官方机器人验证

Tags