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.
--purge for that client’s local helper files. The Codex script edits the shared ~/.codex config, so it affects Codex Desktop as well.