Skip to main content
ClaudeWave
Skill173 estrellas del repoactualizado yesterday

aws-wechat-article-images

This Claude Code skill generates cover images and article illustrations for WeChat public accounts by analyzing article titles and content to match visual styles, producing multiple design variations from reusable style presets. Use it when editing WeChat articles that need AI-generated cover images or inline illustrations, triggered by keywords like "封面" (cover), "配图" (illustration), or "生成图片" (generate images); it integrates with the larger aws-wechat-article suite for multi-stage workflows combining writing, review, layout, image generation, and publishing.

Instalar en Claude Code
Copiar
git clone --depth 1 https://github.com/aiworkskills/wechat-article-skills /tmp/aws-wechat-article-images && cp -r /tmp/aws-wechat-article-images/skills/aws-wechat-article-images ~/.claude/skills/aws-wechat-article-images
Después abre una sesión nueva de Claude Code; el skill carga automáticamente.

SKILL.md

# 配图

**公众号封面 & 配图 AI 生成** —— 按文章内容自动匹配画风,一稿多方案,风格体系可复用。

> **套件说明** · 本 skill 属 `aws-wechat-article-*` 一条龙套件(共 9 个 slug,入口 `aws-wechat-article-main`)。跨 skill 的相对引用依赖同一 `skills/` 目录,建议一并 `clawhub install` 全套。源码:<https://github.com/aiworkskills/wechat-article-skills>

## 能力披露(Capabilities)

本 skill 调 `image_create.py` **调外部图像 API** 生成封面与正文配图。**会把图片提示词(可能含文章主题片段)发给用户配置的图像生成端点。** 具体行为:

- **凭证读取**:`aws.env` 的 `IMAGE_MODEL_API_KEY`
- **凭证外发**:该 key 以 `Authorization: Bearer` 头发送到 `image_model.base_url` 指定端点(常见为 DALL-E、gpt-image 兼容 `/v1/images/generations`,或多模态模型 `/v1/chat/completions`,具体由用户配置)
- **内容外发**:每张图片的 prompt(文本)作为 JSON POST body 发送;prompt 内容来自本篇 `imgs/prompts/*.md`(可能包含文章标题、章节摘要)
- **下图 SSRF 防御**:若 API 响应返回图片 URL(而非 base64),脚本**仅允许下载 http/https 公网地址**;内网 / 环回 / 链路本地 / 保留地址全部拒绝(防止恶意或被劫持的模型端点把脚本当作 SSRF 跳板)
- **文件读**:仓库内 `.aws-article/config.yaml`、本篇 `article.yaml`、`article.md`、`imgs/prompts/*.md`、`.aws-article/products/{产品名}/images/*`(业务配图库,本篇涉及用户业务时优先复用)
- **文件写**:本篇 `imgs/*.{png,webp}`、可选 `img_analysis.md`
- **shell**:仅 `python3 {baseDir}/scripts/image_create.py`、`user_image_prepare.py`

**建议**:用专用 key(最低权限、独立计费),避免使用 account 级 master key。

## 配套 skill(informational)

本 skill 是 `aws-wechat-article-*` 一条龙公众号套件的**配图环节**(入口 `aws-wechat-article-main`)。工作流中的若干步骤会读取同级 `../aws-wechat-article-main/references/*.md` 等共享文档(首次引导、env/config 示例、articlescreening schema 等)。

- **套件完整装齐到同一 `skills/` 根目录**时,跨 skill 引用都能读到。
- **单独安装本 skill** 时,跨 skill 引用的步骤会在读取阶段遇到 `file not found`;本 skill 内的生图脚本仍可用。

