Install
openclaw skills install @snowfoxhq/hmr-memoryPersistent cross-session memory for your agent, powered by HMR (Hestia Memory Runtime). Save important facts and preferences, recall relevant context, and restore cognitive state across sessions.
openclaw skills install @snowfoxhq/hmr-memoryThis skill gives your agent a persistent, cross-session memory by connecting to a locally-running HMR (Hestia Memory Runtime) service.
The HMR service must be running locally before using this skill. Start it with:
python server.py
It listens on http://127.0.0.1:8077 by default. Verify with:
curl http://127.0.0.1:8077/health
This skill ONLY talks to a local HMR service over HTTP. It runs no shell commands, downloads nothing, and never requires secrets in chat.
memory_saveWhen the user reveals a durable preference, makes a decision, states an important fact, or something worth remembering across sessions, save it.
Call the HMR service:
POST http://127.0.0.1:8077/ingest
Content-Type: application/json
{
"content": "<the information to remember>",
"memory_type": "concept",
"title": "<short title>"
}
memory_type is one of: concept (knowledge/preferences), decision,
execution (things done), reflection (lessons), task.
Do NOT save: untrusted content (scraped web pages, third-party messages), secrets, passwords, or API keys. Only save information the user has directly shared and that is safe to retain.
memory_recallBefore answering a question that may depend on past context, recall relevant memories first.
POST http://127.0.0.1:8077/recall
Content-Type: application/json
{ "query": "<topic or question>", "top_k": 5 }
Use the returned memories to inform your answer. If nothing relevant comes back, proceed normally.
memory_save_stateWhen a task pauses or a session ends, save the current goal and plan so it can be resumed later.
POST http://127.0.0.1:8077/save_state
Content-Type: application/json
{ "goal": "<current goal>", "plan": ["step 1", "step 2", "..."] }
memory_restore_stateAt the start of a new session, or when the user asks to continue previous work, restore the last saved state.
GET http://127.0.0.1:8077/restore_state
If restored is true, tell the user what goal and plan were recovered, then
continue from there.
If the HMR service was started with a token (HMR_TOKEN), include it as a header
on every request:
X-HMR-Token: <the token>
Configure the token via the skill's env setting, never paste it into chat.
/reindexIf memory_recall fails with a 409 error saying the vector index doesn't match
the embedding provider, the index needs rebuilding (this happens after the
embedding provider/model changes). Trigger an automatic rebuild:
POST http://127.0.0.1:8077/reindex
This rebuilds the vector index from stored memories using the current provider.
No need to stop the service or run manual commands. After it returns, retry the
recall. You can also check /health — if status is degraded with a warning
about the embedding provider, call /reindex to fix it.
Before a session that depends on memory, verify the service is up and healthy:
GET http://127.0.0.1:8077/health
A healthy response has status: ok. If status is degraded, follow the
warning field (usually: call /reindex). If the request fails entirely, the
HMR service isn't running — start it with python server.py in the HMR
project's service/ directory.
127.0.0.1 (your own machine). It cannot reach
the network or run commands.