MiniMax Provider Setup and Capabilities in OpenClaw

This page covers the MiniMax plugin for OpenClaw, detailing its two providers and capabilities including chat, image, music, video, speech, and web search. It is for users who want to integrate MiniMax models into their workflows.

Read this when

  • You want MiniMax models in OpenClaw
  • You need MiniMax setup guidance

The bundled minimax plugin sets up two providers and five capabilities: chat, 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

MiniMax Coding Plan referral link (10% off): MiniMax Coding Plan

Built-in catalog

ModelTypeDescription
MiniMax-M3Chat (reasoning)Default hosted reasoning model
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

The auth path determines the model refs: minimax/<model> applies to API-key configurations, while minimax-portal/<model> is used for OAuth configurations.

Getting started

OAuth (Coding Plan)

Best for: quick setup with MiniMax Coding Plan via OAuth, no API key required.

International

Run onboarding

openclaw onboard --auth-choice minimax-global-oauth

The provider base URL that results 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

This yields api.minimaxi.com as the provider base URL.

Verify the model is available

openclaw models list --provider minimax-portal

Note

The minimax-portal provider id is what OAuth setups rely on. Model refs take the shape minimax-portal/MiniMax-M3.

API key

Best for: hosted MiniMax with Anthropic-compatible API.

International

Run onboarding

openclaw onboard --auth-choice minimax-global-api

Here, api.minimax.io gets 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

For this region, api.minimaxi.com becomes 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"],
            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

When streaming, MiniMax-M2.x's Anthropic-compatible endpoint sends reasoning_content inside OpenAI-style delta chunks rather than native Anthropic thinking blocks. That leaks internal reasoning into visible output when thinking stays enabled implicitly. Unless you explicitly set thinking, OpenClaw keeps M2.x thinking off by default. MiniMax-M3 (and forward-compatible M3.x) is different: M3 delivers proper Anthropic thinking blocks and needs thinking active to show visible content, so OpenClaw leaves M3 on the provider's adaptive thinking path. See the Thinking defaults section under Advanced configuration below.

Note

API-key setups use the minimax provider id. Model refs follow the form minimax/MiniMax-M3.

Configure via openclaw configure

Launch the wizard

openclaw configure

Select Model/auth

From the menu, pick Model/auth.

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 prompted, choose your default model.

Capabilities

Image generation

On both minimax and minimax-portal, the MiniMax plugin registers the image-01 model for the image_generate tool, sharing the same MINIMAX_API_KEY or OAuth auth that the text models use.

  • Text-to-image generation plus image-to-image editing (subject reference), each offering aspect ratio control
  • A single request can yield up to 9 images, while each edit request accepts 1 reference image
  • Supported aspect ratios: 1:1, 16:9, 4:3, 3:2, 2:3, 3:4, 9:16, 21:9
{
  agents: {
    defaults: {
      mediaModels: { image: { primary: "minimax/image-01" } },
    },
  },
}

For image generation, MiniMax's dedicated image endpoint (/v1/image_generation) is always used, and models.providers.minimax.baseUrl is disregarded because that setting configures the chat/Anthropic-compatible base URL. To route image generation through the CN endpoint, set MINIMAX_API_HOST=https://api.minimaxi.com; the default global endpoint is https://api.minimax.io.

Note

For shared tool parameters, provider selection, and failover behavior, refer to Image Generation.

Text-to-speech

The bundled minimax plugin registers MiniMax T2A v2 as a speech provider for tts.

  • Default TTS model: speech-2.8-hd
  • Default voice: English_expressive_narrator
  • Bundled model ids: 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
  • Auth resolution order: 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 is configured, OpenClaw reuses the configured minimax-portal OAuth host and removes Anthropic-compatible path suffixes like /anthropic
  • Regular audio attachments remain MP3. For voice-note targets (Feishu, Telegram, and other channels requesting a voice-note-compatible attachment), MiniMax MP3 is transcoded to 48kHz Opus using ffmpeg, since the Feishu/Lark file API, for instance, only accepts file_type: "opus" for native audio messages
  • MiniMax T2A supports fractional speed and vol, but pitch is passed as an integer; OpenClaw truncates fractional pitch values before making the API request
