Skip to content

feat(provider): add MiniMax Code CLI (mcode) engine preset - #414

Open
Vasilispapg wants to merge 2 commits into
chaitanyagiri:mainfrom
Vasilispapg:feat/minimax-mcode-provider
Open

feat(provider): add MiniMax Code CLI (mcode) engine preset#414
Vasilispapg wants to merge 2 commits into
chaitanyagiri:mainfrom
Vasilispapg:feat/minimax-mcode-provider

Conversation

@Vasilispapg

@Vasilispapg Vasilispapg commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

What & why

MiniMax Code (mcode) is MiniMax's terminal coding agent, and today the only way to run it in the office is the hookless custom provider — it sits at a desk but can't be oriented, resumed, or self-heal-installed. This registers mcode as a first-class engine preset: positional hive-protocol seeding (the codex shape), --session <id> resume, npm + vendor-bootstrap install rungs, the official brand mark, and honest gaps where the v0.2.7 TUI has no surface (no permission flag and no --model flag at launch — both are exec-only, so auto mode appends nothing and the model picker holds a single "CLI default" entry instead of splicing a flag the TUI would reject). Every flag in the preset was verified against mcode --help / mcode exec --help at v0.2.7 and the vendor quick-start docs, not guessed. No hook bridge yet — mail delivery uses the same terminal work-order / idle-nudge fallback as Cursor, and mcode acp (ACP v1 over stdio) is noted in the preset as the obvious surface for a future bridge.

Closes #387

Type of change

  • Bug fix
  • New feature
  • Refactor / cleanup
  • Docs
  • Build / CI

Evidence

Before

Onboarding step 2 (Your clone's engine) on main, list scrolled to the bottom — the roster ends at Cursor; mcode can only be a hookless custom command:

Engine picker on main — no MiniMax entry

After

The same screen, same window size and theme, with this branch: MiniMax Code is a selectable engine with its brand mark and an "installs on first run" badge (npm rung: @minimax-ai/code), and its Model picker offers the honest "CLI default" entry:

Engine picker with MiniMax Code registered

How I tested it

  • OS: macOS 26 (Darwin 25.6.0), Node 22.23.2
  • Steps:
    • Verified the real CLI surface before writing the preset: npx -y @minimax-ai/code@0.2.7 --help and exec --help (positional [prompt] on the TUI, --session [id] / -c --continue, --permission and --model exist on exec only), plus the vendor install scripts referenced by the quick-start docs.
    • Wrote the failing registry/install-ladder/provider-config/automation/catalog tests first, watched them fail, then implemented the preset: node test/agent-provider.test.cjs and npm run test:focused — 746/746 pass.
    • npm run typecheck (node + web) passes; npm run build succeeds.
    • npm run dev, walked onboarding to the engine step and selected MiniMax Code (screenshots above); confirmed the god-eligibility filter includes it and the Model select shows "CLI default".

Note for reviewers: the onboarding roster string was updated in all three locales (en / ar / zh-CN) to count twelve engines. While editing it I noticed the roster sentence doesn't mention Gemini CLI (present since its preset landed) — left untouched here to keep this PR one change, happy to follow up.

Discord (optional)

Discord:

Checklist

  • Before and after evidence is attached above, under both headings.
  • npm run typecheck passes.
  • npm run test:focused passes.
  • npm run build succeeds.
  • This PR is one change. Unrelated fixes belong in their own PR.
  • I read the diff myself before opening this, and there is no debug output, commented-out code, or unrelated formatting churn in it.
  • Any new UI derives from DESIGN.md / tokens.ts — no ad-hoc colors, spacing, or fonts.
  • If I added art, it's my own or compatibly licensed, and listed in ATTRIBUTION.md. (The MiniMax mark is the canonical single-path glyph from the Simple Icons set — the same source and pattern as the existing Anthropic/OpenAI/Gemini/Qwen marks in ProviderLogo.tsx.)

Register MiniMax Code (`mcode`, npm @minimax-ai/code) as a first-class
provider so workers and Michael can run on MiniMax's M-series models
(issue chaitanyagiri#387). Interactive TUI in a PTY, oriented by a positional first
prompt — the codex shape, verified against v0.2.7's `--help` and the
vendor quick-start.

- preset: positional protocol seed, `--session <id>` resume, empty auto
  flag (the TUI exposes no permission flag; Alt+M / /permission inside —
  `--permission smart|full|off` is exec-only), no model splice (`--model`
  is exec-only; /model in-TUI), npm + vendor-bootstrap install rungs,
  docs link
- inferAgentProvider/isAgentProvider recognize the mcode binary
- model catalog: single honest "CLI default" entry (nothing to splice)
- providerAutomation: no compact/clear keystrokes — v0.2.7 documents
  /status, /model, /plan, /permission, /sessions; no compaction verb
- ProviderLogo: official Simple Icons MiniMax mark
- voice hire mapping + realtime tool description include minimax
- onboarding engine roster (en/ar/zh-CN) now counts twelve
- registry, install-ladder, provider-config, automation and catalog tests

Closes chaitanyagiri#387
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add support for MiniMax Code CLI (mcode) as a provider

1 participant