Install
openclaw skills install echomemGuide users through installing, configuring, using, and troubleshooting the EchoMemory Cloud OpenClaw Plugin. Use for plugin setup, local email OTP onboarding, manual API key fallback, local mode vs cloud mode switching, local UI startup, gateway restart checks, localhost viewer issues, normal /echo-memory command usage, and natural-language routing to current EchoMemory plugin functions.
openclaw skills install echomemUse this skill when the user is setting up, using, or debugging the EchoMemory OpenClaw plugin.
Also use it for normal EchoMemory usage requests after setup, especially when the user asks in plain language instead of naming the exact command.
Prefer the plugin's current runtime behavior over old repo habits:
openclaw gateway startuplocalUiAutoOpenOnGatewayStart defaults to truePlugin updates section in the local UI sidebar for version checks, release links, update actions, and gateway restartPlugin updates section now appears at the bottom of the setup sidebar, below ConfigurationOpenClaw Smart ClustersImportant install-source distinction:
~/.openclaw/node_modules; on newer OpenClaw versions the active runtime may come from ~/.openclaw/extensionsThis plugin works best when the user understands the difference between the OpenClaw workspace layout, the local UI surface, and the cloud sync surface.
Typical OpenClaw memory files:
~/.openclaw/
workspace/
MEMORY.md
memory/
2026-03-17.md
2026-03-16.md
topics/
private/
Recommended mental model:
workspace/MEMORY.md: curated long-term memory and durable notes worth keeping visibleworkspace/memory/YYYY-MM-DD.md: daily logs and session-by-session memory captureworkspace/memory/topics/ or similar subfolders: topic-specific markdown files for local browsing and organizationworkspace/memory/private/: local private notes that may appear in the local UI scan path and should be reviewed carefully before assuming they belong in cloud syncImportant behavior difference:
.md files from the configured memoryDirThat means a user can see a file in the local UI without that file necessarily being included in cloud sync.
Use this flow when the user has not installed the plugin yet.
Official references:
https://openclawdir.com/plugins/echomemory-ArQh3ghttps://www.npmjs.com/package/@echomem/openclaw-memoryhttps://github.com/Atlas-Graph-Academy/EchoMemory-Cloud-OpenClaw-PluginOpenClaw version note:
2026.3.22+, native openclaw skills install exists for skills, but plugin source precedence also changed--link, or the exact scoped npm packageopenclaw plugins install <name> for EchoMemory because newer OpenClaw versions may resolve bare names through ClawHub first@echomem/openclaw-memory, but the runtime plugin id for config and uninstall remains echo-memory-cloud-openclaw-pluginRecommended setup order:
openclaw.tools.profile to "full".Published package install inside the OpenClaw home directory:
cd $HOME\.openclaw
npm install @echomem/openclaw-memory
Local repo install:
openclaw plugins install "C:\Users\Your Name\Documents\GitHub\EchoMemory-Cloud-OpenClaw-Plugin"
Linked local repo install for active development:
openclaw plugins install --link "C:\Users\Your Name\Documents\GitHub\EchoMemory-Cloud-OpenClaw-Plugin"
Important Windows pitfall:
openclaw plugins install may parse the path incorrectly2026.3.22+, avoid bare plugin names and use the exact scoped package or exact local path insteadWhen the user wants to remove an old install cleanly, use the exact OpenClaw uninstall command instead of describing manual cleanup first:
openclaw plugins uninstall echo-memory-cloud-openclaw-plugin
Helpful variants:
openclaw plugins uninstall echo-memory-cloud-openclaw-plugin --dry-runopenclaw plugins uninstall echo-memory-cloud-openclaw-plugin --keep-filesuninstall removes the plugin entry, tracked install record, allowlist entry, and linked load path when applicable. By default it also removes the plugin install directory under OpenClaw's active extensions root.
Do not assume the active plugin always lives under ~/.openclaw/node_modules. On newer OpenClaw versions the active install may be tracked under ~/.openclaw/extensions.
After uninstall:
plugins.entries.echomemory-cloud if presentopenclaw gateway restartopenclaw gateway restart againDo not tell users that reinstalling the plugin should reset synced-file history. Current behavior is supposed to preserve sync state across versions under the OpenClaw home state directory.
Preferred path for first-time and returning users:
Setup sidebar.Quick connect, enter the user's email and click Connect with email.ec_... API key is generated automatically~/.openclaw/.envGenerated key scope expectation:
memory:readmemory:writeingest:writeManual fallback:
Advanced: enter API key manually in the local UI Setup sidebar.ec_... key and save local settings.https://www.iditor.com/api after login.In ~/.openclaw/openclaw.json, set:
{
"tools": {
"profile": "full"
}
}
The default coding profile is too restrictive for normal EchoMemory plugin usage.
If the user wants EchoMemory to fully replace OpenClaw's built-in memory recall, also guide them to disable the core memory tools in the same config:
{
"tools": {
"profile": "full",
"deny": ["memory_search", "memory_get"]
}
}
Important distinction:
Echo-only memory retrieval blocks OpenClaw memory_search and memory_get at runtime after Echo cloud access is verifiedtools.deny in ~/.openclaw/openclaw.json is the stronger and recommended setup when the user wants EchoMemory to fully own memory retrievaltools.deny, the user should restart openclaw gatewayUse this as the baseline cloud-mode setup for a new install:
{
"tools": {
"profile": "full"
},
"plugins": {
"entries": {
"echo-memory-cloud-openclaw-plugin": {
"enabled": true,
"config": {
"apiKey": "ec_your_key_here",
"memoryDir": "C:\\Users\\your-user\\.openclaw\\workspace\\memory",
"autoSync": false,
"localOnlyMode": false,
"localUiAutoOpenOnGatewayStart": true,
"localUiAutoInstall": true,
"syncIntervalMinutes": 15,
"batchSize": 10,
"requestTimeoutMs": 300000
}
}
}
}
}
For the default OpenClaw layout, memoryDir is usually:
~/.openclaw/workspace/memory
This is the cloud sync directory. By current plugin behavior, sync reads the top-level markdown files inside that directory.
Environment file alternative in ~/.openclaw/.env:
ECHOMEM_API_KEY=ec_your_key_here
ECHOMEM_MEMORY_DIR=C:\Users\your-user\.openclaw\workspace\memory
ECHOMEM_AUTO_SYNC=false
ECHOMEM_LOCAL_ONLY_MODE=false
ECHOMEM_LOCAL_UI_AUTO_OPEN_ON_GATEWAY_START=true
ECHOMEM_LOCAL_UI_AUTO_INSTALL=true
ECHOMEM_SYNC_INTERVAL_MINUTES=15
ECHOMEM_BATCH_SIZE=10
ECHOMEM_REQUEST_TIMEOUT_MS=300000
Important note:
ECHOMEM_API_KEY; the plugin can write it automatically after email verificationAfter install and config changes:
openclaw gateway restart
Successful startup usually includes:
[echo-memory] Local workspace viewer: http://127.0.0.1:17823Successful local UI verification now also includes:
Plugin updates at the bottomPlugin updatesRecommended first smoke test order:
/echo-memory whoami/echo-memory status/echo-memory sync/echo-memory search <known memory topic>If the user is not ready for cloud setup yet, local-only mode is still valid. Read references/mode-switching.md.
openclaw plugins install "C:\path\to\EchoMemory-Cloud-OpenClaw-Plugin"
or
openclaw plugins install --link "C:\path\to\EchoMemory-Cloud-OpenClaw-Plugin"
tools.profile is "full" in ~/.openclaw/openclaw.json.plugins.entries.echo-memory-cloud-openclaw-plugin.openclaw gateway restart
Use cloud mode when the user wants sync and retrieval from EchoMemory cloud:
localOnlyMode: falseapiKey: "ec_..."ingest:write and memory:readtools.deny: ["memory_search", "memory_get"] in ~/.openclaw/openclaw.jsonUse local mode when the user only wants localhost browsing of markdown files:
localOnlyMode: trueIf the user wants to switch modes, read references/mode-switching.md.
If the user asks to "view memories" and does not explicitly mention graph, public memories, or iditor.com, treat that as the local UI, not the cloud graph.
Successful gateway startup usually includes:
[echo-memory] Local workspace viewer: http://127.0.0.1:17823
If the plugin is loaded but the user still cannot open the viewer:
17823 is listeninglocalUiAutoInstall was not disabled before the first runscripts/start-local-ui.mjsExplain the surface clearly when needed:
Plugin updates panel for packaged installs; it is not the primary update path for linked local reposUnknown, Unavailable, or route 404 errors, verify that the running gateway is using the same plugin copy as the visible frontendMap normal-language requests to the current plugin surface instead of replying from generic memory or setup knowledge.
Use echo_memory_onboard or /echo-memory onboard when the user asks about:
memory_search / memory_getEcho-only memory retrieval checkbox really changesUse echo_memory_local_ui or /echo-memory view when the user asks to:
Use echo_memory_search or /echo-memory search <query> when the user asks:
If the user says they enabled the local UI Echo-only memory retrieval option but OpenClaw still reaches for core memory tools, explicitly tell them to add tools.deny: ["memory_search", "memory_get"] to ~/.openclaw/openclaw.json and restart the gateway.
If the user expects a local file to appear in cloud search, verify that the file is actually inside the sync directory and not only visible through the wider local UI workspace scan.
Use echo_memory_status or /echo-memory status when the user asks about:
Use echo_memory_sync or /echo-memory sync when the user asks to:
Use /echo-memory whoami when the user wants to verify:
Use echo_memory_graph_link or graph commands when the user asks for:
Choose the graph target carefully:
echo_memory_graph_link with visibility: private or /echo-memory graphecho_memory_graph_link with visibility: public or /echo-memory graph publicUse /echo-memory help when the user explicitly asks for the command list.
tools.profile to "full".tools.deny for memory_search and memory_get.~/.openclaw/.env.openclaw gateway./echo-memory whoami
/echo-memory status
/echo-memory sync
/echo-memory search <known topic>
If the user is already set up and wants a quick usage reference, read references/normal-usage.md.
Cloud mode:
{
"plugins": {
"entries": {
"echo-memory-cloud-openclaw-plugin": {
"enabled": true,
"config": {
"apiKey": "ec_your_key_here",
"localOnlyMode": false,
"memoryDir": "C:\\Users\\your-user\\.openclaw\\workspace\\memory",
"localUiAutoOpenOnGatewayStart": true,
"localUiAutoInstall": true
}
}
}
}
}
Local mode:
{
"plugins": {
"entries": {
"echo-memory-cloud-openclaw-plugin": {
"enabled": true,
"config": {
"localOnlyMode": true,
"memoryDir": "C:\\Users\\your-user\\.openclaw\\workspace\\memory",
"localUiAutoOpenOnGatewayStart": true,
"localUiAutoInstall": true
}
}
}
}
}
Cloud mode with OpenClaw core memory tools disabled:
{
"tools": {
"profile": "full",
"deny": ["memory_search", "memory_get"]
},
"plugins": {
"entries": {
"echo-memory-cloud-openclaw-plugin": {
"enabled": true,
"config": {
"apiKey": "ec_your_key_here",
"localOnlyMode": false,
"memoryDir": "C:\\Users\\your-user\\.openclaw\\workspace\\memory",
"localUiAutoOpenOnGatewayStart": true,
"localUiAutoInstall": true,
"disableOpenClawMemoryToolsWhenConnected": true
}
}
}
}
}
references/initial-setup.md: zero-to-working install path, account creation, config, and first verification checksreferences/normal-usage.md: current commands, plain-language trigger mapping, and when to use local UI versus graphreferences/mode-switching.md: exact local/cloud toggles, config precedence, and restart rulesreferences/troubleshooting.md: failure patterns for plugin discovery, local UI startup, auth, and syncscripts/start-local-ui.mjs: manual fallback to launch the local UI when the gateway cannot start it