SettingEnv varDefaultDescription
tts.providers.minimax.baseUrlMINIMAX_API_HOSThttps://api.minimax.ioMiniMax T2A API host.
tts.providers.minimax.modelMINIMAX_TTS_MODELspeech-2.8-hdTTS model id.
tts.providers.minimax.voiceIdMINIMAX_TTS_VOICE_IDEnglish_expressive_narratorVoice id used for speech output.
tts.providers.minimax.speed1.0Playback speed, 0.5..2.0.
tts.providers.minimax.vol1.0Volume, (0, 10].
tts.providers.minimax.pitch0Integer pitch shift, -12..12.

Music generation

The shared music_generate tool is how the bundled MiniMax plugin handles music generation, serving both minimax and minimax-portal.

  • Music model used by default: minimax/music-2.6 (OAuth: minimax-portal/music-2.6)
  • Additional support covers music-2.6-free, music-cover, and music-cover-free
  • Prompt adjustments: lyrics, instrumental
  • Output arrives as mp3
  • Runs backed by sessions detach via the standard task/status mechanism, which includes action: "status"
{
  agents: {
    defaults: {
      mediaModels: { music: { primary: "minimax/music-2.6" } },
    },
  },
}

Note

For shared tool parameters, provider selection, and failover behavior, refer to Music Generation.

Video generation

Video generation in the bundled MiniMax plugin is registered through the shared video_generate tool, covering both minimax and minimax-portal.

  • Video model by default: minimax/MiniMax-Hailuo-2.3 (OAuth: minimax-portal/MiniMax-Hailuo-2.3)
  • Also handles MiniMax-Hailuo-2.3-Fast, MiniMax-Hailuo-02, I2V-01-Director, I2V-01-live, and I2V-01
  • Modes: text-to-video plus 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

For shared tool parameters, provider selection, and failover behavior, see Video Generation.

Image understanding

Image understanding is registered by the MiniMax plugin apart from the text catalog:

Provider IDDefault image modelPDF text extraction
minimaxMiniMax-VL-01MiniMax-M2.7
minimax-portalMiniMax-VL-01MiniMax-M2.7

This separation is why automatic media routing can rely on MiniMax image understanding even when the bundled text-provider catalog also lists M3 image-capable chat refs. For PDF understanding, MiniMax-M2.7 handles text extraction only; MiniMax does not register any PDF-to-image conversion path.

The MiniMax plugin additionally registers web_search through 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 remains on provider id minimax; OAuth CN/global setup can influence region indirectly through models.providers.minimax-portal.baseUrl and can supply bearer auth via MINIMAX_OAUTH_TOKEN

Configuration is placed under plugins.entries.minimax.config.webSearch.*.

Note

Full web search configuration and usage are covered in MiniMax Search.

Advanced configuration

Configuration options

OptionDescription
models.providers.minimax.baseUrlFavor https://api.minimax.io/anthropic (Anthropic-compatible); https://api.minimax.io/v1 remains available for OpenAI-compatible payloads
models.providers.minimax.apiPrefer anthropic-messages; openai-completions is not mandatory for OpenAI-compatible payloads
models.providers.minimax.apiKeyMiniMax API key (MINIMAX_API_KEY)
models.providers.minimax.modelsSpecify id, name, reasoning, contextWindow, maxTokens, cost
agents.defaults.modelsAliases, parameters, and metadata tailored per model
agents.defaults.modelPolicy.allowOptional explicit model allowlist
models.modeRetain merge if MiniMax should coexist with built-ins

Thinking defaults

