Skip to main content
The uninstaller is a Bash script and needs Node. It removes Memory Crystal wiring from the clients you name. It does not delete hosted memories. A local backend is a separate choice: stop it, keep it running, or wipe its Docker volumes.
Preview without writing:

What a default run does

With no --targets, the script walks this list: openclaw, hermes, claude-code, claude-desktop, codex-cli, factory-droid, cursor, grok, generic-mcp, local-backend. For each client it removes the Memory Crystal MCP entry, Memory Crystal hooks, the managed block, and the installed crystal-* skills. Other MCP servers and hooks stay. Then it stops a local backend if one is installed, and keeps the Docker volumes. codex-desktop and opencode are not in that default list. Pass them explicitly. Any id in the installer platform table is accepted. An unknown id is skipped with a warning.

Targets

Codex CLI and Codex Desktop share ${CODEX_HOME:-~/.codex}/config.toml and hooks.json. Uninstalling either target removes that shared MCP block and those hooks for both.

Flags

--purge while another client on the machine still uses Memory Crystal removes shared helpers that client still needs. Disconnect only the client you are leaving, and skip --purge, until the last client is gone.

Single-client scripts

These do the same client cleanup as --targets for one product. They do not stop a local backend.
Each accepts --purge for that client’s local helper files. The Codex script edits the shared ~/.codex config, so it affects Codex Desktop as well.

After uninstall

Hosted memories stay on the account until you delete them in the dashboard. A local backend you only stopped still has its volumes. Re-run the installer to connect a client again. To switch a local install back to the hosted backend without uninstalling, re-run the installer and choose the hosted URL, or restore the config backup the installer printed.