feat(text): default to MiniMax-M3 with 8192 max-tokens#172
Conversation
- types: add 4 optional fields (interval_status, weekly_status, boost_permille x 2) - render: prepend 'xN' to model name when boost_permille > 1000 - tests: add 2 cases (with boost, without boost) PR MiniMax-AI#166 missed these fields. status is not separately rendered since percent already conveys the state (1=partial, 3=full). boost informs the user about their 2x subscription multiplier.
- Default model MiniMax-M2.7 → MiniMax-M3 (frontier reasoning model, launched 2026-06-01) - Default max_tokens 4096 → 8192 (M3 thinking phase consumes tokens; 4096 too tight) - Update help text, examples, and the one test that asserts default model Built on top of MiniMax-AI#168. Users can still override with --model flag for M2.7/M2.7-highspeed.
MiniMax-M2.7-highspeed is no longer the recommended fast variant in the M3 era. Reword the chat/repl examples to demonstrate --system without --model, letting the new default (M3) apply. Help descriptions already reference M3 only. Follow-up to the previous commit on this branch; no code or test changes.
MiniMax has sunset M2.7-highspeed across all subscription tiers — even legacy users no longer have it. The API still accepts the id (backward compat) but it's no longer part of the official text-model lineup: M2.5 / M2.7 / M3. Update test fixtures to use M2.5 (the only M-tier model in the lineup that wasn't already the hardcoded fallback) so the fixtures reflect real-world model ids users will actually pass. CLI behavior unchanged. Builds on MiniMax-AI#172.
There was a problem hiding this comment.
good change. the 8192 max_tokens rationale (thinking + text headroom) is well-articulated, and unifying the SDK default with the help text removes a footgun where the two disagreed about what mmx chat actually does.
one thing to think about: M3 thinking is heavy, so a Plus user on the new default may burn through their 5h quota faster than they did on M2.7. probably fine, but a quick "tested over a 4h window on Plus" note in the PR body would pre-empt a "regression" report.
sequencing: the PR is built on top of #168's commits. if maintainers prefer squashed merges the dependency on specific commit hashes could get awkward. worth a quick note on whether you want to rebase onto main after #168 lands or keep it stacked.
approving.
Background
MiniMax-M3 launched 2026-06-01 as MiniMax's new frontier reasoning model. mmx CLI should default to M3 going forward. M3 is a reasoning model — its thinking phase consumes tokens, so the default 4096 max_tokens is too tight (responses often come back all thinking with no text). Bump to 8192.
This PR is built on top of #168. Once #168 merges, this will land on top of its commits.
Changes
src/sdk/text/index.ts: default model M2.7 → M3, max_tokens 4096 → 8192src/commands/text/chat.ts: same defaults, update help textsrc/commands/text/repl.ts: same defaults, update help texttest/commands/text/chat.test.ts: update assertion to expect M3src/commands/text/chat.ts+src/commands/text/repl.ts: reword the example commands to use the M3 default instead of pinning a specific model on the CLI. Help text and docs reference M3 only.Why M3 is OK as default now
mmx config set default_text_model MiniMax-M2.7Refs #168