video-stickfigure
火柴人图片生成技能。使用AI生成粉笔画风格火柴人,并用HSV统一背景色。当需要生成火柴人视频素材时触发。
Best use case
video-stickfigure is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
火柴人图片生成技能。使用AI生成粉笔画风格火柴人,并用HSV统一背景色。当需要生成火柴人视频素材时触发。
Teams using video-stickfigure should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/video-stickfigure/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How video-stickfigure Compares
| Feature / Agent | video-stickfigure | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
火柴人图片生成技能。使用AI生成粉笔画风格火柴人,并用HSV统一背景色。当需要生成火柴人视频素材时触发。
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# 火柴人生图技能
## 🚨 核心原则
> **必须使用AI生图!禁止用PIL画线条!**
>
> 检查标准:生成的图片文件 > 50KB
---
## 🔧 生图工具
**使用 image-service skill:**
```bash
python ~/.openclaw/skills/image-service/scripts/text_to_image.py "[prompt]" -r 9:16 -o stick1.png
```
---
## 📝 Prompt模板
### 深墨绿背景版(推荐·默认)
```
minimalist chalk-style stick figure on dark green chalkboard background #3c5b45,
white chalk line art, simple 5-stroke drawing style,
[动作描述],
exaggerated pose, hand-drawn feel, chalk texture,
no shading, no gradient, stark contrast,
vertical composition 9:16, no text, no watermark
```
### 纯黑背景版(备选)
```
minimalist stick figure, pure black background #000000,
white line art only, simple 5-stroke drawing,
[动作描述],
exaggerated pose, no shading, no gradient, no gray,
stark contrast, cartoon style,
vertical composition 9:16, no text, no watermark
```
**选择建议:**
- 深墨绿版:有黑板质感,视觉更柔和 ✅ 推荐
- 纯黑版:对比度更高,更简洁
### 动作描述 + 氛围元素(必须包含!)
> **火柴人不能孤零零的!必须加氛围元素来衬托情绪!**
| 情绪/概念 | 人物动作 | 🌟 氛围元素(必加!) |
|-----------|----------|----------------------|
| 衰老/疲惫 | person slumped over, tired posture | + withered leaves falling, dim shadows, cracked ground |
| 枯萎/消沉 | person wilting like a dying plant | + dead tree nearby, falling petals, dark clouds |
| 向上/成长 | person climbing stairs upward | + sunlight rays from above, distant mountain peak, stars |
| 扛事/承担 | person lifting heavy weight overhead | + storm clouds, rain drops, lightning in background |
| 看远/远眺 | person standing on cliff, hand over eyes | + vast horizon, clouds below feet, sunrise glow |
| 容人/包容 | person with arms wide open | + small figures approaching, warm light rays, hearts floating |
| 愉悦/快乐 | person jumping with joy, arms raised | + confetti, sparkles, fireworks in sky |
| 成长/蜕变 | person breaking out of shell | + butterfly wings emerging, light beams, blooming flowers |
| 思考/沉思 | person sitting cross-legged, hand on chin | + floating question marks, gears, light bulb above head |
| 行动/奔跑 | person running forward with determination | + motion lines, wind effect, path stretching ahead |
### Prompt组装公式
```
[基础模板] + [人物动作] + [氛围元素] + [后缀]
```
**示例:衰老场景**
```
minimalist chalk-style stick figure on dark green chalkboard background #3c5b45,
white chalk line art, simple 5-stroke drawing style,
person slumped over tired posture aging feeling,
withered leaves falling around, dim shadows, cracked ground beneath,
exaggerated pose, hand-drawn feel, chalk texture,
no shading, no gradient, stark contrast,
vertical composition 9:16, no text, no watermark
```
**示例:爬台阶场景**
```
minimalist chalk-style stick figure on dark green chalkboard background #3c5b45,
white chalk line art, simple 5-stroke drawing style,
person climbing stairs upward with determination,
sunlight rays streaming from above, distant mountain peak visible, glowing stars,
exaggerated pose, hand-drawn feel, chalk texture,
no shading, no gradient, stark contrast,
vertical composition 9:16, no text, no watermark
```
### ⚠️ 氛围元素规则
1. **必须添加** - 不加氛围元素的火柴人图太单调
2. **与情绪匹配** - 消极情绪用暗元素,积极情绪用亮元素
3. **不要太多** - 2-3个氛围元素足够,太多会杂乱
4. **保持简约** - 氛围元素也是粉笔画风格,不要写实
---
## 🎨 HSV背景统一处理(必做!)
> **AI无法精确控制颜色!生图后必须用代码统一背景色!**
### 处理脚本
```python
import cv2
import numpy as np
def unify_background_hsv(input_path, output_path, target_hex="#3c5b45"):
"""
用HSV范围替换统一背景色
"""
img = cv2.imread(input_path)
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
# 绿色系HSV范围(覆盖AI生成的各种绿色)
lower = np.array([35, 20, 20])
upper = np.array([85, 255, 255])
# 创建掩码
mask = cv2.inRange(hsv, lower, upper)
# 目标颜色 BGR
target_bgr = tuple(int(target_hex.lstrip('#')[i:i+2], 16) for i in (4, 2, 0))
# 替换背景
result = img.copy()
result[mask > 0] = target_bgr
cv2.imwrite(output_path, result)
return output_path
# 批量处理
import glob
for f in glob.glob("stick*.png"):
if "_unified" not in f:
out = f.replace(".png", "_unified.png")
unify_background_hsv(f, out)
print(f"处理完成: {out}")
```
### 命令行版本
```bash
python3 << 'EOF'
import cv2
import numpy as np
import glob
import sys
target_hex = "#3c5b45"
target_bgr = tuple(int(target_hex.lstrip('#')[i:i+2], 16) for i in (4, 2, 0))
for f in glob.glob("stick*.png"):
if "_unified" in f:
continue
img = cv2.imread(f)
hsv = cv2.cvtColor(img, cv2.COLOR_BGR2HSV)
mask = cv2.inRange(hsv, np.array([35,20,20]), np.array([85,255,255]))
result = img.copy()
result[mask > 0] = target_bgr
out = f.replace(".png", "_unified.png")
cv2.imwrite(out, result)
print(f"✅ {f} -> {out}")
EOF
```
---
## ✅ 检查清单(必须全部通过!)
在交付图片前,必须确认:
| 检查项 | 标准 | 不通过则 |
|--------|------|----------|
| 文件大小 | 每张 > 50KB | 重新AI生图 |
| 图片数量 | 与场景数量一致 | 补充生成 |
| 背景颜色 | 统一为 #3c5b45 | 执行HSV处理 |
| 火柴人可见 | 白色线条清晰 | 重新生成 |
```bash
# 快速检查文件大小
ls -la stick*_unified.png | awk '{if($5<50000) print "❌ "$9" 太小: "$5"B"; else print "✅ "$9": "$5"B"}'
```
---
## 📁 输出规范
| 文件 | 说明 |
|------|------|
| stick1.png, stick2.png, ... | AI生成的原始图片 |
| stick1_unified.png, ... | HSV处理后的统一背景图片 |
**后续流程只使用 `*_unified.png` 文件!**
---
## 🚫 常见错误
| 错误 | 后果 | 正确做法 |
|------|------|----------|
| 用PIL画线条 | 视频看起来像测试图 | 用image-service AI生图 |
| 跳过HSV处理 | 背景色深浅不一 | 必须执行HSV统一 |
| 文件<50KB | 图片质量差 | 重新生成 |
| 用原图不用unified | 背景不统一 | 只用_unified.png |
| **火柴人没有氛围元素** | 画面单调无感染力 | prompt必须加氛围元素 |Related Skills
videocut-subtitle
字幕生成与烧录。转录→词典纠错→审核→烧录。触发词:加字幕、生成字幕、字幕
videocut-self-update
自更新 skills。记录用户反馈,更新方法论和规则。触发词:更新规则、记录反馈、改进skill
videocut-install
环境准备。安装依赖、下载模型、验证环境。触发词:安装、环境准备、初始化
videocut-clip
执行视频剪辑。根据确认的删除任务执行FFmpeg剪辑,循环直到零口误,生成字幕。触发词:执行剪辑、开始剪、确认剪辑
videocut-clip-oral
口播视频转录和口误识别。生成审查稿和删除任务清单。触发词:剪口播、处理视频、识别口误
video-subtitle-remover
视频硬字幕/水印去除技能。自动配置基于 YaoFANGUK/video-subtitle-remover 的环境并执行去字幕。当用户要求"去除视频字幕"、"去水印"、"把这个视频的字幕干掉"时触发此技能。
video-creator
视频创作技能。图片+音频合成视频,支持TTS配音、淡入淡出转场、字幕、片尾、BGM。当用户提到「生成视频」「做视频」「教学视频」「图文转视频」「做视频号」「配音视频」「图文结合视频」「古诗视频」「故事视频」时触发。内含生图→配音→合成全流程,无需单独调用image-service。
video-copywriting
短视频文案创作技能。包含爆款公式、黄金结构、三关校验。当需要撰写短视频文案时触发。
uni-agent
统一智能体协议适配层。一套 API 调用所有 Agent 协议(ANP/MCP/A2A/AITP 等)。当用户需要调用 Agent、跨协议通信、连接工具时触发此技能。
story-to-scenes
长文本拆镜批量生图引擎。将故事、课程、连环画脚本智能拆分场景,批量生成风格统一、角色一致的配图。当用户提到「拆镜生图」「故事配图」「批量场景图」「连环画生成」「绘本生成」时使用此技能。
smart-query
智能数据库查询技能。通过SSH隧道连接线上数据库,支持自然语言转SQL、执行查询、表结构探索。当用户需要查询数据库、问数据、看表结构时使用此技能。
skill-creator
Skill 开发指南。当用户需要创建新 Skill 或更新已有 Skill 时触发,提供标准化模板、目录规范和最佳实践。