Files
hmo 04db423416 Initial commit: skills library
- 70 skills with code and documentation
- Add .gitignore (ignore __pycache__, output/, temp/, venv/)
- Clean up test intermediates and caches
2026-04-26 19:27:40 +08:00

20 KiB
Raw Permalink Blame History

name, description
name description
image-service 多模态图像处理技能,支持文生图、图生图、图生文、长图拼接、调研配图、小红书卡片图、专业信息图、文章封面图。当用户提到图片、图像、生成图、信息图、封面图、小红书、OCR 等关键词时触发。

图像处理技能

概述

能力 说明 脚本
文生图 根据中文文本描述生成图片 scripts/text_to_image.py
图生图 在已有图片基础上进行编辑 scripts/image_to_image.py
图生文 分析图片内容(描述、OCR、图表等) scripts/image_to_text.py
长图拼接 将多张图片垂直拼接为微信长图 scripts/merge_long_image.py
调研配图 预设手绘风格的调研报告信息图 scripts/research_image.py
小红书卡片图 10种视觉风格 × 8种布局,生成小红书系列图 文生图 + 提示词模板
专业信息图 20种布局 × 17种视觉风格,专业信息可视化 文生图 + 提示词模板
文章封面图 5维定制系统,生成文章/公众号封面 文生图 + 提示词模板

配置

配置文件:config/settings.json

配置项
IMAGE_API_BASE_URL https://ark.cn-beijing.volces.com/api/coding/v3
IMAGE_MODEL doubao-seed-2.0-pro
VISION_MODEL doubao-seed-code

执行规范

图片默认保存到命令执行时的当前工作目录

  1. 不要使用 workdir 切换到 skill 目录执行命令
  2. 始终在用户的工作目录下执行,使用脚本的绝对路径
  3. 脚本路径:.opencode/skills/image-service/scripts/
# 正确示例
python .opencode/skills/image-service/scripts/text_to_image.py "描述" -r 3:4 -o output.png

快速使用

文生图

python .opencode/skills/image-service/scripts/text_to_image.py "信息图风格,标题:AI技术趋势" -r 16:9
python .opencode/skills/image-service/scripts/text_to_image.py "竖版海报,产品展示" -r 3:4 -o poster.png

参数:-r 宽高比 | -s 尺寸 | -o 输出路径

支持比例:1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9

图生图

python .opencode/skills/image-service/scripts/image_to_image.py input.png "编辑描述" -r 3:4

图生文(视觉分析)

# 使用火山方舟视觉模型分析图片
python .opencode/skills/image-service/scripts/vision_analyzer.py image.jpg -m describe
python .opencode/skills/image-service/scripts/vision_analyzer.py screenshot.png -m ocr
python .opencode/skills/image-service/scripts/vision_analyzer.py chart.png -m chart
python .opencode/skills/image-service/scripts/vision_analyzer.py image.jpg -m custom -q "图片中红框框出来的部分是什么?"

模式:describe | ocr | chart | fashion | product | scene | custom

注意Coding Plan 唯一支持的视觉模型是 doubao-seed-code,专业视觉模型(如doubao-vision-pro)不支持。

长图拼接

python .opencode/skills/image-service/scripts/merge_long_image.py img1.png img2.png -o output.png --blend 20
python .opencode/skills/image-service/scripts/merge_long_image.py -p "*.png" -o long.png --sort name

参数:-p 通配符 | -o 输出 | -w 宽度 | -g 间隔 | --blend 融合 | --sort 排序

调研配图

python .opencode/skills/image-service/scripts/research_image.py -t arch -n "标题" -c "内容" -o output.png

类型:arch 架构图 | flow 流程图 | compare 对比图 | concept 概念图


小红书卡片图

将长内容拆分为 1-10 张小红书风格卡片图,适合种草、教程、知识分享等场景。

触发词:小红书图片、小红书卡片、XHS图、种草图、小红书配图

双维度体系

维度 控制 可选值
风格 视觉美学:配色、线条、装饰元素 甜美、清新、温暖、醒目、极简、复古、波普、笔记风、黑板风、手写笔记
布局 信息结构:密度、排列方式 留白、均衡、密集、列表、对比、流程、思维导图、四象限

风格和布局可自由组合,例如:「笔记风 + 密集」= 知识感的高密度卡片。

风格表

风格 中文名 说明
cute 甜美(默认) 甜系少女风,经典小红书美学
fresh 清新 干净清爽,自然舒适
warm 温暖 温馨亲切,有人情味
bold 醒目 高冲击力,抢注意力
minimal 极简 超干净,高级感
retro 复古 怀旧感,潮流复古
pop 波普 鲜艳活泼,视觉冲击
notion 笔记风 极简手绘线条,知识感
chalkboard 黑板风 彩色粉笔黑板,教育感
study-notes 手写笔记 真实手写照片风,蓝笔+红批注+黄荧光

布局表

布局 中文名 说明
sparse 留白(默认) 最少信息,最大冲击(1-2个要点)
balanced 均衡 标准内容排版(3-4个要点)
dense 密集 高信息密度,知识卡片风(5-8个要点)
list 列表 枚举排行格式(4-7项)
comparison 对比 左右对照排版
flow 流程 步骤/时间线排版(3-6步)
mindmap 思维导图 中心发散式(4-8个分支)
quadrant 四象限 四格/扇形分区

智能推荐

内容信号 推荐风格 推荐布局
美妆、时尚、可爱、少女 甜美 留白/均衡
健康、自然、清洁、有机 清新 均衡/流程
生活、故事、情感、温馨 温暖 均衡
警告、重要、必看、避坑 醒目 列表/对比
专业、商务、高端、简约 极简 留白/均衡
经典、怀旧、传统、复古 复古 均衡
有趣、惊喜、好玩、安利 波普 留白/列表
知识、概念、效率、工具 笔记风 密集/列表
教程、教学、课堂、学习 黑板风 均衡/密集
笔记、手写、学习攻略、真实 手写笔记 密集/列表/思维导图

内容策略

策略 中文名 适用场景 结构
故事驱动 经验分享型 测评、个人分享、蜕变故事 钩子→痛点→发现→体验→总结
信息密集 干货输出型 教程、对比、清单、推荐 核心结论→信息卡→优缺点→推荐
视觉优先 氛围美图型 高颜值产品、生活方式 主图→细节→场景→引导

使用方式

  1. 提供内容素材(文章、笔记、文本)
  2. 指定风格和布局(或让系统自动推荐)
  3. 系统分析内容,拆分为多张卡片
  4. 为每张卡片生成提示词并调用文生图
# 示例:生成小红书卡片图
python .opencode/skills/image-service/scripts/text_to_image.py "小红书卡片风格,甜美配色,标题:护肤入门指南,内容要点:1.清洁 2.保湿 3.防晒" -r 3:4 -o xhs_card_01.png

输出结构

xhs-images/{主题}/
├── source-{slug}.{ext}           # 原始素材
├── analysis.md                   # 内容分析
├── outline.md                    # 最终大纲
├── prompts/                      # 各卡片提示词
│   ├── 01-cover-{slug}.md
│   ├── 02-content-{slug}.md
│   └── ...
├── 01-cover-{slug}.png           # 生成的卡片图
├── 02-content-{slug}.png
└── NN-ending-{slug}.png

专业信息图

20种布局 × 17种视觉风格,自由组合生成专业信息可视化图。

触发词:信息图、可视化、infographic、数据图、知识图谱、流程图

布局表(20种)

布局 中文名 适用场景
linear-progression 线性进程 时间线、流程、教程
binary-comparison 二元对比 A vs B、前后对比、优缺点
comparison-matrix 对比矩阵 多因素对比评测
hierarchical-layers 层级金字塔 优先级、层次结构
tree-branching 树状分支 分类、知识体系
hub-spoke 中心辐射 核心概念 + 关联项
structural-breakdown 结构分解 拆解视图、剖面图
bento-grid 便当格(默认) 多主题概览、综合展示
iceberg 冰山模型 表面 vs 深层、显隐对比
bridge 桥梁模型 问题→解决方案
funnel 漏斗模型 转化、筛选、收敛
isometric-map 等距地图 空间关系、场景布局
dashboard 仪表盘 指标、KPI、数据看板
periodic-table 元素周期表 分类集合、知识卡
comic-strip 漫画条 叙事、流程故事化
story-mountain 故事山 剧情结构、张力弧线
jigsaw 拼图模型 相互关联的组成部分
venn-diagram 维恩图 交叉概念、共性分析
winding-roadmap 蜿蜒路线图 旅程、里程碑、路径
circular-flow 循环流 周期、迭代、循环过程

风格表(17种)

风格 中文名 说明
craft-handmade 手工拼贴(默认) 手绘纸艺感,温暖亲切
claymation 黏土动画 3D黏土人偶,定格动画感
kawaii 卡哇伊 日系可爱,粉彩配色
storybook-watercolor 绘本水彩 柔和水彩,童话感
chalkboard 粉笔黑板 黑板粉笔画,教育感
cyberpunk-neon 赛博霓虹 霓虹灯光,未来科技感
bold-graphic 漫画粗线 漫画风格,网点半调
aged-academia 复古学术 老派科学手稿,泛黄纸张
corporate-memphis 企业孟菲斯 扁平矢量,鲜艳活泼
technical-schematic 技术蓝图 工程制图,蓝底白线
origami 折纸 几何折叠,纸张质感
pixel-art 像素风 复古8位游戏风
ui-wireframe 线框图 灰度界面原型风
subway-map 地铁线路图 交通图式,线条清晰
ikea-manual 宜家说明书 极简线稿,无废话
knolling 整理摆拍 物品俯拍整齐排列
lego-brick 乐高积木 积木拼搭,玩具感

推荐组合

内容类型 推荐布局 + 风格
时间线/历史 线性进程 + 手工拼贴
步骤教程 线性进程 + 宜家说明书
A vs B 对比 二元对比 + 企业孟菲斯
层级结构 层级金字塔 + 手工拼贴
交叉概念 维恩图 + 手工拼贴
转化漏斗 漏斗模型 + 企业孟菲斯
循环流程 循环流 + 手工拼贴
技术架构 结构分解 + 技术蓝图
数据指标 仪表盘 + 企业孟菲斯
教育科普 便当格 + 粉笔黑板
旅程路径 蜿蜒路线图 + 绘本水彩
分类集合 元素周期表 + 漫画粗线

默认组合:便当格 + 手工拼贴

使用方式

  1. 提供内容素材(文本、数据、大纲)
  2. 指定布局和风格(或让系统根据内容自动推荐)
  3. 系统分析内容结构,生成结构化信息图提示词
  4. 调用文生图生成最终图片
# 示例:生成专业信息图
python .opencode/skills/image-service/scripts/text_to_image.py "信息图,手工拼贴风格,便当格布局,标题:大模型技术栈全景,包含6个模块:数据、预训练、微调、对齐、推理、部署" -r 16:9 -o infographic.png

核心原则

  • 保留原始数据原文,不擅自总结或改写
  • 先明确信息传达目标,再组织视觉结构
  • 标题、标签、图例等文字内容用中文

输出结构

infographic/{主题}/
├── source-{slug}.{ext}           # 原始素材
├── analysis.md                   # 内容分析
├── structured-content.md         # 结构化内容
├── prompts/infographic.md        # 生成提示词
└── infographic.png               # 最终信息图

文章封面图

5维定制系统,为文章、博客、公众号生成精美封面图。

触发词:封面图、文章封面、公众号封面、博客头图、cover image

五维体系

维度 可选值 默认值
类型 主视觉(hero)、概念隐喻(conceptual)、文字排版(typography)、比喻象征(metaphor)、场景叙事(scene)、极简留白(minimal) 自动
配色 暖色(warm)、雅致(elegant)、冷色(cool)、暗黑(dark)、大地色(earth)、鲜艳(vivid)、粉彩(pastel)、黑白(mono)、复古(retro) 自动
渲染 扁平矢量(flat-vector)、手绘(hand-drawn)、绘画(painterly)、数字CG(digital)、像素(pixel)、粉笔(chalk) 自动
文字 无文字(none)、仅标题(title-only)、标题+副标题(title-subtitle)、富文字(text-rich) 仅标题
氛围 内敛(subtle)、均衡(balanced)、强烈(bold) 均衡

配色详情(9种)

配色 中文名 色彩特征
warm 暖色 橙红黄,温暖积极
elegant 雅致 莫兰迪色系,低饱和高级感
cool 冷色 蓝绿紫,理性科技感
dark 暗黑 深色背景,对比强烈
earth 大地色 棕绿土色,自然质朴
vivid 鲜艳 高饱和撞色,视觉冲击
pastel 粉彩 马卡龙色,柔和温柔
mono 黑白 纯黑白灰,经典永恒
retro 复古 胶片色调,怀旧氛围

渲染风格(6种)

渲染 中文名 说明
flat-vector 扁平矢量 干净利落,现代商务
hand-drawn 手绘 手绘线条,亲切有趣
painterly 绘画 油画/水彩质感,艺术感
digital 数字CG 3D渲染,科幻现代
pixel 像素 像素艺术,怀旧趣味
chalk 粉笔 黑板粉笔,教育学术

使用方式

  1. 提供文章内容或标题
  2. 指定五个维度(或让系统自动匹配)
  3. 系统分析文章主题,生成封面提示词
  4. 调用文生图生成封面
# 示例:生成文章封面
python .opencode/skills/image-service/scripts/text_to_image.py "文章封面,概念隐喻风格,冷色调,扁平矢量渲染,标题:深入理解Transformer架构" -r 16:9 -o cover.png

# 公众号封面(推荐2.35:1宽幅)
python .opencode/skills/image-service/scripts/text_to_image.py "文章封面,暗黑配色,数字CG渲染,极简留白,标题:2025 AI趋势" -r 21:9 -o wechat_cover.png

支持比例:16:9(标准)、21:9(宽幅/电影感)、4:33:21:1(方形)、3:4(竖版)


