Skip to content

feat: add MiniMax as first SDK-based LLM provider#455

Open
octo-patch wants to merge 3 commits into
covibes:devfrom
octo-patch:feature/add-minimax-provider
Open

feat: add MiniMax as first SDK-based LLM provider#455
octo-patch wants to merge 3 commits into
covibes:devfrom
octo-patch:feature/add-minimax-provider

Conversation

@octo-patch

Copy link
Copy Markdown

Summary

Adds MiniMax as the fifth LLM provider and the first to implement the SDK extension point (callSDK/callSimple). Unlike CLI-based providers (Claude, Codex, Gemini, Opencode), MiniMax uses a lightweight Node.js CLI wrapper that calls the MiniMax OpenAI-compatible API directly — no external CLI installation needed.

What is included

  • Provider implementation (src/providers/minimax/): models, cli-builder, output-parser, cli-wrapper, SDK methods
  • Models: MiniMax-M2.7 (1M context), M2.7-highspeed, M2.5, M2.5-highspeed (204K context)
  • Level mapping: level1 -> M2.5-highspeed, level2 -> M2.7, level3 -> M2.7
  • SDK support: getSDKEnvVar(), callSDK(), callSimple() — enables output reformatting when activated
  • CLI wrapper: Node.js script that wraps the MiniMax API for the CLI-based orchestration pipeline
  • Error classification: retryable (rate limits, server errors) vs permanent (invalid key, bad request)
  • Provider registration: provider-names, capabilities, provider index
  • Documentation: docs/providers.md and README.md updated
  • Tests: 62 unit tests + 10 integration tests (all passing, 0 regressions)

Usage

export MINIMAX_API_KEY=your-key
zeroshot providers set-default minimax
zeroshot run 123

Design decisions

  1. SDK-first provider: MiniMax has no dedicated CLI, so this implements the SDK extension point that BaseProvider documents. This paves the way for other API-only providers.
  2. CLI wrapper for orchestration: The multi-agent pipeline uses buildCommand() -> spawn. The wrapper uses node + a bundled script to call the API and emit JSON events in the same format other providers use.
  3. Temperature clamping: MiniMax accepts temperature in [0, 1], handled transparently.
  4. Think-tag stripping: MiniMax reasoning models emit think tags which are stripped from output.

Test plan

  • 52 unit tests for output parser, CLI builder, provider registration, model catalog, level mapping, error classification, SDK support, settings validation
  • 10 integration tests for provider system integration, name normalization, settings, model resolution, CLI command generation
  • All existing provider tests pass (87 total, 0 regressions)
  • Manual: set MINIMAX_API_KEY and run zeroshot run with --provider minimax

tomdps and others added 3 commits January 27, 2026 10:01
Release dev to main

---------

Co-authored-by: Eivind Meyer <eiv.meyer@gmail.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Eivind Meyer <eivind.meyer@ksat.no>
Co-authored-by: Michael Eichelbeck <141341133+mkceichelbeck@users.noreply.github.com>
Co-authored-by: Michael Eichelbeck <michael.eichelbeck.ext@wtsde.onmicrosoft.de>
## Release scope
This release promotes the current `dev` branch to `main` for stable
non-TUI improvements and fixes.

## Important
This is **not** the full TUI release.
- The TUI work is included only in its current in-progress state.
- Final/complete TUI UX release is intentionally deferred to a later
release.

## Notes
- Reconciliation PR `covibes#409` was merged into `dev` first to unblock `dev
-> main`.
- CI must pass and merge queue policy is respected.

---------

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: Eivind Meyer <eivind.meyer@ksat.no>
Co-authored-by: Michael Eichelbeck <141341133+mkceichelbeck@users.noreply.github.com>
Co-authored-by: tomdps <tom.dupuis24@gmail.com>
Co-authored-by: tomdps <60640908+tomdps@users.noreply.github.com>
Co-authored-by: Michael Eichelbeck <michael.eichelbeck.ext@wtsde.onmicrosoft.de>
Co-authored-by: Ubuntu <ubuntu@ip-172-31-38-53.eu-north-1.compute.internal>
Co-authored-by: Eivind <eivind@covibes.ai>
Add MiniMax (M2.7, M2.7-highspeed, M2.5, M2.5-highspeed) as the fifth
provider and first to implement the SDK extension point. Unlike CLI-based
providers, MiniMax uses a lightweight Node.js wrapper that calls the
OpenAI-compatible API directly, no external CLI needed, just set
MINIMAX_API_KEY.

Provider: models, cli-builder, output-parser, cli-wrapper, SDK methods
Registry: provider-names, capabilities, provider index
Tests: 62 unit + 10 integration tests (all passing)
Docs: providers.md, README.md updated
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.

3 participants