Skip to main content
The Slowave CLI is the primary interface for local setup, inspection, scripting, and maintenance. Every command accepts a --json flag that switches output to machine-readable JSON, making it straightforward to pipe results through scripts or integrate into CI workflows. The CLI never calls an external LLM — all ingest, consolidation, and recall operations run entirely on your machine.
The database is stored as a plaintext SQLite file by default. If its contents are sensitive, place it on an encrypted volume or protect it with operating-system file permissions.

MCP lifecycle vs. CLI lifecycle

Agents that connect through MCP use the five-verb contract:
The CLI exposes an older, manual equivalent that uses reinforce instead of feedback:
slowave reinforce is a CLI compatibility and experimentation command. It is not an MCP tool and does not replace MCP feedback. Do not use the CLI examples in this section as your agent integration contract — use the MCP tool contracts documented in the Architecture guide instead.

Global flags

These flags apply to every command:

Manual lifecycle commands

These commands are useful for testing a local database or building a scripted workflow. For normal agent use, prefer an MCP client.

activate

Opens a task session and retrieves relevant context from memory.
The response includes a session_id and a retrieval_id. Pass the retrieval_id to reinforce and the session_id to commit.

remember

Records a typed durable claim. The --session flag is optional; omit it for a standalone assertion.

recall

Performs a semantic lookup against stored memories.

reinforce

Records feedback for a CLI activate or recall retrieval. Accepts the retrieval_id returned by those commands.

commit

Closes a task session and encodes events into episodic memories.
Supply an accurate --outcome. Include --final-goal and --outcome-summary when available — these improve the quality of consolidated memories.

Lower-level session and event commands

Use session and event directly when you need raw event ingestion without the higher-level lifecycle wrapper.
session end is a lower-level close operation. Use commit when following the manual lifecycle above. The context command produces a working-memory brief and may open an implicit session when given a --scope. It returns a retrieval_id for use with reinforce.

Operations and maintenance

These commands cover day-to-day inspection and database maintenance.

dashboard

The dashboard runs at 127.0.0.1:8765 by default and opens in the browser automatically.

forget and unforget

These commands are intentionally human-only. MCP has no equivalent because forgetting requires a human to review a specific memory, not an agent inferring intent.
Forgetting a generalized schema (one at generalization_stage >= 1) removes it from every scope that reuses it, not just the one in which you found it. The command prints a warning when this applies.

worker

The worker simulates slow-wave sleep: episodes accumulate during active sessions and are consolidated offline on a 5-minute interval by the installed service. Use --once to trigger a single pass manually.

Setup and diagnostics

setup

setup is idempotent and safe to re-run. Use --dry-run to preview all changes before writing.
Supported --client values: claude-code, claude-desktop, cline, cursor, windsurf, opencode, codex, all. Additional flags:

doctor

doctor checks every component and reports issues with actionable remediations.
Run slowave doctor --verbose 2>&1 | tee /tmp/slowave-doctor.log to capture full diagnostics when filing a bug report.

serve

Manages the HTTP MCP daemon, which serves the slowave_* tools at http://127.0.0.1:8766/mcp.

Backups, removal, and recovery

slowave cleanup is a compatibility alias for slowave purge. Use purge in new scripts and documentation.
slowave purge is destructive. It asks for confirmation at the terminal. Always run --dry-run first to verify the scope of removal.
After running uninstall or purge, remove the Python package separately with the same installer used to install it: