Agent Skills: MiniMax API

MiniMax API for AI models. Use when user mentions "MiniMax", "Chinese

UncategorizedID: vm0-ai/vm0-skills/minimax

Install this agent skill to your local

pnpm dlx add-skill https://github.com/vm0-ai/vm0-skills/tree/HEAD/minimax

Skill Files

Browse the full folder contents for minimax.

Download Skill

Loading file tree…

minimax/SKILL.md

Skill Metadata

Name
minimax
Description
MiniMax API for AI models. Use when user mentions "MiniMax", "Chinese

MiniMax API

Use the MiniMax API via direct curl calls for AI chat completion, text-to-speech, and video generation.

Official docs: https://platform.minimax.io/docs


When to Use

Use this skill when you need to:

  • Chat completion with Chinese-optimized LLM (MiniMax-M1/M2)
  • Text-to-speech with natural voices and emotion control
  • Video generation from text prompts (T2V)
  • Image-to-video conversion (I2V)

Prerequisites

  1. Sign up at MiniMax Platform
  2. Go to Account Management > API Keys to create an API key
  3. Note: Global users should use api.minimaxi.chat (with extra "i")
export MINIMAX_TOKEN="your-api-key"

API Hosts

| Region | Base URL | |--------|----------| | China | https://api.minimax.io | | Global | https://api.minimaxi.chat |


How to Use

All examples below assume you have MINIMAX_TOKEN set.

Authentication uses Bearer token in the Authorization header.


1. Basic Chat Completion

Send a chat message:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-Text-01",
  "messages": [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Hello, who are you?"}
  ]
}

Then run:

curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0].message.content'

Available models:

  • MiniMax-M2: Reasoning model (best quality)
  • MiniMax-M1: Reasoning model (balanced)
  • MiniMax-Text-01: Standard model (fastest)

2. Chat with Temperature Control

Adjust creativity:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-Text-01",
  "messages": [
    {"role": "user", "content": "Write a short poem about AI."}
  ],
  "temperature": 0.7,
  "max_tokens": 200
}

Then run:

curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0].message.content'

Parameters:

  • temperature (0-1): Higher = more creative
  • top_p (0-1, default 0.95): Sampling diversity
  • max_tokens: Maximum output tokens

3. Streaming Response

Get real-time output:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-M1",
  "messages": [
    {"role": "user", "content": "Explain quantum computing."}
  ],
  "stream": true
}

Then run:

curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json

Streaming is recommended for reasoning models (M1/M2).


4. Reasoning Model (M1/M2)

Use reasoning models for complex tasks:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-M1",
  "messages": [
    {"role": "user", "content": "Solve step by step: A train travels 120km in 2 hours. What is its average speed in m/s?"}
  ],
  "stream": true
}

Then run:

curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json

Response includes reasoning_content field with thought process.


5. Text-to-Speech (Basic)

Convert text to speech:

Write to /tmp/minimax_request.json:

{
  "model": "speech-02-hd",
  "text": "Hello, this is a test of MiniMax text to speech.",
  "voice_id": "male-qn-qingse",
  "speed": 1.0,
  "format": "mp3"
}

Then run:

curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output speech.mp3

6. TTS with Emotion

Add emotion to speech (speech-02 models):

Write to /tmp/minimax_request.json:

{
  "model": "speech-02-hd",
  "text": "I am so happy to meet you today!",
  "voice_id": "female-shaonv",
  "emotion": "happy",
  "speed": 1.0,
  "format": "mp3"
}

Then run:

curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output happy_speech.mp3

Emotion options: happy, sad, angry, fearful, disgusted, surprised, neutral


7. TTS with Audio Settings

Fine-tune audio output:

Write to /tmp/minimax_request.json:

{
  "model": "speech-02-hd",
  "text": "High quality audio test.",
  "voice_id": "male-qn-qingse",
  "speed": 1.0,
  "vol": 1.0,
  "pitch": 0,
  "audio_sample_rate": 32000,
  "bitrate": 128000,
  "format": "mp3"
}

Then run:

curl -s "https://api.minimax.io/v1/t2a_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json --output hq_speech.mp3

TTS models:

  • speech-02-hd: High definition (best quality)
  • speech-02-turbo: Fast generation
  • speech-01-hd: Previous gen HD
  • speech-01-turbo: Previous gen fast

8. Text-to-Video (T2V)

Generate video from text prompt:

Write to /tmp/minimax_request.json:

{
  "model": "T2V-01-Director",
  "prompt": "A cat playing with a ball of yarn [Static shot].",
  "duration": 6,
  "resolution": "1080P"
}

Then run:

curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'

Video generation is async - returns a task ID to poll for completion.


9. T2V with Camera Control

Control camera movement in videos:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "A person walking through a forest [Tracking shot], then stops to look at a bird [Push in].",
  "duration": 6,
  "resolution": "1080P"
}

Then run:

curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'

Camera commands (in brackets):

  • Movement: Truck left/right, Pan left/right, Push in/Pull out
  • Vertical: Pedestal up/down, Tilt up/down
  • Zoom: Zoom in/out
  • Special: Shake, Tracking shot, Static shot

Combine with [Pan left, Pedestal up] (max 3 simultaneous).


10. Image-to-Video (I2V)

Generate video from an image:

Note: For I2V, use MiniMax-Hailuo-2.3 or S2V-01 model which supports first_frame_image. The T2V-01-Director model is text-to-video only.

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-Hailuo-2.3",
  "prompt": "The scene comes to life with gentle movement [Static shot].",
  "first_frame_image": "https://example.com/image.jpg",
  "duration": 6,
  "resolution": "1080P"
}

Then run:

curl -s "https://api.minimax.io/v1/video_generation" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.task_id'

Provide first_frame_image as URL or base64-encoded image.


11. Function Calling (Tools)

Use tools with chat:

Write to /tmp/minimax_request.json:

{
  "model": "MiniMax-Text-01",
  "messages": [
    {"role": "user", "content": "What is the weather in Beijing?"}
  ],
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get weather for a location",
        "parameters": {
          "type": "object",
          "properties": {
            "location": {"type": "string", "description": "City name"}
          },
          "required": ["location"]
        }
      }
    }
  ],
  "tool_choice": "auto"
}

Then run:

curl -s "https://api.minimax.io/v1/text/chatcompletion_v2" -X POST -H "Authorization: Bearer $MINIMAX_TOKEN" -H "Content-Type: application/json" -d @/tmp/minimax_request.json | jq '.choices[0]'

Response Format

Chat Completion

{
  "id": "string",
  "choices": [{
  "message": {
  "role": "assistant",
  "content": "Response text",
  "reasoning_content": "Thought process (M1/M2 only)"
  },
  "finish_reason": "stop"
  }],
  "usage": {
  "prompt_tokens": 10,
  "completion_tokens": 50,
  "total_tokens": 60
  }
}

Guidelines

  1. Use correct host: China uses api.minimax.io, global uses api.minimaxi.chat
  2. Streaming for reasoning: M1/M2 models work best with stream: true
  3. Camera syntax: Video commands go in [brackets] within prompts
  4. Emotion in TTS: Only works with speech-02-* and speech-01-* models
  5. Async video: Video generation returns task ID - poll for completion
  6. Chinese optimized: MiniMax excels at Chinese language tasks