How to Check OpenClaw Memory in MyD1
Check OpenClaw Memory in MyD1
Open your OpenClaw memory database directly in MyD1. Browse conversations, inspect embeddings, and query the knowledge store — all from a native GUI.
Your AI agent remembers everything it has ever learned — but without a proper tool, you will never see what is inside that database.
TL;DR
- Local macOS/Linux: open
openclaw/memory/main.sqlitedirectly in MyD1 - Remote server: use MyD1's SSH bridge to connect securely — no file copying needed
- Once connected: browse tables, run SQL, export data, or let MyD1's AI Agent write queries for you
What is OpenClaw's memory database?
OpenClaw stores its memory — conversations, context, embeddings, and metadata — in a SQLite database located at openclaw/memory/main.sqlite relative to the OpenClaw installation directory. This file contains everything the agent has learned and remembered across sessions.
With MyD1, you can open this database directly and browse its tables, run SQL queries, export data, and understand exactly what your agent remembers. No terminal required.
Per-platform instructions
- Open MyD1 and click New Connection
- Select SQLite as the database engine
- Click Browse and navigate to your OpenClaw installation directory
- Select the file at
openclaw/memory/main.sqlite - Click Connect — you will see all tables immediately
# Typical path on macOS
~/openclaw/memory/main.sqlite
# Or if installed via Homebrew
/usr/local/share/openclaw/memory/main.sqlite
Tip: You can also drag and drop the .sqlite file directly onto the MyD1 window to open it instantly.
- Locate your OpenClaw memory database on the Linux machine
- If running MyD1 on the same machine, use the local SQLite connection (same steps as macOS)
- If accessing from a remote Mac, use the SSH bridge method described below
# Common paths on Linux
~/openclaw/memory/main.sqlite
/home/<user>/openclaw/memory/main.sqlite
# Check if the file exists
ls -la ~/openclaw/memory/main.sqlite
SSH bridge — read a remote SQLite database securely
If your OpenClaw instance runs on a remote server — for example an Ubuntu VPS — you do not need to copy the database file. MyD1's SSH tunnel support lets you connect securely to the remote machine and read the SQLite file directly, fully encrypted over SSH.
Step-by-step: Ubuntu server
- Open MyD1 and click New Connection
- Select SQLite as the database engine
- Enable SSH Tunnel in the connection form
- Enter your server details:
# SSH connection Host: your-server.example.com Port: 22 Username: ubuntu Auth: SSH Key (recommended) or Password # Database path on the remote server File: /home/ubuntu/openclaw/memory/main.sqlite - If using SSH key auth, MyD1 auto-detects keys in
~/.ssh/— select your key or let it use the defaultid_rsa/id_ed25519 - Click Connect — MyD1 establishes the SSH tunnel and opens the remote database as if it were local
The connection is fully encrypted end-to-end. Your database contents never leave the SSH tunnel. No ports need to be opened on the server beyond SSH (port 22).
Example: hardened Ubuntu setup
# On your Ubuntu server — lock down SSH
sudo ufw allow 22/tcp
sudo ufw enable
# Ensure key-only auth (disable password login)
sudo sed -i 's/PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
# Make sure the OpenClaw user can read the database
chmod 644 /home/ubuntu/openclaw/memory/main.sqlite
If the SQLite file is actively being written to by OpenClaw, consider connecting in read-only mode or stopping the OpenClaw process first to avoid WAL conflicts.
What you can do once connected
With the memory database open in MyD1, you get the full toolkit:
- Browse tables — see conversations, memory entries, embeddings, and metadata at a glance
- Run SQL queries — search memory by keyword, filter by date, count entries
- Export data — dump the full memory to CSV, SQL, or TSV for analysis
- Schema inspection — see column types, constraints, and indexes
- AI Agent — ask questions about the memory schema in plain English and MyD1's AI Agent writes the SQL for you
-- Example: find the 10 most recent memory entries
SELECT * FROM memory
ORDER BY created_at DESC
LIMIT 10;
-- Example: count entries by type
SELECT type, COUNT(*) AS total
FROM memory
GROUP BY type
ORDER BY total DESC;