Goal
- Stand up MemPalace as an isolated local external memory layer.
- Avoid polluting the main Python environment.
- Verify with a tiny corpus before wiring MCP.
Why this skill exists
- Hermes built-in memory is intentionally small and should only hold compact durable preferences/facts.
- Project-specific workflow state belongs in project docs/skills/session recall, not long-term memory.
- MemPalace is a better fit for searchable verbatim external memory, but setup has practical pitfalls.
Recommended approach
- Clone into a separate workspace.
- Create a dedicated venv.
- Install MemPalace inside that venv.
- Run a tiny trial corpus first.
- Only after search works, use the MCP server from the same venv.
Verified paths from a working setup
- Repo:
~/Downloads/external-memory/mempalace - Venv:
~/Downloads/external-memory/mempalace-venv - Trial notes dir:
~/Downloads/external-memory/mempalace-trial/notes - Verification log:
~/Downloads/external-memory/mempalace-verified.txt
Install
python3 -m venv ~/Downloads/external-memory/mempalace-venv
~/Downloads/external-memory/mempalace-venv/bin/python -m pip install --upgrade pip setuptools wheel
~/Downloads/external-memory/mempalace-venv/bin/python -m pip install --default-timeout=120 ~/Downloads/external-memory/mempalace
Minimal verification flow
VENV=~/Downloads/external-memory/mempalace-venv/bin
$VENV/mempalace init --yes ~/Downloads/external-memory/mempalace-trial/notes
$VENV/mempalace mine ~/Downloads/external-memory/mempalace-trial/notes
$VENV/mempalace search "PostgreSQL auth concurrent writes"
$VENV/mempalace status
Expected verification outcome
mineshould file drawers successfully.searchshould return the expected matching note first.statusshould show non-zero drawers.
MCP hookup
~/Downloads/external-memory/mempalace-venv/bin/python -m mempalace.mcp_server
Common pitfalls
- Do not install into the main environment if you care about dependency stability.
- In one real setup, non-isolated install upgraded
protobufand conflicted withstreamlit.
- In one real setup, non-isolated install upgraded
mempalace initis interactive by default.- Use
--yesfor non-interactive automation.
- Use
- First
minemay appear stalled because Chroma downloads the local ONNX embedding model.- Wait for
~/.cache/chroma/onnx_models/all-MiniLM-L6-v2/onnx.tar.gzto finish. - This can be slow and dominate setup time.
- Wait for
- Telemetry warnings like
capture() takes 1 positional argument but 3 were givenmay appear.- Treat as noisy but non-blocking if indexing/search still work.
- Default palace path used by CLI is typically
~/.mempalace/palace.
Decision rule
- Use Hermes built-in memory for compact long-term preferences.
- Use project docs/skills/session_search for project workflow guidance.
- Use MemPalace for large searchable verbatim external memory.