AI图片生成后端(多Provider支持)

除默认的 IMAGE_API 后端外,还可通过第三方 AI SDK 直接调用 OpenAI / Google / DashScope 等图像生成接口,作为补充方案。

触发词:用OpenAI生成图、用Google生图、DashScope生图、切换生图后端

支持的 Provider

Provider 模型 特点
Google Imagen 3 默认首选,支持参考图多模态
OpenAI gpt-image-1 / dall-e-3 高质量,支持图片编辑
DashScope z-image-turbo 通义万象,中文理解好

环境变量

变量 说明
OPENAI_API_KEY OpenAI API 密钥
GOOGLE_API_KEY Google API 密钥
DASHSCOPE_API_KEY DashScope API 密钥
OPENAI_IMAGE_MODEL OpenAI 模型覆盖
GOOGLE_IMAGE_MODEL Google 模型覆盖
DASHSCOPE_IMAGE_MODEL DashScope 模型覆盖(默认 z-image-turbo

Provider 自动选择逻辑

  1. 提供了参考图(--ref)且未指定 Provider → 优先 Google,其次 OpenAI
  2. 明确指定 --provider → 使用指定的
  3. 只有一个 API Key 可用 → 使用该 Provider
  4. 多个可用 → 默认 Google

质量预设

预设 Google 尺寸 OpenAI 尺寸 适用场景
normal 1K 1024px 快速预览
2k(默认) 2K 2048px 封面、插画、信息图

使用示例

# 基本用法(需配置对应 API Key)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只猫" --image cat.png

# 指定比例
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "风景画" --image out.png --ar 16:9

# 高质量
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "产品图" --image out.png --quality 2k

# 指定Provider
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只猫" --image out.png --provider openai

# 使用参考图
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "改为蓝色" --image out.png --ref source.png

# DashScope(中文场景推荐)
npx -y bun ${SKILL_DIR}/scripts/main.ts --prompt "一只可爱的猫" --image out.png --provider dashscope

参数列表

参数 说明
--prompt, -p 提示词文本
--promptfiles 从文件读取提示词(多文件拼接)
--image 输出图片路径(必填)
--provider 指定 Providergoogle / openai / dashscope
--model, -m 模型 ID
--ar 宽高比(如 16:9, 1:1
--size 尺寸(如 1024x1024
--quality 质量预设:normal / 2k
--ref 参考图片
--n 生成数量
--json JSON 格式输出

执行前必做:需求类型判断(铁律)

收到图片生成需求后,必须先判断是哪种类型,再决定执行方式:

长图识别规则

提示词中出现以下任一特征,即判定为长图需求

特征类型 识别关键词/模式
明确声明 长图、长图海报、垂直长图、微信长图、Infographic、Long Banner
分段结构 提示词包含多个段落(如"第1部分"、"顶部"、"中间"、"底部"
编号列表 使用 ### 1.### 2. 等编号分段
多屏内容 描述了3个及以上独立画面/模块
从上至下 出现"从上至下"、"从上到下"等描述

判断后的执行路径

识别为长图     → 必须先读取 references/long-image-guide.md → 按长图流程执行
识别为小红书图  → 按「小红书卡片图」章节流程执行
识别为信息图   → 按「专业信息图」章节流程执行
识别为封面图   → 按「文章封面图」章节流程执行
识别为单图     → 直接使用 text_to_image.py 生成

铁律:识别为长图后,禁止直接生成!必须先加载长图指南,按指南流程执行。

详细指南(按需加载)

场景 触发条件 参考文档
生成多屏长图 命中上述长图识别规则 references/long-image-guide.md(必须加载)
图片含中文文字 提示词要求图片包含中文标题/文字 references/text-rendering-guide.md
为 PPT/文档配图 用户提供了配色要求或参考文档 references/color-sync-guide.md
API 接口细节 需要了解底层实现 docs/api-reference.md
提示词技巧 需要优化提示词效果 docs/prompt-guide.md

提示词要点

  1. 必须使用中文撰写提示词
  2. 图片中的标题、标签必须为中文
  3. 默认宽高比 16:9,可通过 -r 参数调整
  4. 推荐风格:信息图、数据可视化、手绘文字、科技插画

触发关键词

  • 生成类:生成图片、创建图片、文生图、图生图、信息图、数据可视化
  • 分析类:分析图片、OCR、识别文字、图生文
  • 拼接类:长图、微信长图、拼接图片
  • 小红书:小红书图片、小红书卡片、种草图、XHS配图
  • 信息图:专业信息图、infographic、知识图谱、流程图、可视化
  • 封面类:封面图、文章封面、公众号封面、博客头图
  • 后端切换:用OpenAI生图、用Google生图、DashScope生图