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 IDAuthCapabilities
minimaxAPI keyText, image generation, music generation, video generation, image understanding, speech, web search
minimax-portalOAuthText, 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

ModelTypeDescription
MiniMax-M3Chat (reasoning)Default hosted reasoning model
MiniMax-M3.1-FlashChat (reasoning)Adjustable effort, 1M context
MiniMax-M3.1-Flash-PreviewChat (reasoning)Legacy Preview id for saved configurations
MiniMax-M2.7Chat (reasoning)Previous hosted reasoning model
MiniMax-M2.7-highspeedChat (reasoning)Faster M2.7 reasoning tier
MiniMax-VL-01VisionImage understanding model
image-01Image generationText-to-image and image-to-image editing
music-2.6Music generationDefault music model
MiniMax-Hailuo-2.3Video generationText-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 form minimax-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_content as OpenAI-style delta chunks. If thinking stays enabled implicitly, internal reasoning therefore leaks into visible output. Unless you set thinking yourself 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 form minimax/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 choiceDescription
minimax-global-oauthInternational OAuth (Coding Plan)
minimax-cn-oauthChina OAuth (Coding Plan)
minimax-global-apiInternational API key
minimax-cn-apiChina 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 by minimax-portal OAuth/token auth profiles, then Token Plan environment keys (MINIMAX_OAUTH_TOKEN, MINIMAX_CODE_PLAN_KEY, MINIMAX_CODING_API_KEY), and finally MINIMAX_API_KEY
  • When no TTS host has been set, OpenClaw falls back to the OAuth host configured for minimax-portal and 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 accepts file_type: "opus" for native audio messages
  • Fractional speed and vol are accepted by MiniMax T2A, but pitch goes out as an integer; OpenClaw truncates fractional pitch values ahead of the API request
SettingEnv varDefaultDescription
tts.providers.minimax.baseUrlMINIMAX_API_HOSThttps://api.minimax.ioHost for the MiniMax T2A API.
tts.providers.minimax.modelMINIMAX_TTS_MODELspeech-2.8-hdIdentifier of the TTS model.
tts.providers.minimax.voiceIdMINIMAX_TTS_VOICE_IDEnglish_expressive_narratorVoice identifier applied to spoken output.
tts.providers.minimax.speed1.0Rate of playback, 0.5..2.0.
tts.providers.minimax.vol1.0Loudness level, (0, 10].
tts.providers.minimax.pitch0Pitch 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, and music-cover-free are 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, and I2V-01 are also supported
  • Modes: text-to-video and single-image reference flows
  • resolution is supported (768P or 1080P on Hailuo 2.3/02 models); aspectRatio is 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 IDDefault image modelPDF text extraction
minimaxMiniMax-VL-01MiniMax-M2.7
minimax-portalMiniMax-VL-01MiniMax-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.

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_KEY when it already points at a token-plan credential
  • Region reuse: plugins.entries.minimax.config.webSearch.region, then MINIMAX_API_HOST, then MiniMax provider base URLs
  • Search stays on provider id minimax; OAuth CN/global setup can steer region indirectly through models.providers.minimax-portal.baseUrl and can provide bearer auth through MINIMAX_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

OptionDescription
models.providers.minimax.baseUrlPrefer https://api.minimax.io/anthropic (Anthropic-compatible); https://api.minimax.io/v1 is optional for OpenAI-compatible payloads
models.providers.minimax.apiPrefer anthropic-messages; openai-completions is optional for OpenAI-compatible payloads
models.providers.minimax.apiKeyMiniMax API key (MINIMAX_API_KEY)
models.providers.minimax.modelsDefine id, name, reasoning, contextWindow, maxTokens, cost
agents.defaults.modelsPer-model aliases, parameters, and metadata
agents.defaults.modelPolicy.allowOptional explicit model allowlist
models.modeKeep 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 familyLevelsDefault
MiniMax-M3off, adaptiveadaptive
MiniMax-M3.1-Flashlow, medium, high, xhigh, maxmax
MiniMax-M2.xoff, minimal, low, medium, highoff

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/remains or https://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.baseUrl or models.providers.minimax.baseUrl when either is configured, which means global setups that use https://api.minimax.io/anthropic poll api.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 % left display that other providers use. The raw usage_percent / usagePercent fields 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 from start_time / end_time when 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, and minimax-portal-cn as 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-01 media provider
  • For exact cost tracking, update the pricing values in models.json
  • Run openclaw models list to confirm the current provider id, then switch using openclaw models set minimax/MiniMax-M3 or openclaw 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 configure and pick one of the MiniMax auth options, or
  • Insert the corresponding models.providers.minimax or models.providers.minimax-portal block 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, or minimax/MiniMax-M2.7-highspeed
  • OAuth route: minimax-portal/MiniMax-M3, minimax-portal/MiniMax-M2.7, or minimax-portal/MiniMax-M2.7-highspeed

After that, verify again using:

openclaw models list

Note

Further assistance: Troubleshooting and FAQ.

2,679 words · updated Oct 26, 2026