MiniMax Models in OpenClaw: Providers and Capabilities
The MiniMax plugin registers six capabilities and two chat providers, including image, music, and video generation plus speech. This page covers both providers and the built-in model catalog for users configuring MiniMax.
Read this when
- You want MiniMax models in OpenClaw
- You need MiniMax setup guidance
The minimax plugin ships with the product and registers six capabilities along with two chat providers: image generation, music generation, video generation, image understanding, speech (T2A v2), and web search.
| Provider ID | Auth | Capabilities |
|---|---|---|
minimax | API key | Text, image generation, music generation, video generation, image understanding, speech, web search |
minimax-portal | OAuth | Text, image generation, music generation, video generation, image understanding, speech |
Tip
A referral link gives 10% off the MiniMax Coding Plan: MiniMax Coding Plan
Built-in catalog
| Model | Type | Description |
|---|---|---|
MiniMax-M3 | Chat (reasoning) | Default hosted reasoning model |
MiniMax-M3.1-Flash | Chat (reasoning) | Adjustable effort, 1M context |
MiniMax-M3.1-Flash-Preview | Chat (reasoning) | Legacy Preview id for saved configurations |
MiniMax-M2.7 | Chat (reasoning) | Previous hosted reasoning model |
MiniMax-M2.7-highspeed | Chat (reasoning) | Faster M2.7 reasoning tier |
MiniMax-VL-01 | Vision | Image understanding model |
image-01 | Image generation | Text-to-image and image-to-image editing |
music-2.6 | Music generation | Default music model |
MiniMax-Hailuo-2.3 | Video generation | Text-to-video and image-to-video flows |
Which auth path you use determines the model ref format: minimax/<model> applies to API-key setups, while minimax-portal/<model> applies to OAuth setups.
Text and image input are both accepted by MiniMax-M3.1-Flash, which offers a 1,000,000-token context window. Pay-as-you-go API keys can use it, and so can Token Plan and MiniMax Code. MiniMax's published per-token pricing supplies its bundled cost fields: $0.15 for input, $0.60 for output, and $0.015 for cache read per 1M tokens. The default model is still MiniMax-M3.
Saved configurations still recognize MiniMax-M3.1-Flash-Preview, which keeps the same M3.1 capabilities and effort handling. Because no per-token Preview pricing was ever published, its legacy Token Plan cost fields stay at zero; that does not mean the service is free. Availability of the Preview id on the provider side may change, so pick MiniMax-M3.1-Flash when setting up a new configuration.
On both the API-key and OAuth routes, MiniMax M3 and M3.1 Flash are the preferred Code Mode models. No global Code Mode setting exists, so the automatic tier is free to engage it; explicit agent or model settings still win.
Getting started
OAuth (Coding Plan)
Best for: getting set up quickly with MiniMax Coding Plan over OAuth, with no API key needed.
International
Run onboarding
openclaw onboard --auth-choice minimax-global-oauth
The provider base URL this produces is api.minimax.io.
Verify the model is available
openclaw models list --provider minimax-portal
China
Run onboarding
openclaw onboard --auth-choice minimax-cn-oauth
The provider base URL this produces is api.minimaxi.com.
Verify the model is available
openclaw models list --provider minimax-portal
Note
The provider id used by OAuth setups is
minimax-portal. Model refs take the formminimax-portal/MiniMax-M3.
Expired OAuth access tokens are refreshed by OpenClaw against the regional MiniMax account endpoint that issued them. OpenClaw declines the refresh and asks you to run openclaw models auth login --provider minimax-portal again in two cases: the saved sign-in predates refresh support (so its region was never recorded), or models.providers.minimax-portal.baseUrl now points at the other region.
API key
Best for: hosted MiniMax through the Anthropic-compatible API.
International
Run onboarding
openclaw onboard --auth-choice minimax-global-api
Here api.minimax.io is set as the base URL.
Verify the model is available
openclaw models list --provider minimax
China
Run onboarding
openclaw onboard --auth-choice minimax-cn-api
Here api.minimaxi.com is set as the base URL.
Verify the model is available
openclaw models list --provider minimax
Config example
{
env: { vars: { MINIMAX_API_KEY: "sk-..." } },
agents: { defaults: { model: { primary: "minimax/MiniMax-M3" } } },
models: {
mode: "merge",
providers: {
minimax: {
baseUrl: "https://api.minimax.io/anthropic",
apiKey: "${MINIMAX_API_KEY}",
api: "anthropic-messages",
models: [
{
id: "MiniMax-M3",
name: "MiniMax M3",
reasoning: true,
input: ["text", "image"],
compat: { codeMode: "preferred" },
cost: { input: 0.6, output: 2.4, cacheRead: 0.12, cacheWrite: 0 },
contextWindow: 1000000,
maxTokens: 131072,
},
{
id: "MiniMax-M2.7",
name: "MiniMax M2.7",
reasoning: true,
input: ["text"],
cost: { input: 0.3, output: 1.2, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
},
{
id: "MiniMax-M2.7-highspeed",
name: "MiniMax M2.7 Highspeed",
reasoning: true,
input: ["text"],
cost: { input: 0.6, output: 2.4, cacheRead: 0.06, cacheWrite: 0.375 },
contextWindow: 204800,
maxTokens: 131072,
},
],
},
},
},
}
Warning
Instead of native Anthropic thinking blocks, the Anthropic-compatible streaming endpoint of MiniMax-M2.x emits
reasoning_contentas OpenAI-style delta chunks. If thinking stays enabled implicitly, internal reasoning therefore leaks into visible output. Unless you setthinkingyourself explicitly, OpenClaw turns off M2.x thinking by default. MiniMax-M3 (and forward-compatible M3.x) is exempt: M3 requires thinking to be active before it produces visible content and emits proper Anthropic thinking blocks, so OpenClaw leaves M3 on the provider's adaptive thinking path. The Thinking defaults section under Advanced configuration below covers this further.
Note
The provider id used by API-key setups is
minimax. Model refs take the formminimax/MiniMax-M3.
Configure via openclaw configure
Launch the wizard
openclaw configure
Select Model/auth
Pick Model/auth from the menu.
Choose a MiniMax auth option
| Auth choice | Description |
|---|---|
minimax-global-oauth | International OAuth (Coding Plan) |
minimax-cn-oauth | China OAuth (Coding Plan) |
minimax-global-api | International API key |
minimax-cn-api | China API key |
Pick your default model
When asked, pick the model you want as your default.
Capabilities
Image generation
On both minimax and minimax-portal, the MiniMax plugin makes the image-01 model available to the image_generate tool, and it authenticates the same way as the text models, either through MINIMAX_API_KEY or via OAuth.
- Generation from text to images, plus editing of images using a reference subject, each with control over aspect ratio
- A single request can return as many as 9 images, while each edit request takes 1 reference image
- Aspect ratios available:
1:1,16:9,4:3,3:2,2:3,3:4,9:16,21:9
{
agents: {
defaults: {
mediaModels: { image: { primary: "minimax/image-01" } },
},
},
}
Image generation is always sent to MiniMax's own image endpoint (/v1/image_generation) and never consults models.providers.minimax.baseUrl, because that field is what sets the base URL for chat and Anthropic-compatible traffic. To send image generation to the CN endpoint, set MINIMAX_API_HOST=https://api.minimaxi.com; otherwise the global endpoint, https://api.minimax.io, is used by default.
Note
Shared tool parameters, how the provider is chosen, and failover behavior are covered in Image Generation.
Text-to-speech
MiniMax T2A v2 is exposed to tts as a speech provider by the bundled minimax plugin.
- TTS model used by default:
speech-2.8-hd - Voice used by default:
English_expressive_narrator - Model ids shipped in the bundle:
speech-2.8-hd,speech-2.8-turbo,speech-2.6-hd,speech-2.6-turbo,speech-02-hd,speech-02-turbo,speech-01-hd,speech-01-turbo - Order in which auth is resolved:
tts.providers.minimax.apiKey, followed byminimax-portalOAuth/token auth profiles, then Token Plan environment keys (MINIMAX_OAUTH_TOKEN,MINIMAX_CODE_PLAN_KEY,MINIMAX_CODING_API_KEY), and finallyMINIMAX_API_KEY - When no TTS host has been set, OpenClaw falls back to the OAuth host configured for
minimax-portaland removes Anthropic-compatible path suffixes like/anthropic - Ordinary audio attachments remain MP3. For voice-note targets (Feishu, Telegram, and other channels that ask for a voice-note-compatible attachment), MiniMax MP3 audio is transcoded to 48kHz Opus using
ffmpeg, since the Feishu/Lark file API, for example, only acceptsfile_type: "opus"for native audio messages - Fractional
speedandvolare accepted by MiniMax T2A, butpitchgoes out as an integer; OpenClaw truncates fractionalpitchvalues ahead of the API request
| Setting | Env var | Default | Description |
|---|---|---|---|
tts.providers.minimax.baseUrl | MINIMAX_API_HOST | https://api.minimax.io | Host for the MiniMax T2A API. |
tts.providers.minimax.model | MINIMAX_TTS_MODEL | speech-2.8-hd | Identifier of the TTS model. |
tts.providers.minimax.voiceId | MINIMAX_TTS_VOICE_ID | English_expressive_narrator | Voice identifier applied to spoken output. |
tts.providers.minimax.speed | 1.0 | Rate of playback, 0.5..2.0. | |
tts.providers.minimax.vol | 1.0 | Loudness level, (0, 10]. | |
tts.providers.minimax.pitch | 0 | Pitch offset in integer steps, -12..12. |
Music generation
Music generation is registered by the bundled MiniMax plugin via the shared music_generate tool, and it works under both minimax and minimax-portal.
For music and video generation, the origin is taken from the selected provider's baseUrl, with chat path suffixes like /anthropic stripped away. When the URL is missing or empty, https://api.minimax.io is used. A nonempty URL that fails validation causes the request to fail before anything is sent, rather than quietly falling back to another host.
- Music model used by default:
minimax/music-2.6(OAuth:minimax-portal/music-2.6) music-2.6-free,music-cover, andmusic-cover-freeare also supported- Prompt controls:
lyrics,instrumental - Output format:
mp3 - Runs backed by a session detach via the shared task/status flow,
action: "status"included
{
agents: {
defaults: {
mediaModels: { music: { primary: "minimax/music-2.6" } },
},
},
}
Note
Shared tool parameters, provider selection, and failover behavior are covered in Music Generation.
Video generation
Video generation is registered by the bundled MiniMax plugin through the shared video_generate tool, available under both minimax and minimax-portal.
- Video model used by default:
minimax/MiniMax-Hailuo-2.3(OAuth:minimax-portal/MiniMax-Hailuo-2.3) MiniMax-Hailuo-2.3-Fast,MiniMax-Hailuo-02,I2V-01-Director,I2V-01-live, andI2V-01are also supported- Modes: text-to-video and single-image reference flows
resolutionis supported (768Por1080Pon Hailuo 2.3/02 models);aspectRatiois unsupported and gets ignored
{
agents: {
defaults: {
mediaModels: { video: { primary: "minimax/MiniMax-Hailuo-2.3" } },
},
},
}
Note
Shared tool parameters, provider selection, and failover behavior are covered in Video Generation.
Image understanding
Image understanding is registered by the MiniMax plugin on its own, separate from the text catalog:
| Provider ID | Default image model | PDF text extraction |
|---|---|---|
minimax | MiniMax-VL-01 | MiniMax-M2.7 |
minimax-portal | MiniMax-VL-01 | MiniMax-M2.7 |
So automatic media routing is able to call on MiniMax image understanding even though the bundled text-provider catalog also lists M3 image-capable chat refs. For PDF understanding, MiniMax-M2.7 handles text extraction only; no PDF-to-image conversion path is registered by MiniMax.
Web search
A web_search tool is registered by the MiniMax plugin as well, backed by the MiniMax Token Plan search API (/v1/coding_plan/search).
- Provider id:
minimax - Structured results: titles, URLs, snippets, related queries
- Preferred env var:
MINIMAX_CODE_PLAN_KEY - Accepted env aliases:
MINIMAX_CODING_API_KEY,MINIMAX_OAUTH_TOKEN - Compatibility fallback:
MINIMAX_API_KEYwhen it already points at a token-plan credential - Region reuse:
plugins.entries.minimax.config.webSearch.region, thenMINIMAX_API_HOST, then MiniMax provider base URLs - Search stays on provider id
minimax; OAuth CN/global setup can steer region indirectly throughmodels.providers.minimax-portal.baseUrland can provide bearer auth throughMINIMAX_OAUTH_TOKEN
Configuration is found under plugins.entries.minimax.config.webSearch.*.
Note
Full web search configuration and usage are documented in MiniMax Search.
Advanced configuration
Configuration options
| Option | Description |
|---|---|
models.providers.minimax.baseUrl | Prefer https://api.minimax.io/anthropic (Anthropic-compatible); https://api.minimax.io/v1 is optional for OpenAI-compatible payloads |
models.providers.minimax.api | Prefer anthropic-messages; openai-completions is optional for OpenAI-compatible payloads |
models.providers.minimax.apiKey | MiniMax API key (MINIMAX_API_KEY) |
models.providers.minimax.models | Define id, name, reasoning, contextWindow, maxTokens, cost |
agents.defaults.models | Per-model aliases, parameters, and metadata |
agents.defaults.modelPolicy.allow | Optional explicit model allowlist |
models.mode | Keep merge if you want to add MiniMax alongside built-ins |
Thinking defaults
When running on api: "anthropic-messages", OpenClaw injects thinking: { type: "disabled" } for MiniMax M2.x models, unless an earlier wrapper has already set the thinking field in the payload. Doing so keeps M2.x's streaming endpoint from emitting reasoning_content inside OpenAI-style delta chunks, which would otherwise leak internal reasoning into visible output.
MiniMax-M3 is exempt: with thinking disabled, M3 returns an empty content array alongside stop_reason: "end_turn", so OpenClaw drops the implicit disabled default for M3 and, whenever a thinking level is set, forces thinking: { type: "adaptive" } in its place.
Adaptive thinking is required by MiniMax-M3.1-Flash and by the legacy MiniMax-M3.1-Flash-Preview id. The level selected is sent by OpenClaw as output_config.effort; /think low through /think max pick one of their five supported efforts. max is the default, and off is not offered, since MiniMax rejects disabled thinking with HTTP 400. Consult MiniMax's Anthropic API contract.
Thinking levels available for each model family:
| Model family | Levels | Default |
|---|---|---|
MiniMax-M3 | off, adaptive | adaptive |
MiniMax-M3.1-Flash | low, medium, high, xhigh, max | max |
MiniMax-M2.x | off, minimal, low, medium, high | off |
Fast mode
Setting /fast on or params.fastMode: true causes MiniMax-M2.7 to be rewritten as MiniMax-M2.7-highspeed along the Anthropic-compatible stream path (api: "anthropic-messages", provider minimax or minimax-portal).
Fallback example
Best for: making your strongest latest-generation model the primary and failing over to MiniMax M2.7. Opus serves as the concrete primary in the example below; substitute whichever latest-gen primary model you prefer.
{
env: { vars: { MINIMAX_API_KEY: "sk-..." } },
agents: {
defaults: {
models: {
"anthropic/claude-opus-4-6": { alias: "primary" },
"minimax/MiniMax-M2.7": { alias: "minimax" },
},
model: {
primary: "anthropic/claude-opus-4-6",
fallbacks: ["minimax/MiniMax-M2.7"],
},
},
},
}
Coding Plan usage details
- Coding Plan usage API:
https://api.minimaxi.com/v1/token_plan/remainsorhttps://api.minimax.io/v1/token_plan/remains(a coding plan key is required). - For usage polling, the host is derived from
models.providers.minimax-portal.baseUrlormodels.providers.minimax.baseUrlwhen either is configured, which means global setups that usehttps://api.minimax.io/anthropicpollapi.minimax.io. If a base URL is missing or malformed, the CN fallback is kept for compatibility. - OpenClaw maps MiniMax coding-plan usage onto the same
% leftdisplay that other providers use. The rawusage_percent/usagePercentfields from MiniMax represent remaining quota rather than consumed quota, so OpenClaw inverts them. When count-based fields are present, they take precedence. - If the API returns
model_remains, OpenClaw gives preference to the chat-model entry, derives the window label fromstart_time/end_timewhen needed, and puts the selected model name into the plan label, which makes coding-plan windows easier to tell apart. - Usage snapshots treat
minimax,minimax-cn,minimax-portal, andminimax-portal-cnas one and the same MiniMax quota surface, and stored MiniMax OAuth is preferred before falling back to Coding Plan key env vars.
Notes
- Default chat model:
MiniMax-M3. Alternate chat models:MiniMax-M3.1-Flash,MiniMax-M2.7,MiniMax-M2.7-highspeed - Model definitions for M3 and both M2.7 variants are written by onboarding and by direct API-key setup
- Image understanding relies on the plugin-owned
MiniMax-VL-01media provider - For exact cost tracking, update the pricing values in
models.json - Run
openclaw models listto confirm the current provider id, then switch usingopenclaw models set minimax/MiniMax-M3oropenclaw models set minimax-portal/MiniMax-M3
Note
Provider rules are documented in Model providers.
Troubleshooting
Unknown model: minimax/MiniMax-M3
Typically this indicates that the MiniMax provider is not configured: no matching provider entry exists, and no MiniMax auth profile or env key was found. To fix it:
- Start
openclaw configureand pick one of the MiniMax auth options, or - Insert the corresponding
models.providers.minimaxormodels.providers.minimax-portalblock by hand, or - Configure
MINIMAX_API_KEY,MINIMAX_OAUTH_TOKEN, or a MiniMax auth profile, which lets the matching provider be injected.
The model id must match case exactly:
- API-key route:
minimax/MiniMax-M3,minimax/MiniMax-M2.7, orminimax/MiniMax-M2.7-highspeed - OAuth route:
minimax-portal/MiniMax-M3,minimax-portal/MiniMax-M2.7, orminimax-portal/MiniMax-M2.7-highspeed
After that, verify again using:
openclaw models list
Note
Further assistance: Troubleshooting and FAQ.
Related
-
Model selection, Picking providers, model refs, and how failover behaves.
-
Image generation, Parameters shared by the image tool, plus provider choice.
-
Music generation, Parameters shared by the music tool, plus provider choice.
-
Video generation, Parameters shared by the video tool, plus provider choice.
-
MiniMax Search, Configuring web search through the MiniMax Token Plan.
-
Troubleshooting, General fixes and common questions.