CLI Manual
Run mire with no subcommand to open the current worktree diff. Pass --theme before a subcommand, or on its own with the default diff, to select auto, iceberg, eldritch, or catppuccin.
Git commands
mire diff
Review unstaged and untracked worktree changes by default.
mire diff [--staged] [REVISION]... [--format json] [--language LANGUAGE] [--watch] [-- PATH]... --staged compares the index with HEAD and cannot be combined with revision
arguments. One or more revision arguments are passed to Git as a comparison.
Paths after -- are repository-relative filters.
mire show
Review one commit. The revision defaults to HEAD.
mire show [REVISION] [--format json] [--language LANGUAGE] [--watch] [-- PATH]... mire watch
Open a watched Git comparison.
mire watch [--staged] [REVISION]... [--language LANGUAGE] [-- PATH]... Patch and review commands
mire patch
mire patch PATH|- [--format json] [--language LANGUAGE] [--watch] - reads a patch from standard input and produces JSON. --watch works only
with a file-backed patch in an interactive terminal.
mire review
mire review REVIEW.json [--format json] [--watch] Without a structured format, this opens the review in the TUI. Initialize or refresh a source-backed review with:
mire review init REVIEW.json [--staged] [REVISION]... [-- PATH]...
mire review refresh REVIEW.json
mire review status REVIEW.json [--format json] review refresh repeats the recorded Git comparison, re-anchors every finding,
and atomically replaces the file. It prints status: unchanged without writing
when the capture fingerprint has not changed. Reviews without a source binding
cannot be refreshed.
review status reads and validates a review without opening the TUI. Its text
output reports the captured source, review revision, changes, finding
dispositions, and re-anchor results. Pass --format json for deterministic
structured output.
mire context
Export bounded context from a durable review:
mire context REVIEW.json [--file PATH | --hunk FINGERPRINT | --patch] [--max-bytes BYTES] [--format json] The compact manifest does not require --max-bytes. File, hunk, and patch
expansion does.
Note commands
mire note add REVIEW.json --revision REVISION --file PATH (--old-line LINE | --new-line LINE) [--end-line LINE] --author ID --provenance agent|analyzer|interchange --producer NAME --severity SEVERITY --kind KIND --body BODY
mire notes apply REVIEW.json --stdin
mire note resolve|dismiss|accept-risk REVIEW.json NOTE_ID --revision REVISION --author ID
mire notes import REVIEW.json BATCH.json|- --revision REVISION
mire notes list REVIEW.json [--format json]
mire notes export REVIEW.json [--format json|markdown] notes apply accepts location-based findings and creates identifiers and anchor
fingerprints. It validates the whole batch before writing. Every mutation
requires the revision returned by mire context or mire notes list; stale
writes fail with revision_conflict. Full-note import remains available for
compatible clients. List returns deterministic JSON. Export can produce JSON
or standalone Markdown.
Agent skill
mire skill path Installs the bundled provider-neutral review skill in the standard $HOME/.agents/skills/mire directory when needed, then prints its SKILL.md path.
Live sessions
mire session list
mire session inspect SESSION
mire session focus SESSION --note NOTE_ID
mire session focus SESSION --file PATH --side old|new --start-line LINE [--end-line LINE]
mire session next|previous|reload SESSION
mire session walkthrough start|next|previous|stop SESSION These commands control presentation state in a local open TUI. They do not create, edit, or disposition findings. See the live-session protocol for response format, authentication, limits, and transport behavior.
Interactive controls
See the keyboard reference for navigation, search, display, review-note, editor, filter, and mouse controls.
Exit status
Argument parsing uses exit status 2. Input I/O, patch parsing, output,
terminal, Git, review-file, and protocol failures use distinct nonzero statuses
so scripts can separate malformed input from repository and protocol errors.
Use the JSON protocol output for machine-readable failure details where
available.