WeChat Sticker Maker – 微信表情包制作 Skill
概述
用户上传一张
参考图(人物/动物/角色照片),提出
风格要求(如 Q 版卡通、超写实、水墨风、像素风等),先输出
定妆照供用户确认,确认后批量生成
表情包,最终输出符合
腾讯微信表情开放平台规范的图片/专辑文件。
核心能力
- 参考图 → 定妆照:基于参考图生成角色定妆照(保持人脸/角色特征一致性)
- 用户确认后批量生成:一次生成一张或多张表情
- 表情类型:静态表情(PNG)+ 动态贴图(GIF)
- 腾讯合规:所有输出自动适配微信表情开放平台规范
前置条件
✅ 用户必须自备
| 项目 |
说明 |
| 大模型 API Key |
用于生图(通义万相或 OpenAI),见下方配置指引 |
| 参考图 |
你想做成表情的人/动物/角色的照片(支持 jpg/png) |
⚠️ 无内置 Key
本 Skill
不内置任何默认 API Key。使用者必须自行配置才能运行。所有 API 调用费用由使用者自行承担。
配置指引
方式一:通义万相(推荐 ✅)
支持参考图保持角色一致性,最适合做角色表情包。
# 1. 注册获取 Key(免费额度够用)
# 访问 https://bailian.console.aliyun.com/
# 开通「通义万相」服务 → 获取 API Key
# 2. 配置环境变量
export DASHSCOPE_API_KEY="sk-xxxxxxxxxxxxxxxxxxxx"
方式二:OpenAI DALL-E 3
# 1. 获取 Key
# 访问 https://platform.openai.com/api-keys
# 2. 配置环境变量
export STICKER_API_KEY="sk-xxx"
export STICKER_PROVIDER="openai"
🏠 OpenClaw 智能体配置
如果你在 OpenClaw 智能体中使用本 Skill,只需在智能体配置中添加环境变量即可:
方式 A — 通过 OpenClaw 配置文件(
auth-profiles.json):
{
"authProfiles": {
"dashscope": {
"env": {
"DASHSCOPE_API_KEY": "sk-xxxxxxxxxxxxxxxxxxxx"
}
}
}
}
方式 B — 在 OpenClaw 环境变量面板中直接添加
DASHSCOPE_API_KEY。
配置一次后永久生效,智能体会自动读取 Key 完成生图。用户无需了解具体技术细节。
验证配置是否成功
# 终端验证
echo $DASHSCOPE_API_KEY # 应该输出你的 Key,不为空即配置成功
脚本运行方式
# 1. 安装依赖
pip install requests openai
# 2. 设置环境变量(如果还没配)
export DASHSCOPE_API_KEY="sk-xxx"
# 3. 编辑表情列表
# scripts/generate-stickers-v2.py 中的 stickers 数组
# 添加你的表情定义(key, text, prompt)
# 4. 运行生成
python3 scripts/generate-stickers-v2.py
# 5. 格式处理
python3 scripts/format-stickers.py
工作流程
第一步:用户上传参考图 + 定义风格
用户输入:
- 参考图(1 张,人物/动物/角色照片或插画)
- 风格描述(如:Q 版卡通、超写实、水墨风、像素风、3D 渲染、日系动漫、美式漫画等)
- 可选:角色名称、角色设定文本
行为:
- 分析参考图:用视觉模型提取角色特征(长相、体型、服装风格、颜色体系)
- 与用户确认风格方向(如果描述不够具体,建议 2-3 个方向供选择)
第二步:生成定妆照
- 用生图模型生成角色定妆照
- 定妆照要求:
- 角色正面全身或半身
- 展示主要特征(服饰、标志物、颜色体系)
- 透明背景或纯色背景
- 比例:1:1(正方形,基础用于后续表情裁剪)
- 格式:PNG,至少 512×512px
输出: 定妆照 + 预览链接
用户确认: 用户需确认”定妆照可用”才进入下一步。如需修改,调整 prompt 重新生成。
第三步:设计表情列表
建议默认表情列表(可编辑):
- 基础情绪:开心、难过、生气、惊讶、喜欢
- 日常场景:OK、收到、加油、拜拜、好的
- 工作/特定场景:加载中、报错、算力告急、稳了、裂开、救救我、麻了
用户确认: 表情列表确认后才开始生成。
第四步:生成表情
4a 生成静态表情(PNG)
- 每张表情基于定妆照 + 具体表情描述生成
- 生成后在角色图上叠加上文字
- 输出规格:
- 尺寸:240×240px(微信表情标准)
- 格式:PNG,透明背景
- 命名:em01.png ~ em24.png
4b 生成动态贴图(GIF)
方案 A(推荐):生图 → 视频 → GIF
静态图 → 视频(wan2.6-i2v-flash) → ffmpeg 转 GIF:
ffmpeg -i input.mp4 -vf "fps=16,scale=240:240:flags=lanczos,split[s0][s1];[s0]palettegen=max_colors=64[p];[s1][p]paletteuse=dither=bayer" output.gif
方案 B(备用):多帧静态图拼接
生成 3-5 帧关键帧 → 用 ffmpeg/ImageMagick 拼接为 GIF
4c 生成专辑封面等配套素材
- 专辑封面(主图):PNG 240×240px
- 专辑横幅(Banner):PNG 750×560px 或 800×600px
- 表情包介绍文本(intro.md/文案)
第五步:组装微信表情开放平台专辑
输出目录结构:
output/
├── em01.png # 静态表情 1
├── em02.gif # 动态贴图 2
├── ...
├── emXX.png/gif
├── cover.png # 专辑封面 240×240
├── banner.png # 专辑横幅
└── intro.md # 专辑介绍
微信表情开放平台规范
| 项目 |
静态表情 |
动态贴图 |
| 尺寸 |
240×240px |
240×240px |
| 格式 |
PNG(透明背景) |
GIF |
| 文件大小 |
≤ 500KB |
≤ 500KB(建议 ≤ 300KB) |
| 数量 |
最少 8 张,最多 24 张 |
— |
| 帧率 |
— |
16-20 fps |
| 颜色数 |
— |
≤ 64 色 |
| 时长 |
— |
1-3 秒 |
| 循环 |
— |
应循环播放 |
审核注意事项
- 不得包含二维码、微信号、手机号等联系方式
- 不得包含政治敏感、色情、暴力内容
- 文字建议使用中文(可少量英文)
- 不得使用未授权的品牌 LOGO 或 IP
- 动态贴图需要流畅,抖动不能太剧烈
- 字体需确认无版权问题(推荐思源黑体、得意黑等开源字体)
交互模式
单张模式
用户 → 发一张参考图 + 风格要求
→ AI 生成定妆照
→ 用户确认
→ AI 逐个生成表情(用户每确认一张再生成下一张)
批量模式
用户 → 发一张参考图 + 风格要求 + 表情列表
→ AI 生成定妆照
→ 用户确认定妆照
→ AI 批量生成全部表情
→ 输出完整专辑
输出交付清单
- ✅ 定妆照(使用确认后的版本)
- ✅ 全部表情图(PNG/GIF,符合腾讯规范)
- ✅ 专辑封面 + 横幅
- ✅ 专辑介绍文案
- ✅ 打包好的专辑目录(可直接提交微信表情开放平台)
1. pip install requests openai
2. 配置 DASHSCOPE_API_KEY 或 STICKER_API_KEY+STICKER_PROVIDER=openai
3. OpenClaw auth-profiles 配置 env
4. 编辑 scripts/generate-stickers-v2.py 表情列表
5. python3 scripts/generate-stickers-v2.py && python3 scripts/format-stickers.py
发表回复