完整 9 slug 清单见 [源码仓库](https://github.com/aiworkskills/wechat-article-skills)。

## 路由

完整长文从选题到发布 → [aws-wechat-article-main](../aws-wechat-article-main/SKILL.md);图片消息/九宫格等多图推送 → [aws-wechat-sticker](../aws-wechat-sticker/SKILL.md)。

读取文章中的配图标记,按 Type × Style 体系生成图片。专注于**长文配图**,贴图请用 sticker。

## 脚本目录

**Agent 执行**:确定本 SKILL.md 所在目录为 `{baseDir}`。

| 脚本 | 用途 |
|------|------|
| `scripts/image_create.py` | 专用生图 API:读 **`.aws-article/config.yaml`** 的 **`image_model`** + 仓库根 **`aws.env`** 的 **`IMAGE_MODEL_API_KEY`**|
| `scripts/user_image_prepare.py` | 用户供图模式:确保本篇 `imgs/` 存在并生成 `img_analysis.md` 模板(封面仅 1 张) |

## 配置检查 ⛔

任何操作执行前,**必须**按 **[首次引导](../aws-wechat-article-main/references/first-time-setup.md)** 执行其中的 **「检测顺序」**。检测通过后才能进行以下操作(或用户明确书面确认「本次不检查」):

从选题到发布的**前置规则**见 [aws-wechat-article-main/SKILL.md](../aws-wechat-article-main/SKILL.md);本 skill 只描述配图步骤。

**图片模型**:**`image_model`**(`provider`、`base_url`、`model`、`default_size`、`default_quality` 等)在 **`config.yaml`**;**`IMAGE_MODEL_API_KEY`** 在 **`aws.env`**。键名对照 **`{baseDir}/../aws-wechat-article-main/references/env.example.yaml`**。

**`base_url` 须为完整端点路径**,脚本根据路径判断调用模式:
- `https://xxx.com/v1/images/generations` — DALL-E / gpt-image 等
- `https://xxx.com/v1/chat/completions` — Gemini 等多模态模型(通过中转站生图)

**交互约定**:可提示用户上述项是否已填;**一条龙**下通常已通过 **`validate_env.py`**。须遵守 main 的**智能体行为约束**——未通过环境校验且未获用户明确「本次例外」时,不得假装已走专用生图 API。

## 封面风格 + 正文配图

- **封面风格**:独立预设体系,见 [references/cover-styles/](references/cover-styles/)。每个预设 `.md` 自包含视觉关键词。
- **正文配图**:Type(画面构成)决定"画什么",Style(视觉风格)由 Agent 根据 tone/category 内部选择。Type 列表与 prompt 模板见 [references/image-styles/](references/image-styles/) 目录。

### 封面 vs 正文(资源策略)⛔

| 类型 | 要求 |
|------|------|
| **封面** | **必须**通过 **`image_create.py`** 生成(`generate` 或 `batch` 读 `imgs/prompts/*.md`),产出并保存为文章目录下的 **`cover.png`**(或 `cover.jpg` / `cover.jpeg` / `cover.webp`)。**禁止**将 `.aws-article/products/{产品名}/images/`(或其它素材库文件)**直接复制**为 `cover.*` 充当封面。**例外**:用户**明确上传**封面文件并声明「封面只用这一张」时,可跳过脚本,须在 **`img_analysis.md`** 与审稿记录中注明「用户指定封面」。 |
| **正文** | **优先使用业务配图库**:`.aws-article/products/{相关产品}/images/`(先读同名 `.md` 再复制到本篇 `imgs/` 或引用路径),见下文「正文配图来源优先级」。缺图时再走 **`image_create.py`** 或 Agent 降级生图。 |

> 说明:全局 `config.yaml` 的 **`image_source: user`** 表示「正文以用户/素材引用为主」;**不豁免**上述「封面须脚本生成」规则,除非用户同时提供了封面文件并声明仅用该封面。

## 工作流

```
配图进度:
- [ ] 第1步:环境检查 + 本篇约束与文章
- [ ] 第2步:解析配图标记
- [ ] 第3步:确定风格
- [ ] 第4步:生成配图方案
- [ ] 第5步:展示方案并等待确认 ⛔
- [ ] 第6步:生成图片(**脚本失败时**见同节「调用失败」分支,勿静默吞掉报错)
- [ ] 第7步:插入文章
```

### 正文配图来源优先级(Agent)⛔

**仅适用于正文插图**(不含封面;封面见上文「封面 vs 正文」)。**在**为正文 `placeholder` 调用 `image_create.py`、写入 `imgs/prompts/` **之前**,须先判断是否可用**本地业务配图库**,避免**业务相关文章**(教程 / 产品介绍 / 案例 / 自家界面截图)「有现成业务配图却重新生成」:

1. **仓库业务配图库**:若本篇涉及用户业务,先 `ls .aws-article/products/`,进入相关产品的 **`images/`** 子目录,列出并阅读 **同名 `.md`**(含路径与画面说明),按主题匹配后,在 `article.md` 中直接引用对应 **`.png` / `.webp`**(或复制到本篇 `imgs/` 再引用)。**与正文严格相关才用**,避免硬凑。
2. **用户上传 / 本篇 `image_source: user`**:用户提供的图或上述引用策略,走「用户供图模式」与 `img_analysis.md`(正文部分)。
3. **仍缺图或须原创插画**:再进入 **Type × Style**、`imgs/prompts/` 与 **`image_create.py`**(或 Agent 降级生图)。

> 说明:业务配图库属「仓库内业务资源」,**不必**等用户手动上传才查;与「用户供图模式」并列,而非仅附属于后者。

### 第1步:环境检查 + 本篇约束与文章

- **全局**:读 **`.aws-article/config.yaml`** — `cover_aspect`、`cover_style`、`image_density`、`caption_style`、`multi_image_count`、`tone` 等以之为准(完整字段见 [articlescreening-schema.md](../aws-wechat-article-main/references/articlescreening-schema.md) 与 **`config.example.yaml`**)。
- **本篇**:若同目录有 **`article.yaml`**,读取 **`default_cover_image_style`**、**`default_article_image_style`**(应为单元素列表,代表本篇已选预设)及 `cover_image` 等字段。
- 读取 **`article.md`**(或当前流程规定的正文来源)。
- 当 `image_source: user`(全局或本篇)时,进入「用户供图模式」:先创建本篇 `imgs/` 并生成/更新 `img_analysis.md`,记录每张图的内容分析、建议章节与推荐用途。

### 第2步:解析配图标记

提取所有 `![类型:描述](placeholder)`。`实证` 类型提示用户提供素材或从 `.aws-article/products/{相关产品}/images/` 搜索(业务配图库)。

### 用户供图模式(新增分支)

当用户上传图片并指定主题时,按以下顺序执行:

1. 立即确保 `{article_dir}/imgs/` 存在,并将用户图片放入该目录。
2. 生成/维护 `{article_dir}/img_analysis.md`(每图至少包含:文件名、图片内容、建议章节、推荐用途、图注建议)。
3. **硬性约束**:`img_analysis.md` 中“推荐用途:封面”**必须且只能出现 1 次**;其余图片用途应为“正文”。
4. 同步更新本篇 `article.yaml`:`image_source: user`(从模型生图切换到用户供图状态)。
   - 字段取值只允许 `generated` / `user`。
5. 写稿阶段直接使用用户图片路径(如 `imgs/淘米.png`),**不再使用 placeholder**。

**顺序说明**:`imgs/` 落图 → 分析并写好 `img_analysis.md` → 再跑 `write.py`;写稿时以 `img_analysis.md` 为准,把图片插到与内容匹配的章节位置。

### 发布后换图重发(新增分支)

当用户明确说「这篇文章配图不满意,换成我上传的新图并重新发草稿箱」时,按以下流程:

1. 用户指定目标文章目录(`drafts/YYYYMMDD-slug/`)。
2. 将新图放入该目录 `imgs/`,并更新 `img_analysis.md`(仍需满足“封面仅 1 张”)。
   - 同步把本篇 `article.yaml.im
aws-wechat-article-assetsSkill

公众号素材|业务资料库|预设包|.aws 预设包|主题包|品牌包|aiworkskills.cn — 用户业务资料库与预设包管理:业务资料按产品名组织在 `.aws-article/products/{产品名}/`(介绍 .md 直挂产品根 + 配图归 `images/` 子目录含同名说明 .md),AI 与用户对话产出业务介绍内容时引导用户保存;图片入库走 `product_image_ingest.py --product <产品名> --stem <中文名>`。导入 .aws ZIP 预设包(本地文件或 `https://aiworkskills.cn/**/*.aws` URL)合并主题/配色/字体配置到 `.aws-article/presets/`;`config.yaml` 仅本地不存在时从包内复制,已存在则 stdout 输出差异 JSON 不覆盖。面向内容运营、品牌团队、设计支持岗。触发词:「素材库入库」「stock images」「上传图到素材库」「.aws」「预设包」「导入预设」「主题包」「aiworkskills.cn 链接」「.aws 下载地址」。

aws-wechat-article-formattingSkill

公众号排版|Markdown 转 HTML|排版主题|段落样式 — 公众号一键排版工具,Markdown 文稿转微信后台可粘贴 HTML,多主题、多字号、段落样式切换,所见即所得。面向公众号编辑、独立作者、排版岗。触发词:「排版」「版式」「美化」「格式化」「字号」「段落样式」「换个排版主题」「换个版式」「转 HTML」「弄好看点」「调整格式」。换预设包/品牌包/整套主题配色请走 aws-wechat-article-assets;需要多环节串联(写+审+排+配图+发)请走 aws-wechat-article-main。

aws-wechat-article-mainSkill

公众号运营|微信公众号|公众号一条龙|公众号全流程|自媒体运营|wechat automation|content pipeline|AIGC workflow — 公众号一条龙运营总控入口,选题→写稿→审稿→排版→配图→发布串联 8 个子 skill,单条指令完成整篇图文从 0 到上架。面向公众号小编、自媒体、品牌内容。触发词分层:**一条龙流程**「一条龙」「完整流程」「从头做」「从 0 到发布」;**新做新发**「帮我写篇公众号文章」「做一篇公众号文章」「我想发一篇」「帮我发一篇」「再来一篇」;**选题起点**「今天写什么好」「有什么好写的」「找个话题」「爆款选题」「热点选题」「起个爆款标题」;**策划起点**「内容日历」「系列策划」「专栏规划」「连载」;**流程恢复**「接着上次那篇」「继续昨天的」「继续上次的」「接着之前的进度」;**显式模型新写**「用 GPT 写一篇」「用 DeepSeek 写一篇」「把提纲写成文章」。子 skill(topics/writing/review/formatting/images/publish/sticker/assets)单独触发仅限对**已有产物**的修改场景(如"改标题""润色这段""排版""审稿""加封面""发布");新做/策划/多环节串联一律走本入口。

aws-wechat-article-publishSkill

公众号发布|公众号草稿箱|公众号群发|图文推送|微信 API|wechat automation|WeChat API automation|auto publish|scheduled publish — 公众号 API 发布工具,图文入草稿箱或直接群发,支持封面素材上传、发布前检查与 draft/published 模式切换。面向公众号运营、自动化内容团队、开发者。触发词:「发布」「提交」「群发」「推送」「发出去」「上传到公众号」「发到公众号」「可以发了吗」「发布前检查」。需要多环节串联(写+审+排+配图+发)请走 aws-wechat-article-main。

aws-wechat-article-reviewSkill

公众号审稿|公众号校对|敏感词检测|内容合规 — 公众号发布前合规审查:敏感词扫描、错别字检测、政治合规、平台规范校验,一次性输出修改清单。面向公众号编辑、自媒体作者、合规岗。触发词:「审稿」「审核」「校对」「合规」「敏感词」「错别字」「稿子检查一下」「稿子帮我看看」「稿子写完了」「文章检查一下」「检查下有没有问题」「能不能发」「发布前检查」。需要多环节串联(写+审+排+配图+发)请走 aws-wechat-article-main。

aws-wechat-article-topicsSkill

公众号选题|爆款标题|热点追踪|系列策划 — 公众号 AI 选题与标题生成,覆盖热点调研、选题策划、起标题、写摘要、系列排期。面向自媒体编辑、内容运营。触发词(**单独触发仅限对已有标题/摘要的修改**):「改标题」「换个标题」「重起标题」「优化标题」「标题再想想」「换个标题试试」「改摘要」「重写摘要」「优化摘要」「摘要再优化下」。新做选题、起新标题、策划系列/内容日历、追热点都请走 aws-wechat-article-main;需要多环节串联(写+审+排+配图+发)也走 main。

aws-wechat-article-writingSkill

公众号写稿|长文写作|文章润色|改写续写 — 公众号长文 AI 写作,从话题或提纲生成完整初稿,支持改写、续写、润色、开头结尾优化,可调 DeepSeek / GPT / Claude 或由 Agent 代写。面向自媒体作者、公众号运营、品牌文案。触发词(**单独触发仅限对已有稿子的修改**):「改写」「润色」「续写」「续一段」「往下写」「接着这段写」「重写开头」「改结尾」「调整语气」「这段润色下」「把这段改活泼点」「优化用词」「用 GPT 重写」「用 DeepSeek 重写」。新写一篇请走 aws-wechat-article-main(main 内部会调用本 skill 生成初稿);需要多环节串联(写+审+排+配图+发)也走 main。

aws-wechat-stickerSkill

公众号贴图|九宫格|多图推送|图片消息|表情包 — 贴图与多图推送:从创意构思、AI 生图到公众号图片消息发布全流程,含九宫格自动排布、多图压缩、组图打包。面向公众号运营、自媒体、IP 账号。触发词:「贴图」「多图推送」「发组图」「图片消息」「九宫格」「做一组图」「图片帖子」「发几张图」「不写正文发图」「只发图不写字」。是文章内配图/封面请走 aws-wechat-article-images;需要多环节串联(写+审+排+配图+发)请走 aws-wechat-article-main。