Build and evolve the local Rust CLI in this repo using clap derive patterns and colored output rules while preserving mmr-compatible JSON schemas for projects/sessions/messages. Use when adding commands, flags, sort/pagination behavior, source filtering, fixture tests, or benchmark checks in mmr.
Parser, Subcommand, ValueEnum) for all CLI surface changes.mmr contract semantics:
projects: default --source to codexsessions: require --source codex|claude (reject all)messages: paginate from newest, then return chronological windowcargo testcargo test --test cli_benchmark -- --ignored --nocapturecargo clippy --all-targets --all-features -- -D warningscargo build --releasereferences/clap-derive-patterns.md — when changing CLI argument structure.references/colored-output-policy.md — when adding or changing terminal styling.references/mmr-query-contract.md — when touching sort/filter/pagination or JSON fields.references/test-and-benchmark-loop.md — when updating fixtures, integration tests, or benchmark checks.