一、引言
在 AI 编程代理(AI Coding Agent)快速发展的今天,如何让 AI 代理具备结构化、生产级质量的开发能力,成为了业界的关键课题。MiniMax-AI/skills 是一个开源的开发技能库,专为 Claude Code、Cursor、Codex、OpenCode 等 AI 编程工具设计,提供了覆盖前端、全栈、移动端、图形着色器、文档生成以及多模态内容创作等领域的 11 个核心 Skill。
🔗 仓库地址:https://github.com/MiniMax-AI/skills
📜 许可证:MIT | ⭐ Stars: 4.7k+ | 🍴 Forks: 324+
本文将逐一深入分析每个 Skill 的核心实现原理、底层技术架构及工作流程,结合代码示例与架构图解,力求做到理论深度与实践参考价值兼备。
二、整体架构概览
2.1 仓库结构
MiniMax-AI/skills/
├── .claude/ # Claude Code 集成配置
├── .claude-plugin/ # Claude 插件配置
├── .cursor-plugin/ # Cursor 集成配置
├── .codex/ # Codex 集成配置
├── .opencode/ # OpenCode 集成配置
├── skills/ # 核心技能定义目录
│ ├── frontend-dev/ # 前端开发
│ ├── fullstack-dev/ # 全栈开发
│ ├── android-native-dev/ # Android 原生开发
│ ├── ios-application-dev/ # iOS 应用开发
│ ├── shader-dev/ # GLSL 着色器开发
│ ├── gif-sticker-maker/ # GIF 贴纸生成
│ ├── minimax-pdf/ # PDF 文档生成
│ ├── pptx-generator/ # PPT 演示文稿生成
│ ├── minimax-xlsx/ # Excel 电子表格处理
│ ├── minimax-docx/ # Word 文档处理
│ └── minimax-multimodal-toolkit/ # 多模态工具箱
├── plugins/ # 插件(如 pptx-plugin)
└── assets/ # 静态资源
2.2 Skill 定义规范
每个 Skill 都遵循统一的 SKILL.md 规范,包含以下核心元素:
| 元素 | 说明 |
|---|---|
| name | 技能唯一标识符 |
| description | 触发条件和功能描述 |
| metadata | 版本号、分类信息 |
| Workflow | 强制性执行流程(Phase/Step) |
| Rules | 铁律规则(不可违反的约束) |
| Scripts | 可执行脚本工具集 |
| References | 深度参考文档 |
| Quality Gates | 交付前必须通过的检查清单 |
2.3 技能分类全景图
┌─────────────────────────────────────────────────────────┐
│ MiniMax Skills 全景图 │
├──────────────┬──────────────┬───────────────────────────┤
│ 应用开发 │ 文档生成 │ 内容创作 │
├──────────────┼──────────────┼───────────────────────────┤
│ frontend-dev │ minimax-pdf │ gif-sticker-maker │
│ fullstack-dev│ minimax-docx │ minimax-multimodal-toolkit│
│ android-dev │ minimax-xlsx │ │
│ ios-dev │ pptx-gen │ │
│ shader-dev │ │ │
└──────────────┴──────────────┴───────────────────────────┘
三、各 Skill 深度技术剖析
3.1 frontend-dev — 全栈前端开发工作室
核心定位
frontend-dev 是一个将 设计工程、动效系统、AI 生成资产、说服力文案、生成艺术 融为一体的前端开发 Skill。它不只是写代码,而是一个完整的"前端工作室"。
技术栈
- 框架:React / Next.js(Server Components 优先)
- 样式:Tailwind CSS(严格区分 v3/v4 语法)
- 动效:Framer Motion + GSAP + ScrollTrigger + Lottie + Three.js/R3F
- 文案:AIDA / PAS / FAB 框架
- 生成艺术:p5.js, Three.js
六阶段强制工作流
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Phase 1 │───▶│ Phase 2 │───▶│ Phase 3 │
│设计架构 │ │动效架构 │ │资产生成 │
│ │ │ │ │(AI API) │
└──────────┘ └──────────┘ └──────────┘
│
▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Phase 6 │◀───│ Phase 5 │◀───│ Phase 4 │
│质量门禁 │ │构建UI │ │文案撰写 │
└──────────┘ └──────────┘ └──────────┘
Phase 1 — 设计架构:分析需求,设定三个"设计旋钮":
| 旋钮 | 默认值 | 含义 |
|---|---|---|
| DESIGN_VARIANCE | 8 | 1=对称,10=极度非对称 |
| MOTION_INTENSITY | 6 | 1=静态,10=电影级 |
| VISUAL_DENSITY | 4 | 1=留白,10=密集 |
Phase 3 — AI 资产生成是核心亮点,通过四个 Python 脚本调用 MiniMax API:
# 图片生成脚本调用示例
python scripts/minimax_image.py \
--prompt "A minimalist SaaS dashboard with dark theme" \
--output public/assets/images/hero-dashboard-1710xxx.webp
# TTS 语音合成
python scripts/minimax_tts.py \
--text "Welcome to our platform" \
--voice "english-male" \
--output public/assets/audio/tts-intro-1710xxx.mp3
动效引擎选择矩阵(强制规则)
┌─────────────────────┬──────────────────────┐
│ 需求场景 │ 强制使用工具 │
├─────────────────────┼──────────────────────┤
│ UI 进入/退出/布局 │ Framer Motion │
│ 滚动叙事 │ GSAP + ScrollTrigger │
│ 循环图标动画 │ Lottie │
│ 3D / WebGL │ Three.js / R3F │
│ Hover / Focus │ 纯 CSS │
└─────────────────────┴──────────────────────┘
⚠️ 冲突规则:
• 同一组件内禁止混用 GSAP 与 Framer Motion
• R3F 必须隔离在独立 Canvas 包装器中
• 重型库必须懒加载
反平庸设计技巧
Skill 定义了独特的"Anti-Slop"技术来避免 AI 生成千篇一律的界面:
/* Liquid Glass 效果 */
.glass-card {
backdrop-filter: blur(16px);
border: 1px solid rgba(255, 255, 255, 0.1);
box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1);
}
// 磁性按钮 - 使用 Framer Motion
function MagneticButton({ children }) {
const x = useMotionValue(0);
const y = useMotionValue(0);
return (
<motion.button style={{ x, y }}
onMouseMove={(e) => {
const rect = e.currentTarget.getBoundingClientRect();
x.set((e.clientX - rect.left - rect.width / 2) * 0.3);
y.set((e.clientY - rect.top - rect.height / 2) * 0.3);
}}
onMouseLeave={() => { x.set(0); y.set(0); }}>
{children}
</motion.button>
);
}
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| 品牌官网/落地页 | 简单 CRUD 管理后台 |
| 产品展示页 | 纯数据表格页面 |
| 创意营销页 | 不需要动效的工具型页面 |
| 生成艺术作品 | 服务端渲染的内容站 |
| 需要 AI 生成媒体的页面 | 无需视觉设计的 API 文档 |
3.2 fullstack-dev — 全栈后端架构
核心定位
fullstack-dev 提供的不是一个框架,而是一套 全栈架构决策体系,覆盖从后端服务搭建到前后端集成的完整链路。
七条铁律
┌────────────────────────────────────────────────┐
│ fullstack-dev 七条铁律 │
├────────────────────────────────────────────────┤
│ 1. Feature-First:按功能组织代码,非按技术层 │
│ 2. Controller 零业务:控制器禁止包含业务逻辑 │
│ 3. Service 纯净:服务层禁止导入 HTTP 类型 │
│ 4. 环境变量配置:所有配置来自环境变量 │
│ 5. 类型化错误:每个错误都有类型、日志、统一格式 │
│ 6. 边界验证:所有输入在边界处验证 │
│ 7. 结构化日志:JSON 格式 + RequestID,禁用 console│
└────────────────────────────────────────────────┘
三层架构与依赖注入
┌─────────────┐
HTTP 请求 ───▶│ Controller │ 解析、验证、路由
│ (HTTP层) │ ⚠️ 禁止业务逻辑
└──────┬──────┘
│ 依赖注入
┌──────▼──────┐
│ Service │ 业务规则、编排
│ (业务层) │ ⚠️ 禁止 HTTP 类型
└──────┬──────┘
│ 依赖注入
┌──────▼──────┐
│ Repository │ 数据访问、外部 API
│ (数据层) │ ⚠️ 禁止业务逻辑
└─────────────┘
Feature-First 项目结构示例:
src/
├── orders/
│ ├── orders.controller.ts # HTTP 处理
│ ├── orders.service.ts # 业务逻辑
│ ├── orders.repository.ts # 数据访问
│ ├── orders.types.ts # 类型定义
│ └── orders.test.ts # 测试
├── users/
│ ├── users.controller.ts
│ ├── users.service.ts
│ └── ...
└── shared/
├── config.ts # 集中配置
├── errors.ts # 错误类型体系
└── logger.ts # 结构化日志
中间件执行顺序(严格)
Request ──▶ RequestID ──▶ Logging ──▶ CORS ──▶ RateLimit
──▶ BodyParse ──▶ Auth ──▶ Authz ──▶ Validation ──▶ Handler
实时通信模式选择
┌──────────────┬─────────────────┬─────────────────┐
│ 模式 │ 最佳场景 │ 复杂度 │
├──────────────┼─────────────────┼─────────────────┤
│ SSE │ 服务端推送 │ ★☆☆ 简单 │
│ (通知/Feed) │ (单向) │ │
├──────────────┼─────────────────┼─────────────────┤
│ WebSocket │ 双向通信 │ ★★★ 复杂 │
│ (聊天/游戏) │ 需要心跳+重连 │ │
├──────────────┼─────────────────┼─────────────────┤
│ Polling │ 简单状态检查 │ ★☆☆ 最简 │
│ (低频场景) │ 少量客户端 │ │
└──────────────┴─────────────────┴─────────────────┘
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| REST/GraphQL API 设计 | 纯前端项目(无后端) |
| JWT/OAuth 认证流程 | 仅需静态页面部署 |
| 实时功能(SSE/WS) | 不涉及数据库的简单脚本 |
| 数据库集成与事务 | 微服务编排(超出单服务范围) |
| 生产环境加固 | 嵌入式或 IoT 场景 |
3.3 android-native-dev — Android 原生开发
核心定位
为 Android 原生应用提供从项目初始化到 Material Design 3 合规的完整指导,技术栈围绕 Kotlin + Jetpack Compose 构建。
项目状态评估矩阵
┌──────────────────────┐
│ 项目初始状态判断 │
├──────────────────────┤
│ 空目录? │──▶ 完整初始化(Gradle Wrapper等)
│ 有 Gradle Wrapper? │──▶ 直接构建
│ Android Studio 项目? │──▶ 检查 Wrapper
│ 不完整项目? │──▶ 修复缺失配置
└──────────────────────┘
核心原则:确保 ./gradlew assembleDebug 成功后再写业务逻辑
Kotlin 协程与线程模型
// ✅ 正确:IO 操作使用 IO 调度器
suspend fun fetchUser(): User = withContext(Dispatchers.IO) {
api.getUser() // 网络请求在 IO 线程
}
// ❌ 错误:在主线程执行网络请求(导致 ANR)
fun fetchUser(): User {
return api.getUser() // 阻塞主线程!
}
关键协程调度规则:
| 调度器 | 用途 |
|---|---|
Dispatchers.Main |
UI 更新 |
Dispatchers.IO |
网络/文件 I/O |
Dispatchers.Default |
CPU 密集计算 |
Material Design 3 规范要点
┌────────────────────────────────────────┐
│ M3 设计规范核心指标 │
├────────────────────────────────────────┤
│ 对比度:正文文本最低 4.5:1 │
│ 触控目标:最小 48×48dp │
│ 网格系统:8dp 基准网格 │
│ 动画时长:50ms - 500ms │
│ 启动时间:< 2s(超过即为反模式) │
└────────────────────────────────────────┘
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| Kotlin + Jetpack Compose 应用 | Flutter/React Native 跨平台 |
| Material Design 3 合规应用 | Wear OS / TV 专用应用 |
| Gradle 构建配置与优化 | NDK/C++ 原生开发 |
| 多 Build Variant 管理 | 游戏开发(Unity/Unreal) |
3.4 ios-application-dev — iOS 应用开发
核心定位
严格遵循 Apple Human Interface Guidelines (HIG) 的 iOS 开发指南,同时覆盖 UIKit 和 SwiftUI 双技术路径。
UIKit vs SwiftUI 组件对照
┌──────────────────┬─────────────────────┬────────────────────┐
│ 场景 │ UIKit │ SwiftUI │
├──────────────────┼─────────────────────┼────────────────────┤
│ 主要板块 │ UITabBarController │ TabView │
│ 下钻导航 │ UINavigationController│ NavigationStack │
│ 专注任务 │ Sheet presentation │ .sheet + detents │
│ 列表内容 │ UICollectionView │ List + insetGrouped│
│ 搜索 │ UISearchController │ .searchable │
│ 深色模式 │ 语义颜色 │ .primary/.secondary│
│ 生命周期 │ UIApplication通知 │ @Environment │
└──────────────────┴─────────────────────┴────────────────────┘
核心开发原则
┌────────────────────────────────────────────────┐
│ iOS 开发铁律 │
├────────────────────────────────────────────────┤
│ 布局:触控目标 ≥ 44pt │
│ 布局:内容必须在安全区域内 │
│ 布局:8pt 间距网格(8, 16, 24...) │
│ 布局:主要操作位于拇指区(屏幕下半部分) │
│ 排版:支持 Dynamic Type │
│ 颜色:对比度 ≥ 4.5:1(普通文本) │
│ 导航:底部标签栏 3-5 个板块 │
│ 导航:严禁汉堡菜单 🚫 │
│ 隐私:上下文场景中请求权限 │
│ 隐私:支持 Sign in with Apple │
└────────────────────────────────────────────────┘
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| UIKit / SwiftUI 原生应用 | Flutter/React Native 跨平台 |
| Apple HIG 合规设计 | macOS/watchOS 专用开发 |
| 辅助功能(VoiceOver等) | 游戏(SpriteKit/SceneKit) |
| iPhone SE 到 Pro Max 全适配 | 企业内部分发特殊需求 |
3.5 shader-dev — GLSL 着色器开发
核心定位
覆盖 36 种 GLSL 着色器技术 的统一 Skill,兼容 ShaderToy,可生成独立 WebGL2 HTML 页面。
技术分类体系
┌─────────────────────────────────────────────────────┐
│ shader-dev 36项技术分类 │
├─────────────┬───────────────────────────────────────┤
│ 几何 & SDF │ sdf-2d, sdf-3d, CSG布尔运算, │
│ (6项) │ 域重复, 域扭曲, SDF技巧 │
├─────────────┼───────────────────────────────────────┤
│ 光线 & 照明 │ 光线行进, 解析光追, 路径追踪, │
│ (7项) │ 光照模型, 阴影技术, 环境遮蔽, 法线估算 │
├─────────────┼───────────────────────────────────────┤
│ 仿真 & 物理 │ 流体仿真, 物理仿真, 粒子系统, 元胞自动机│
│ (4项) │ │
├─────────────┼───────────────────────────────────────┤
│ 自然现象 │ 海洋/水面, 地形渲染, 大气散射, 体积渲染 │
│ (4项) │ │
├─────────────┼───────────────────────────────────────┤
│ 程序化生成 │ 程序化噪声, 2D图案, Voronoi噪声, │
│ (5项) │ 分形渲染, 色彩调色板 │
├─────────────┼───────────────────────────────────────┤
│ 后处理 & 基础│ 后处理, 多Pass缓冲, 纹理采样, │
│ (8项) │ 矩阵变换, 极坐标UV, 抗锯齿, │
│ │ 相机效果, 高级纹理映射 │
├─────────────┼───────────────────────────────────────┤
│ 音频 (1项) │ 程序化音频合成 │
├─────────────┼───────────────────────────────────────┤
│ 调试 (1项) │ WebGL2 陷阱与调试 │
└─────────────┴───────────────────────────────────────┘
路由机制
Skill 采用"路由表"模式:根据用户需求匹配主技术 + 组合技术:
用户请求:"创建一个有柔和阴影的光线行进 SDF 场景"
│
├── 主技术:ray-marching + sdf-3d
└── 组合技术:lighting-model + shadow-techniques
WebGL2 适配规则
从 ShaderToy 风格到独立 HTML 的关键转换:
// ShaderToy 风格(原始)
void mainImage(out vec4 fragColor, in vec2 fragCoord) {
vec2 uv = (2.0 * fragCoord - iResolution.xy) / iResolution.y;
// ... shader logic ...
fragColor = vec4(col, 1.0);
}
// WebGL2 适配(必须添加 main() 包装)
#version 300 es
precision highp float;
out vec4 fragColor;
uniform vec2 iResolution;
uniform float iTime;
void mainImage(out vec4 fragColor, in vec2 fragCoord) {
vec2 uv = (2.0 * fragCoord - iResolution.xy) / iResolution.y;
// ... shader logic ...
fragColor = vec4(col, 1.0);
}
void main() {
mainImage(fragColor, gl_FragCoord.xy); // 注意:gl_FragCoord
}
Quick Recipe 示例 —— 逼真 SDF 场景
┌─────────────┐ ┌──────────────┐ ┌──────────────┐
│ 1. 几何体 │────▶│ 2. 渲染 │────▶│ 3. 光照 │
│ sdf-3d │ │ ray-marching │ │ lighting-model│
│ + CSG布尔 │ │ + 法线估算 │ │ + 软阴影 │
└─────────────┘ └──────────────┘ │ + 环境遮蔽 │
└──────┬───────┘
│
┌──────────────┐ ┌─────▼────────┐
│ 5. 后处理 │◀─│ 4. 大气 │
│ ACES色调映射 │ │ 高度雾+日光 │
│ + 2xSSAA │ └──────────────┘
│ + 暗角 │
└──────────────┘
性能预算(严格限制)
| 指标 | 上限 |
|---|---|
| 光线行进主循环 | ≤ 128 步 |
| 体积采样/光照内循环 | ≤ 32 步 |
| FBM 八度层 | ≤ 6 层 |
| 每像素总嵌套循环迭代 | ≤ 1000(超过冻结浏览器) |
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| ShaderToy 兼容着色器 | Unity/Unreal 着色器 |
| WebGL2 独立页面 | Metal/Vulkan 原生着色器 |
| 实时视觉特效原型 | 大规模生产级游戏渲染 |
| 教学/可视化展示 | 需要几何着色器/Tessellation |
3.6 gif-sticker-maker — GIF 贴纸工厂
核心定位
将用户上传的照片(人物、宠物、物品、Logo)转换为 4 张 Funko Pop / 盲盒风格 的动画 GIF 贴纸。
完整工作流
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Step 0 │───▶│ Step 1 │───▶│ Step 2 │
│ 收集字幕文案 │ │ 生成静态贴纸 │ │ 图片转动画 │
│ │ │ (MiniMax │ │ (MiniMax │
│ 用户选择: │ │ Image API) │ │ Video API) │
│ • 自定义4条 │ │ │ │ │
│ • 默认模板 │ │ 可并发×4 │ │ 可并发×4 │
└──────────────┘ └──────────────┘ └──────────────┘
│
┌──────────────┐ ┌──────▼───────┐
│ Step 4 │◀───│ Step 3 │
│ 交付输出 │ │ MP4→GIF转换 │
│ deliver_assets│ │ (FFmpeg) │
└──────────────┘ └──────────────┘
默认四表情
| 编号 | 表情 | 动作描述 | 字幕 |
|---|---|---|---|
| 1 | 开心招手 | 摆手,微微歪头 | hi |
| 2 | 大笑 | 笑到抖动,眯眼 | laugh |
| 3 | 哭泣 | 泪水横流,身体颤抖 | cry |
| 4 | 比心 | 双手比心,眼神闪亮 | love |
核心脚本调用
# Step 1: 生成静态贴纸图片
python scripts/minimax_image.py \
--prompt "Funko Pop blind box style, C4D rendering, white studio lighting..." \
--subject-ref user_photo.jpg \ # 仅人物使用
--output sticker-hi.png
# Step 2: 图片生成动画视频
python scripts/minimax_video.py \
--image sticker-hi.png \
--prompt "Character waves hand, slight head tilt, smooth loop" \
--output sticker-hi.mp4
# Step 3: 视频转 GIF
python scripts/convert_mp4_to_gif.py \
--input sticker-hi.mp4 \
--output sticker-hi.gif
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| 个人表情包制作 | 高清长视频制作 |
| 社交媒体贴纸 | 写实风格动画 |
| 品牌吉祥物动画 | 复杂多人场景 |
| 宠物/物品卡通化 | 需要精确控制动画帧 |
3.7 minimax-pdf — PDF 文档设计系统
核心定位
一个拥有完整 Token-Based 设计系统 的 PDF 生成 Skill,支持三种模式:CREATE(从零创建)、FILL(填充表单)、REFORMAT(重排版)。
路由决策
用户意图判断
│
├── "生成一份报告" ──▶ CREATE
│ │
│ └── palette.py → cover.py → render_cover.js → render_body.py → merge.py
│
├── "填写这个表单" ──▶ FILL
│ │
│ └── fill_inspect.py → fill_write.py
│
└── "重新排版这份文档" ──▶ REFORMAT
│
└── reformat_parse.py → [完整 CREATE 管线]
15 种文档类型与视觉体系
┌─────────────┬─────────────┬──────────────────────────┐
│ 文档类型 │ 封面模式 │ 视觉特征 │
├─────────────┼─────────────┼──────────────────────────┤
│ report │ fullbleed │ 深色背景, 点阵, Playfair │
│ proposal │ split │ 左面板+右几何, Syne │
│ resume │ typographic │ 超大首字, DM Serif │
│ portfolio │ atmospheric │ 近黑, 径向辉光, Fraunces │
│ academic │ typographic │ 浅色背景, 古典衬线 │
│ minimal │ minimal │ 白底+8px强调条 │
│ terminal │ terminal │ 近黑, 网格线, 等宽, 霓虹绿│
│ poster │ poster │ 白底, 粗侧栏, 超大标题 │
│ ... │ ... │ 共 15 种 │
└─────────────┴─────────────┴──────────────────────────┘
内容块类型系统
CREATE 模式通过 content.json 定义页面内容,支持丰富的块类型:
[
{"type": "h1", "text": "执行摘要"},
{"type": "body", "text": "本季度营收同比增长 <b>23%</b>..."},
{"type": "callout", "text": "关键洞察:用户留存率是增长的核心驱动力"},
{"type": "chart", "chart_type": "bar",
"labels": ["Q1","Q2","Q3","Q4"],
"datasets": [{"label": "营收", "values": [120,145,132,178]}]},
{"type": "flowchart",
"nodes": [
{"id": "s", "label": "开始", "shape": "oval"},
{"id": "p", "label": "处理", "shape": "rect"},
{"id": "d", "label": "验证?", "shape": "diamond"},
{"id": "e", "label": "结束", "shape": "oval"}
],
"edges": [
{"from": "s", "to": "p"},
{"from": "p", "to": "d"},
{"from": "d", "to": "e", "label": "是"},
{"from": "d", "to": "p", "label": "否"}
]}
]
技术栈
| 组件 | 用途 |
|---|---|
| Python 3.9+ (reportlab) | 渲染正文页 |
| Node.js 18+ (Playwright) | 渲染封面页 |
| pypdf | 表单填写、PDF 合并 |
| matplotlib | 图表、流程图、数学公式渲染 |
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| 设计精美的报告/提案 | 简单文本导出为 PDF |
| 品牌一致的简历/作品集 | 大批量表单自动化 |
| 学术论文排版 | PDF 安全/加密操作 |
| 已有文档重排版 | OCR 文字识别 |
3.8 pptx-generator — PowerPoint 演示文稿生成器
核心定位
基于 PptxGenJS 的模块化 PPT 生成系统,支持从零创建、编辑现有文件和文本提取。
创建工作流
┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐
│ Research │───▶│ Design │───▶│ Planning │───▶│ Generate │
│ 受众分析 │ │ 选择色板 │ │ 幻灯片 │ │ 生成JS │
│ 话题研究 │ │ 选择字体 │ │ 分类规划 │ │ 模块文件 │
└──────────┘ └──────────┘ └──────────┘ └──────────┘
│
┌──────────┐ ┌──────────┐ │
│ QA │◀───│ Compile │◀────────┘
│ 质量保证 │ │ compile.js│
└──────────┘ │ 合并PPTX │
└──────────┘
幻灯片五分类体系
每张幻灯片必须归入以下五类之一:
| 类型 | 用途 | 特征 |
|---|---|---|
| Cover | 封面页 | 标题+副标题+日期 |
| TOC | 目录页 | 结构化导航 |
| Section Divider | 章节分隔 | 大字标题+编号 |
| Content | 内容页 | 正文+图表+列表 |
| Summary | 总结页 | 要点回顾+CTA |
模块化代码结构
// slides/slide-01.js — 每个幻灯片一个独立模块
function createSlide(pres, theme) {
const slide = pres.addSlide();
// 背景
slide.background = { fill: theme.bg };
// 标题
slide.addText("Q3 Strategy Review", {
x: 0.8, y: 1.5, w: 8.4, h: 1.2,
fontSize: 36, fontFace: "Arial",
color: theme.primary, bold: true
});
// 页码徽章(封面页之外所有页必须有)
slide.addShape(pres.ShapeType.oval, {
x: 9.1, y: 5.0, w: 0.5, h: 0.5,
fill: { color: theme.accent }
});
slide.addText("1", {
x: 9.1, y: 5.0, w: 0.5, h: 0.5,
fontSize: 10, color: "FFFFFF", align: "center"
});
}
module.exports = { createSlide };
技术规格
| 参数 | 值 |
|---|---|
| 尺寸 | 10" × 5.625"(16:9) |
| 英文字体 | Arial |
| 中文字体 | Microsoft YaHei |
| 颜色格式 | 6位 Hex(无 # 号) |
| Theme 对象键 | primary, secondary, accent, light, bg |
3.9 minimax-xlsx — Excel 电子表格处理
核心定位
基于 XML 直接编辑 的 Excel 处理 Skill,避免传统库(如 openpyxl)的格式丢失问题。
路由与执行流
┌──────────────────────────────────────────────────────────┐
│ minimax-xlsx 路由表 │
├──────────┬────────────────┬──────────────────────────────┤
│ 任务 │ 方法 │ 核心工具 │
├──────────┼────────────────┼──────────────────────────────┤
│ READ │ 分析现有数据 │ xlsx_reader.py + pandas │
│ CREATE │ 从零创建 xlsx │ XML 模板复制 + xlsx_pack.py │
│ EDIT │ 修改现有 xlsx │ xlsx_unpack → 编辑XML → pack │
│ FIX │ 修复公式 │ 解压 → 修复<f>节点 → 打包 │
│ VALIDATE │ 检查公式 │ formula_check.py │
└──────────┴────────────────┴──────────────────────────────┘
XML 直接编辑原理
这是该 Skill 最核心的技术创新。传统的 Python 库在处理复杂 Excel 时会丢失 VBA 宏、数据透视表等高级特性。minimax-xlsx 通过直接操作底层 XML 来解决:
原始 .xlsx 文件(本质是 ZIP 压缩包)
│
▼ xlsx_unpack.py(解压)
│
├── [Content_Types].xml
├── xl/
│ ├── workbook.xml # 工作簿定义
│ ├── styles.xml # 样式定义
│ ├── sharedStrings.xml # 共享字符串
│ └── worksheets/
│ ├── sheet1.xml # ← 直接编辑单元格XML
│ └── sheet2.xml
└── ...
│
▼ xlsx_pack.py(重新打包)
│
修改后的 .xlsx 文件(完整保留所有特性)
编辑操作示例
# 解压
python scripts/xlsx_unpack.py --input report.xlsx --output-dir ./tmp/
# 添加列(带公式和格式)
python scripts/xlsx_add_column.py \
--dir ./tmp/ \
--sheet sheet1 \
--col F \
--header "合计" \
--formula "SUM(B{row}:E{row})" \
--number-format "#,##0.00" \
--border thin
# 重新打包
python scripts/xlsx_pack.py --input-dir ./tmp/ --output report_edited.xlsx
金融格式化标准
| 单元格类型 | 颜色代码 | 含义 |
|---|---|---|
| 硬编码值/假设值 | 蓝色 0000FF |
可手动修改 |
| 公式计算结果 | 黑色 000000 |
自动计算 |
| 跨表引用公式 | 绿色 00B050 |
跨Sheet引用 |
3.10 minimax-docx — Word 文档处理
核心定位
基于 OpenXML SDK (.NET) 的专业 DOCX 处理 Skill,支持创建、编辑和模板格式化,配备严格的 XSD 验证管线。
三条管线
┌─ 无输入文件 ──▶ Pipeline A: CREATE
│ 从零起草新文档
│
任务路由 ──────┤
│ ┌─ Pipeline B: FILL-EDIT
└─ 有输入文件 ──▶┤ 替换文本/填充占位符
│
└─ Pipeline C: FORMAT-APPLY
├─ C-1 Overlay (纯样式覆盖)
└─ C-2 Base-Replace (模板+内容)
验证管线(强制)
每次操作后必须经过三步验证:
操作完成 ──▶ merge-runs ──▶ validate --xsd ──▶ validate --business
合并运行 XSD 结构验证 业务规则检查
OpenXML 关键约束
<!-- ⚠️ 元素顺序规则:属性必须在内容之前 -->
<!-- ✅ 正确 -->
<w:p>
<w:pPr> <!-- 段落属性在前 -->
<w:pStyle w:val="Heading1"/>
</w:pPr>
<w:r> <!-- 运行在后 -->
<w:rPr> <!-- 运行属性在前 -->
<w:b/>
</w:rPr>
<w:t>标题文本</w:t> <!-- 文本内容在后 -->
</w:r>
</w:p>
<!-- ❌ 错误 — 属性在内容之后会导致文档损坏 -->
<w:p>
<w:r>
<w:t>标题文本</w:t>
<w:rPr><w:b/></w:rPr> <!-- 运行属性不应在文本之后 -->
</w:r>
<w:pPr>...</w:pPr> <!-- 段落属性不应在运行之后 -->
</w:p>
字号单位注意:OpenXML 使用半磅值(half-points),12pt 字体 = sz="24"。
3.11 minimax-multimodal-toolkit — 多模态工具箱
核心定位
MiniMax 多模态 API 的 统一命令行入口,纯 Bash 脚本实现(无需 Python),通过 curl + FFmpeg + jq 驱动。
五大功能模块
┌──────────────────────────────────────────────────────────────┐
│ minimax-multimodal-toolkit 架构 │
├───────────┬───────────┬──────────┬──────────┬───────────────┤
│ TTS │ Music │ Image │ Video │ Media Tools │
│ 语音合成 │ 音乐生成 │ 图像生成 │ 视频生成 │ 媒体处理 │
├───────────┼───────────┼──────────┼──────────┼───────────────┤
│ • 单语音 │ • 纯音乐 │ • 文生图 │ • 文生视频│ • 格式转换 │
│ • 多角色 │ • 带歌词 │ • 图生图 │ • 图生视频│ • 音视频拼接 │
│ • 语音克隆 │ │ │ • 长视频 │ • 裁剪/提取 │
│ • 语音设计 │ │ │ • 首尾帧 │ • 音频混音 │
├───────────┴───────────┴──────────┴──────────┴───────────────┤
│ scripts/*.sh (纯 Bash,无需 Python) │
│ 依赖:bash, curl, ffmpeg, jq, xxd │
└──────────────────────────────────────────────────────────────┘
决策树
每个模块都有明确的决策规则:
TTS 决策:
用户需要语音?
├── 单一角色 ──▶ tts 命令(直接生成)
└── 多角色/超长文本/有声书 ──▶ segments.json + generate 命令
Music 决策:
用户需要音乐?
├── 背景音乐/未指定 ──▶ --instrumental(默认,不询问)
└── 明确要歌曲 ──▶ 询问是否需要歌词 → --lyrics
Video 决策:
用户需要视频?
├── 单段视频 ──▶ generate_video.sh
│ ├── 1080P ──▶ 最长 6s
│ └── 768P ──▶ 最长 10s
└── 多场景/长视频 ──▶ generate_long_video.sh
使用示例
# 环境配置
export MINIMAX_API_HOST="https://api.minimax.io"
export MINIMAX_API_KEY="sk-api-..."
# TTS - 文本转语音
bash scripts/tts/generate_voice.sh tts "Hello world" \
-o minimax-output/hello.mp3
# 音乐 - 纯音乐背景
bash scripts/music/generate_music.sh \
--instrumental \
--prompt "ambient electronic, calm, lo-fi beats" \
--output minimax-output/bgm.mp3 --download
# 图像 - 文生图
bash scripts/image/generate_image.sh \
--prompt "A cat sitting on a rooftop at sunset, warm colors" \
--aspect-ratio 16:9 \
-o minimax-output/cat.png
# 视频 - 文生视频(自动优化提示词)
bash scripts/video/generate_video.sh --mode t2v \
--prompt "A golden retriever runs through autumn leaves, [跟随] tracking shot" \
-o minimax-output/puppy.mp4
# 媒体工具 - 拼接视频
bash scripts/media_tools.sh concat-video \
-i "clip1.mp4,clip2.mp4,clip3.mp4" \
--crossfade 500 \
-o minimax-output/merged.mp4
视频提示词公式
主体 + 场景 + 动作 + 镜头运动 + 氛围
示例:
"一只金毛犬, 在秋天的公园草地上, 奔跑追逐落叶,
[跟随]镜头平稳跟随, 暖色调阳光氛围"
适用场景与边界
| ✅ 适用场景 | ❌ 不适用场景 |
|---|---|
| TTS 语音合成/克隆 | 实时流式语音 |
| AI 音乐/歌曲创作 | 专业音乐后期混音 |
| 文生图/图生图 | 图像编辑(裁剪/滤镜) |
| 短视频/长视频生成 | 实时视频流处理 |
| 音视频格式转换/拼接 | 专业非线性视频编辑 |
四、跨 Skill 技术特征总结
4.1 设计模式对比
| 特征 | 应用开发类 | 文档生成类 | 内容创作类 |
|---|---|---|---|
| 交互模式 | 强制工作流(Phase-based) | 路由决策(Route-based) | 管线执行(Pipeline) |
| 质量保证 | Quality Gates 检查清单 | XSD 验证/设计Token系统 | 交付资产块 |
| 核心约束 | 铁律规则(不可违反) | 格式完整性保护 | API 调用限制 |
| 输出形式 | 可运行的项目代码 | 可打印的文档文件 | 媒体资源文件 |
4.2 共性设计原则
┌─────────────────────────────────────────────────────────┐
│ 11 个 Skill 的共性设计原则 │
├─────────────────────────────────────────────────────────┤
│ 1. 声明式路由:根据用户意图自动匹配执行路径 │
│ 2. 强制流程:工作流步骤不可跳过,保证质量 │
│ 3. 脚本工具链:每个 Skill 自带可执行脚本 │
│ 4. 参考文档分层:SKILL.md 概览 + references/ 深入 │
│ 5. 防错机制:Anti-patterns 清单 + 常见陷阱警告 │
│ 6. 环境检查:首次运行前验证依赖完整性 │
│ 7. 零占位符原则:禁止使用 placeholder/Lorem ipsum │
└─────────────────────────────────────────────────────────┘
4.3 技术依赖矩阵
| Skill | Python | Node.js | .NET | Bash | FFmpeg | MiniMax API |
|---|---|---|---|---|---|---|
| frontend-dev | ✅ | ✅ | — | — | — | ✅ |
| fullstack-dev | ✅ | ✅ | — | — | — | — |
| android-native-dev | — | — | — | ✅ | — | — |
| ios-application-dev | — | — | — | — | — | — |
| shader-dev | — | ✅ | — | — | — | — |
| gif-sticker-maker | ✅ | — | — | — | ✅ | ✅ |
| minimax-pdf | ✅ | ✅ | — | ✅ | — | — |
| pptx-generator | ✅ | ✅ | — | — | — | — |
| minimax-xlsx | ✅ | — | — | — | — | — |
| minimax-docx | — | — | ✅ | ✅ | — | — |
| multimodal-toolkit | — | — | — | ✅ | ✅ | ✅ |
五、实践指南:如何集成到 AI 编程工具
5.1 Claude Code 安装
# 一键安装
claude plugin marketplace add https://github.com/MiniMax-AI/skills
claude plugin install minimax-skills
5.2 Cursor 安装
# 克隆到本地
git clone https://github.com/MiniMax-AI/skills ~/.cursor/minimax-skills
# 在 Cursor Settings 中配置 skills 路径指向
# ~/.cursor/minimax-skills/skills/
5.3 Codex / OpenCode 安装
# Codex
git clone https://github.com/MiniMax-AI/skills ~/.codex/minimax-skills
ln -s ~/.codex/minimax-skills/skills ~/.agents/skills
# OpenCode
git clone https://github.com/MiniMax-AI/skills ~/.config/opencode/minimax-skills
ln -s ~/.config/opencode/minimax-skills/skills ~/.config/opencode/skills
六、总结与展望
MiniMax Skills 代表了 AI 编程代理技能体系的一种前沿实践。它的核心贡献在于:
-
结构化的 Skill 定义规范:通过 SKILL.md 标准化技能描述、触发条件、工作流和质量门禁,使 AI 代理的行为可预测、可审计。
-
全栈覆盖:从前端到后端、从移动端到图形渲染、从文档生成到多模态创作,构建了一个完整的开发能力矩阵。
-
生产级质量保证:每个 Skill 都内置了严格的约束规则和质量检查机制,确保 AI 生成的代码和内容达到生产标准。
-
MiniMax API 深度集成:在内容创作类 Skill 中,深度集成了 MiniMax 的多模态 API(图像、视频、音频、TTS),展示了 AI 代理如何调用外部 AI 能力。
-
跨工具兼容:同一套 Skill 可在 Claude Code、Cursor、Codex、OpenCode 等多种 AI 编程工具中使用,体现了标准化的价值。
随着 AI 编程代理的快速发展,这种 结构化技能定义 + 强制工作流 + 内置质量门禁 的模式,可能会成为行业的标准范式。值得每一位关注 AI 开发工具链的工程师深入研究和实践。
参考资料:
「真诚赞赏,手留余香」
真诚赞赏,手留余香
使用微信扫描二维码完成支付