--- name: mmx description: MiniMax CLI (mmx) 技能索引。提供文本生成、语音合成、图像生成、视频生成、音乐生成、网络搜索、视觉理解等 AI 能力的命令行接口。当任务涉及 MiniMax API 调用、内容生成、或需要 AI 多模态能力时使用此技能。 --- # MiniMax CLI (mmx) Skill MiniMax AI 多模态命令行工具,整合了 Text Generation、Speech Synthesis、Image Generation、Video Generation、Music Generation、Web Search、Vision 等能力。 ## Global Flags | Flag | 说明 | |------|------| | `--api-key ` | API Key (覆盖其他认证方式) | | `--region ` | API 区域: `global` (默认) / `cn` | | `--base-url ` | API Base URL (覆盖 region) | | `--output ` | 输出格式: `text` / `json` | | `--quiet` | 抑制非必要输出 | | `--verbose` | 打印 HTTP 请求/响应详情 | | `--timeout ` | 请求超时 (默认: 300) | | `--no-color` | 禁用 ANSI 颜色和动画 | | `--dry-run` | 显示将要执行的操作但不实际执行 | | `--non-interactive` | 禁用交互式提示 (CI/agent 模式) | ## Resource Index ### 1. auth - 认证 | Command | 说明 | |---------|------| | `auth login` | 通过 OAuth 或 API Key 认证 | | `auth status` | 显示当前认证状态和配额快照 | | `auth refresh` | 手动刷新 OAuth Token | | `auth logout` | 撤销 Token 并清除存储的凭据 | #### auth login ``` mmx auth login [--api-key ] [--recommend] [--region=global|cn] ``` - `--api-key ` 直接保存 API Key - `--recommend` 直接进入 OAuth (可配合 `--region=` 跳过区域选择) #### auth status ``` mmx auth status ``` #### auth refresh ``` mmx auth refresh ``` #### auth logout ``` mmx auth logout [--yes] [--dry-run] ``` - `--yes` 跳过确认提示 --- ### 2. text - 文本生成 | Command | 说明 | |---------|------| | `text chat` | 发送聊天补全 (MiniMax Messages API) | | `text repl` | 启动交互式多轮对话会话 | #### text chat ``` mmx text chat --message [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--model ` | 模型 ID | `MiniMax-M2.7` | | `--message ` | 消息文本 (可重复, 前缀 `role:` 设置角色) | - | | `--messages-file ` | JSON 文件包含消息数组 (`-` 表示 stdin) | - | | `--system ` | 系统提示词 | - | | `--max-tokens ` | 最大生成 Token 数 | 4096 | | `--temperature ` | 采样温度 (0.0, 1.0] | - | | `--top-p ` | 核采样阈值 | - | | `--stream` | 流式响应 (TTY 中默认开启) | - | | `--tool ` | 工具定义 (可重复) | - | **Examples:** ```bash mmx text chat --message "What is MiniMax?" mmx text chat --model MiniMax-M2.7-highspeed --system "You are a coding assistant." --message "Write fizzbuzz in Python" cat conversation.json | mmx text chat --messages-file - --stream ``` #### text repl ``` mmx text repl [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--model ` | 模型 ID | `MiniMax-M2.7` | | `--system ` | 系统提示词 | - | | `--max-tokens ` | 每响应最大 Token 数 | 4096 | | `--temperature ` | 采样温度 (0.0, 1.0] | - | | `--top-p ` | 核采样阈值 | - | **Examples:** ```bash mmx text repl mmx text repl --model MiniMax-M2.7-highspeed --system "You are a coding assistant." ``` --- ### 3. speech - 语音合成 | Command | 说明 | |---------|------| | `speech synthesize` | 同步 TTS, 最多 10k 字符 (speech-2.8-hd / 2.6 / 02) | | `speech generate` | synthesize 的别名 | | `speech voices` | 列出可用的系统声音 | #### speech synthesize ``` mmx speech synthesize --text [--out ] [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--model ` | 模型 ID | `speech-2.8-hd` | | `--text ` | 要合成的文本 | - | | `--text-file ` | 从文件读取文本 (`-` 表示 stdin) | - | | `--voice ` | 声音 ID | `English_expressive_narrator` | | `--speed ` | 语速倍数 | - | | `--volume ` | 音量 | - | | `--pitch ` | 音调调整 | - | | `--format ` | 音频格式: `mp3`, `pcm`, `flac`, `wav`, `pcmu_raw`, `pcmu_wav`, `opus` | `mp3` | | `--sample-rate ` | 采样率 | `32000` | | `--bitrate ` | 比特率 | `128000` | | `--channels ` | 声道数 | `1` | | `--language ` | 语言增强 | - | | `--subtitles` | 包含字幕时间数据 | - | | `--pronunciation ` | 自定义发音 (可重复) | - | | `--out ` | 保存音频到文件 | - | | `--stream` | 流式输出原始音频到 stdout | - | **Examples:** ```bash mmx speech synthesize --text "Hello, world!" mmx speech synthesize --text "Hello, world!" --out hello.mp3 echo "Breaking news." | mmx speech synthesize --text-file - --out news.mp3 mmx speech synthesize --text "Stream" --stream | mpv --no-terminal - ``` #### speech voices ``` mmx speech voices [--language ] ``` | Flag | 说明 | |------|------| | `--language ` | 按语言过滤声音 (如 `english`, `korean`, `japanese`) | **Examples:** ```bash mmx speech voices mmx speech voices --language english mmx speech voices --output json ``` --- ### 4. image - 图像生成 | Command | 说明 | |---------|------| | `image generate` | 生成图像 (image-01 / image-01-live) | #### image generate ``` mmx image generate --prompt [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--prompt ` | 图像描述 | - | | `--aspect-ratio ` | 宽高比 (如 `16:9`, `1:1`) | - | | `--n ` | 生成图像数量 | `1` | | `--seed ` | 随机种子 (相同 seed + prompt = 相同输出) | - | | `--width ` | 自定义宽度 [512, 2048], 必须是 8 的倍数 | - | | `--height ` | 自定义高度 [512, 2048], 必须是 8 的倍数 | - | | `--prompt-optimizer` | 自动优化提示词 | - | | `--aigc-watermark` | 在输出图像中嵌入 AI 生成内容水印 | - | | `--subject-ref ` | 主体参考 (角色一致性): `type=character,image=path-or-url` | - | | `--out ` | 保存图像到指定路径 (仅单张) | - | | `--response-format ` | 响应格式: `url` (下载), `base64` (嵌入) | `url` | | `--out-dir ` | 下载图像到目录 | - | | `--out-prefix ` | 文件名前缀 | `image` | **Examples:** ```bash mmx image generate --prompt "A cat in a spacesuit on Mars" --aspect-ratio 16:9 mmx image generate --prompt "Logo design" --n 3 --out-dir ./generated/ mmx image generate --prompt "Mountain landscape" --quiet mmx image generate --prompt "A castle" --seed 42 mmx image generate --prompt "Wide landscape" --width 1920 --height 1080 mmx image generate --prompt "sunset" --prompt-optimizer --aigc-watermark mmx image generate --prompt "A cat" --out /tmp/cat.jpg mmx image generate --prompt "A cat" --response-format base64 ``` --- ### 5. video - 视频生成 | Command | 说明 | |---------|------| | `video generate` | 生成视频 (T2V/I2V/SEF/S2V) | | `video task get` | 查询视频任务状态 | | `video download` | 通过 File ID 下载完成的视频 | #### video generate ``` mmx video generate --prompt [flags] ``` | Flag | 说明 | |------|------| | `--model ` | 模型: T2V 用 `MiniMax-Hailuo-2.3`; I2V 用 `MiniMax-Hailuo-2.3` (默认) 或 `MiniMax-Hailuo-2.3-Fast` (需要 `--first-frame`); 有 `--last-frame` 切换到 `Hailuo-02`; 有 `--subject-image` 切换到 `S2V-01` | | `--prompt ` | 视频描述 | | `--first-frame ` | 首帧图像 (本地路径或 URL) | | `--last-frame ` | 末帧图像 (需要 `--first-frame`, 启用 SEF 模式) | | `--subject-image ` | 主体参考图像 (角色一致性) | | `--callback-url ` | 完成通知的 Webhook URL | | `--download ` | 完成后保存视频到文件 | | `--no-wait` / `--async` | 立即返回任务 ID,不等待 | | `--poll-interval ` | 轮询间隔 (默认: 5) | **Video Modes:** | Mode | 说明 | 模型 | |------|------|------| | T2V | 文本转视频 | Hailuo-2.3 | | I2V | 图像转视频 | Hailuo-2.3 (默认) / Hailuo-2.3-Fast | | SEF | 首尾帧插值 | Hailuo-02 | | S2V | 主体一致性视频 | S2V-01 | **Examples:** ```bash mmx video generate --prompt "A man reads a book. Static shot." mmx video generate --prompt "Ocean waves at sunset." --download sunset.mp4 mmx video generate --prompt "A robot painting." --async --quiet mmx video generate --prompt "Walk forward" --first-frame start.jpg --last-frame end.jpg mmx video generate --prompt "A detective walking" --subject-image character.jpg ``` #### video task get ``` mmx video task get --task-id ``` | Flag | 说明 | |------|------| | `--task-id ` | 视频生成任务 ID | **Examples:** ```bash mmx video task get --task-id 106916112212032 mmx video task get --task-id 106916112212032 --output json ``` #### video download ``` mmx video download --file-id --out ``` | Flag | 说明 | |------|------| | `--file-id ` | 要下载的文件 ID | | `--out ` | 输出文件路径 | **Examples:** ```bash mmx video download --file-id 176844028768320 --out video.mp4 ``` --- ### 6. music - 音乐生成 | Command | 说明 | |---------|------| | `music generate` | 生成歌曲 (music-2.6 / music-2.5+ / music-2.5) | | `music cover` | 基于参考音频生成歌曲的翻唱版本 (music-cover) | #### music generate ``` mmx music generate --prompt (--lyrics | --instrumental | --lyrics-optimizer) [--out ] [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--prompt ` | 音乐风格描述 (最多 2000 字符) | - | | `--lyrics ` | 带结构标签的歌词 | - | | `--lyrics-file ` | 从文件读取歌词 (`-` 表示 stdin) | - | | `--lyrics-optimizer` | 从 prompt 自动生成歌词 (不能与 `--lyrics` 或 `--instrumental` 共用) | - | | `--instrumental` | 生成器乐音乐 | - | | `--vocals ` | 人声风格, 如 "warm male baritone" | - | | `--genre ` | 音乐流派, 如 folk, pop, jazz, electronic | - | | `--mood ` | 情绪, 如 warm, melancholic, uplifting | - | | `--instruments ` | 要突出的乐器 | - | | `--tempo ` | 节奏描述, 如 fast, slow, moderate | - | | `--bpm ` | 精确 BPM | - | | `--key ` | 调性, 如 C major, A minor | - | | `--avoid ` | 要避免的元素 | - | | `--use-case ` | 使用场景, 如 "background music for video" | - | | `--structure ` | 歌曲结构 | - | | `--references ` | 参考曲目或艺术家 | - | | `--extra ` | 额外细化需求 | - | | `--model ` | 模型: `music-2.6` (默认), `music-2.5+`, `music-2.5` | `music-2.6` | | `--output-format ` | 返回格式: `hex` (默认, 保存到文件) 或 `url` (24h 过期) | `hex` | | `--aigc-watermark` | 嵌入 AI 生成内容水印 | - | | `--format ` | 音频格式: `mp3`, `wav`, `pcm` | `mp3` | | `--sample-rate ` | 采样率 | `44100` | | `--bitrate ` | 比特率 | `256000` | | `--stream` | 流式输出原始音频到 stdout | - | | `--out ` | 保存音频到文件 | - | **Lyrics 结构标签:** `[Intro]`, `[Verse]`, `[Pre Chorus]`, `[Chorus]`, `[Interlude]`, `[Bridge]`, `[Outro]`, `[Post Chorus]`, `[Transition]`, `[Break]`, `[Hook]`, `[Build Up]`, `[Inst]`, `[Solo]` **Examples:** ```bash mmx music generate --prompt "Upbeat pop" --lyrics "La la la..." --out summer.mp3 mmx music generate --prompt "Indie folk, melancholic" --lyrics-file song.txt --out my_song.mp3 mmx music generate --prompt "Upbeat pop about summer" --lyrics-optimizer --out summer.mp3 mmx music generate --prompt "Cinematic orchestral, building tension" --instrumental --out bgm.mp3 mmx music generate --prompt "Upbeat pop" --lyrics "La la la..." --output-format url mmx music generate --prompt "Warm morning folk" --vocals "male and female duet, harmonies in chorus" --instruments "acoustic guitar, piano" --bpm 95 --out duet.mp3 ``` #### music cover ``` mmx music cover --prompt (--audio | --audio-file ) [--lyrics ] [--out ] [flags] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--model ` | 模型: `music-cover` (默认) | `music-cover` | | `--prompt ` | 目标翻唱风格, 如 "Indie folk, acoustic guitar, warm male vocal" | - | | `--audio ` | 参考音频 URL (mp3/wav/flac, 6s-6min, 最大 50MB) | - | | `--audio-file ` | 本地参考音频文件 (自动 Base64 编码) | - | | `--lyrics ` | 翻唱歌词 (省略则通过 ASR 从参考音频提取) | - | | `--lyrics-file ` | 从文件读取歌词 (`-` 表示 stdin) | - | | `--seed ` | 随机种子 0-1000000 | - | | `--format ` | 音频格式: `mp3`, `wav`, `pcm` | `mp3` | | `--sample-rate ` | 采样率 | `44100` | | `--bitrate ` | 比特率 | `256000` | | `--channel ` | 声道: `1` (单声道) / `2` (立体声, 默认) | `2` | | `--stream` | 流式输出原始音频到 stdout | - | | `--out ` | 保存音频到文件 | - | **Examples:** ```bash mmx music cover --prompt "Indie folk, acoustic guitar, warm male vocal" --audio https://example.com/song.mp3 --out cover.mp3 mmx music cover --prompt "Jazz, piano, slow" --audio-file original.mp3 --lyrics-file lyrics.txt --out jazz_cover.mp3 mmx music cover --prompt "Pop, upbeat" --audio https://example.com/ref.mp3 --seed 42 --out reproducible.mp3 ``` --- ### 7. search - 网络搜索 | Command | 说明 | |---------|------| | `search query` | 通过 MiniMax 搜索网页 | | `search web` | `search query` 的别名 | #### search query ``` mmx search query --q ``` | Flag | 说明 | |------|------| | `--q ` | 搜索查询字符串 | **Examples:** ```bash mmx search query --q "MiniMax AI" mmx search query --q "latest news" --output json ``` --- ### 8. vision - 视觉理解 | Command | 说明 | |---------|------| | `vision describe` | 使用 MiniMax VLM 描述图像 | #### vision describe ``` mmx vision describe (--image | --file-id ) [--prompt ] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--image ` | 本地图像路径或 URL (自动 Base64 编码) | - | | `--file-id ` | 预上传的文件 ID (跳过 Base64 转换) | - | | `--prompt ` | 关于图像的问题 | `"Describe the image."` | **Examples:** ```bash mmx vision describe --image photo.jpg mmx vision describe --image https://example.com/photo.jpg --prompt "What breed is this dog?" mmx vision describe --file-id file-123456789 --prompt "Extract the text" ``` --- ### 9. quota - 使用配额 | Command | 说明 | |---------|------| | `quota show` | 显示 Token Plan 使用情况和剩余配额 | #### quota show ``` mmx quota show ``` **Examples:** ```bash mmx quota show mmx quota show --output json ``` --- ### 10. config - CLI 配置 | Command | 说明 | |---------|------| | `config show` | 显示当前配置 | | `config set` | 设置配置值 | | `config export-schema` | 导出 CLI 命令为 Anthropic/OpenAI 兼容的 JSON 工具模式 | #### config show ``` mmx config show ``` **Examples:** ```bash mmx config show mmx config show --output json ``` #### config set ``` mmx config set --key --value ``` | Flag | 说明 | |------|------| | `--key ` | 配置键: `region`, `base_url`, `output`, `timeout`, `api_key`, `proxy`, `default_text_model`, `default_speech_model`, `default_video_model`, `default_music_model` | | `--value ` | 要设置的值 | **Examples:** ```bash mmx config set --key output --value json mmx config set --key timeout --value 600 mmx config set --key proxy --value http://127.0.0.1:7890 mmx config set --key base_url --value https://api-uw.minimax.io ``` #### config export-schema ``` mmx config export-schema [--command ""] ``` | Flag | 说明 | |------|------| | `--command ` | 仅导出特定命令的模式 (如 `video generate`) | **Examples:** ```bash mmx config export-schema mmx config export-schema --command "video generate" ``` --- ### 11. file - 文件存储 | Command | 说明 | |---------|------| | `file upload` | 上传文件到 MiniMax 存储 | | `file list` | 列出已上传的文件 | | `file delete` | 删除已上传的文件 | #### file upload ``` mmx file upload --file [--purpose ] ``` | Flag | 说明 | 默认值 | |------|------|--------| | `--file ` | 文件的本地路径 | - | | `--purpose ` | 文件用途 (默认: `retrieval`) | `retrieval` | **Examples:** ```bash mmx file upload --file doc.pdf mmx file upload --file image.png --purpose vision ``` #### file list ``` mmx file list ``` **Examples:** ```bash mmx file list mmx file list --output json ``` #### file delete ``` mmx file delete --file-id ``` | Flag | 说明 | |------|------| | `--file-id ` | 要删除的文件 ID | **Examples:** ```bash mmx file delete --file-id 123456789 ``` --- ### 12. update - 更新 ``` mmx update ``` 更新 mmx 到最新版本。 --- ## Quick Reference ```bash # 认证 mmx auth login --api-key sk-cp-xxxxx mmx auth status # 文本生成 mmx text chat --message "Hello" # 语音合成 mmx speech synthesize --text "Hello" --out hello.mp3 # 图像生成 mmx image generate --prompt "A sunset" --aspect-ratio 16:9 # 视频生成 mmx video generate --prompt "A man walking" --async --quiet # 音乐生成 mmx music generate --prompt "Upbeat pop" --lyrics "La la" --out song.mp3 # 网络搜索 mmx search query --q "MiniMax" # 视觉理解 mmx vision describe --image photo.jpg # 查看配额 mmx quota show ``` ## API Reference - Text: https://platform.minimaxi.com/docs/api-reference/text-post - Speech: https://platform.minimaxi.com/docs/api-reference/speech-t2a-http - Image: https://platform.minimaxi.com/docs/api-reference/image-generation-t2i - Video: https://platform.minimaxi.com/docs/api-reference/video-generation - Music: https://platform.minimaxi.com/docs/api-reference/music-generation