Skip to content

CLI reference

Generated from the captured --help snapshots at crates/daemon/tests/snapshots/cli_help__*.snap. To change a flag, change the clap definition in crates/daemon/src/cli/ and the docs follow on rebuild.

mxr is a single binary with subcommands. Running mxr with no arguments launches the TUI.

For higher-level concepts (query operators, search modes, JSON output shapes), see Concepts. For what’s safe to script and pipe, see the automation contract.

  • mxr accounts — Manage accounts
  • mxr activity — Browse the local user-activity log (the git-reflog for your inbox). Strictly local: never transmitted off-device. See mxr activity --help
  • mxr archive — Archive a message (remove from inbox)
  • mxr ask — Ask a question against the local archive. Returns a citation- validated answer; the daemon rejects LLM citations that point to messages outside the retrieved set
  • mxr attachments — Manage message attachments
  • mxr briefing — Render a thread or recipient briefing
  • mxr bug-report — Generate a sanitized diagnostic bundle
  • mxr burn — Destroy local mxr runtime state after stopping the daemon. Alias for mxr reset --hard. Preserves config.toml and credentials by default. Use —including-config to also delete config.toml. Destructive; use —dry-run to preview
  • mxr cadence — Manage the cadence watchlist
  • mxr cat — Display a message. Pass a positional ID, pipe IDs on stdin, or resolve a list with --search QUERY (then --first for the most recent match or --limit N for the top N)
  • mxr chimes — Manage local notification chimes
  • mxr commitments — List or resolve relationship commitments
  • mxr completions — Generate shell completions
  • mxr compose — Compose a new email
  • mxr config — Configuration management
  • mxr contacts — Surface relationship analytics from the materialized contacts table
  • mxr count — Count matching messages
  • mxr daemon — Start the daemon explicitly
  • mxr decisions — List or rebuild the citation-backed decision log
  • mxr deliveries — Track packages and deliveries detected in your mail
  • mxr demo — Launch an isolated, realistic demo inbox without touching your real config
  • mxr doctor — Run diagnostics
  • mxr draft — Draft a new email or refine an existing local draft with LLM assistance
  • mxr draft-assist — Generate a draft reply for a thread, grounded on the thread context plus the user’s instruction. Output goes to stdout — pipe it into $EDITOR or your scratch buffer. Never auto-sends. Two equivalent forms:
  • mxr drafts — Manage drafts: list (default), recover orphaned in-flight sends, resume one for retry, or discard recovered drafts
  • mxr events — Watch daemon events
  • mxr expert — Find people who have answered similar questions before. Either give the message id of the question OR a free-text query; the daemon ranks answerers (not askers)
  • mxr export — Export a thread or matching search results
  • mxr headers — Show message headers. Pass a positional ID, pipe IDs on stdin, or resolve a list with --search QUERY
  • mxr history — Show persisted event history
  • mxr humanize — Score or rewrite text using the deterministic humanizer gate
  • mxr invite — Inspect and respond to calendar invites in email
  • mxr invites — List calendar invites found in email
  • mxr jobs — List or inspect background jobs (large batch mutations, progress, undo ids)
  • mxr mcp — Model Context Protocol server commands
  • mxr move — Move message to a label/folder
  • mxr open — Open message in browser. Pass a positional ID or --search QUERY (with --first for the latest match, or --limit N plus --yes to open many tabs at once)
  • mxr owed — List threads where the user owes a reply, ranked by how overdue they are relative to the recipient’s typical cadence
  • mxr profile — Show or rebuild the inspectable relationship profile for a contact
  • mxr read — Mark message as read
  • mxr read-archive — Mark message as read and archive it
  • mxr remind — Set or cancel a follow-up reminder on an outbound message. Reminders fire if no reply has arrived by the given time — surfacing the message back to the user as a follow-up
  • mxr replies — Manage the reply-later queue
  • mxr reply — Reply to a message
  • mxr reply-all — Reply to all recipients
  • mxr reset — Destroy local mxr runtime state after stopping the daemon. Preserves config.toml and credentials by default. Use —including-config to also delete config.toml. Destructive; use —dry-run to preview
  • mxr response-time — Reply-latency percentiles (clock + business-hours) per direction
  • mxr restart — Restart the daemon with the current binary
  • mxr route — Route queued messages to a target label, optionally marking read and archiving
  • mxr rules — Manage rules
  • mxr saved — Manage saved searches
  • mxr screener — Triage unknown senders: classify them as allow / deny / feed / paper-trail. Local-only consent metadata; never roundtrips to the provider
  • mxr search — Search messages
  • mxr semantic — Manage semantic search profiles and indexing
  • mxr send — Send a draft by ID
  • mxr send-time — Show the recipient’s typical reply-time bucket
  • mxr sender — Show per-sender relationship aggregates: volume, response cadence, open threads. The unfair advantage of having local SQLite — every other email tool reasons over messages, not people
  • mxr senders — List top inbound senders by message volume
  • mxr setup — First-run setup wizard for demo, Gmail, or IMAP/SMTP
  • mxr signatures — Manage outgoing compose signatures
  • mxr snippets — Manage compose snippets (;name expansions)
  • mxr snooze — Snooze a message until a specified time
  • mxr snoozed — List snoozed messages
  • mxr spam — Report message as spam
  • mxr stale — List stale threads waiting for a reply (mine = my turn, theirs = theirs)
  • mxr star — Star a message
  • mxr status — Show daemon status
  • mxr storage — Roll up disk consumption by sender, mimetype, or label
  • mxr subscriptions — List senders with unsubscribe support
  • mxr suggest-recipients — Suggest “maybe include” Cc recipients for a draft. Excludes addresses already on the draft and never reveals Bcc’d addresses from prior threads
  • mxr summarize — Summarise an email thread using the configured LLM (Ollama, LM Studio, OpenAI, etc.). Requires [llm] enabled = true in config. Pass a positional thread ID or use --search QUERY plus --first (most recent match) or --limit N to summarize multiple threads in one go. Multi-summary output is separated by --- THREAD_ID ---
  • mxr sync — Trigger or query sync
  • mxr thread — Display a thread. Pass a positional ID, pipe IDs on stdin, or resolve a list with --search QUERY (deduplicated by thread)
  • mxr threads — List threads in date-descending order. Each returned thread includes its constituent message IDs (date-ascending). Filter by account or label; paginate with —limit/—offset
  • mxr trash — Move message to trash
  • mxr triage — Classify search results as ACTION/FYI/ROUTINE using the cached summarizer verdict
  • mxr undo — Undo a recent destructive mutation by its id (~60s window). The mutation id is printed by archive, trash, spam, mark-read, and read-archive; copy it from there
  • mxr unlabel — Remove a label from a message
  • mxr unread — Mark message as unread
  • mxr unsend — Cancel a previously-scheduled send. The draft itself is preserved
  • mxr unsnooze — Unsnooze a message
  • mxr unstar — Unstar a message
  • mxr unsubscribe — Unsubscribe from a mailing list
  • mxr web — Start or reopen the local HTTP/WebSocket bridge and open the web app in the default browser. Runs detached by default; use mxr web stop to stop the detached bridge
  • mxr whois — Explain an entity (email or term) using local evidence
  • mxr wrapped — Year-in-review summary: volume, time patterns, top contacts, reply discipline, storage, newsletters, superlatives. Like Spotify Wrapped but for your inbox