For api: "anthropic-messages", OpenClaw inserts thinking: { type: "disabled" } on MiniMax M2.x models, unless a prior wrapper already populated the thinking field in the payload. This step stops M2.x's streaming endpoint from sending reasoning_content in OpenAI-style delta chunks, which would otherwise expose internal reasoning in visible output.

MiniMax-M3 (and M3.x) is an exception: M3 delivers an empty content array with stop_reason: "end_turn" when thinking is off, so OpenClaw drops the implicit disabled default for M3 and, whenever a thinking level is specified, enforces thinking: { type: "adaptive" } instead.

Thinking levels differ by model family:

Model familyLevelsDefault
MiniMax-M3off, adaptiveadaptive
MiniMax-M2.xoff, minimal, low, medium, highoff

Fast mode

On the Anthropic-compatible stream path (api: "anthropic-messages", provider minimax or minimax-portal), /fast on or params.fastMode: true converts MiniMax-M2.7 into MiniMax-M2.7-highspeed.

Fallback example

Best for: designate your strongest latest-generation model as primary, with MiniMax M2.7 as the fallback. The example below picks Opus as a concrete primary; substitute your preferred latest-gen primary model.

{
  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

  • For the Coding Plan usage endpoint, call https://api.minimaxi.com/v1/token_plan/remains or https://api.minimax.io/v1/token_plan/remains; a coding plan key is mandatory.
  • When polling usage, the host is taken from models.providers.minimax-portal.baseUrl or models.providers.minimax.baseUrl if either is set, meaning global configurations that rely on https://api.minimax.io/anthropic will query api.minimax.io. If the base URL is absent or improperly formatted, the CN fallback stays in place for backward compatibility.
  • OpenClaw maps MiniMax coding-plan usage into the same % left format other providers show. Since MiniMax's native usage_percent and usagePercent values represent remaining quota rather than what's been consumed, OpenClaw flips them. Whenever count-based fields are available, they take precedence.
  • If the API responds with model_remains, OpenClaw picks the chat-model entry, builds the window label from start_time or end_time as needed, and appends the chosen model name to the plan label, making coding-plan windows simpler to tell apart.
  • Usage snapshots treat minimax, minimax-cn, minimax-portal, and minimax-portal-cn as one MiniMax quota surface, and they favor stored MiniMax OAuth credentials over Coding Plan key environment variables when both exist.

Notes

  • Default chat model: MiniMax-M3. Other chat models: MiniMax-M2.7, MiniMax-M2.7-highspeed
  • Setup flows for onboarding and direct API keys write model definitions covering M3 plus both M2.7 variants
  • Image understanding relies on the MiniMax-VL-01 media provider owned by the plugin
  • To keep cost tracking precise, refresh pricing values in models.json
  • Run openclaw models list to verify the current provider id, then switch using openclaw models set minimax/MiniMax-M3 or openclaw models set minimax-portal/MiniMax-M3

Note

Provider rules live in Model providers.

Troubleshooting

Unknown model: minimax/MiniMax-M3

That error typically signals the MiniMax provider isn't set up, meaning no provider entry matches and no MiniMax auth profile or env key was found. Resolve it by:

  • Executing openclaw configure and picking a MiniMax auth option, or
  • Inserting the corresponding models.providers.minimax or models.providers.minimax-portal block by hand, or
  • Defining MINIMAX_API_KEY, MINIMAX_OAUTH_TOKEN, or a MiniMax auth profile so the right provider gets injected.

The model id must match exactly, including case:

  • 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

Then verify again with:

openclaw models list

Note

Further assistance: Troubleshooting and FAQ.

  • Model selection, How providers, model refs, and failover are chosen.

  • Image generation, Image tool parameters shared across providers and how the provider is picked.

  • Music generation, Music tool parameters shared across providers and how the provider is picked.

  • Video generation, Video tool parameters shared across providers and how the provider is picked.

  • MiniMax Search, Web search setup through the MiniMax Token Plan.

  • Troubleshooting, General fixes and frequently asked questions.

2,224 words · updated Aug 12, 2026