文件内容
references/workflow.md
## 核心功能
专为公众号内容创作打造的AI封面设计工具,基于全网每日持续收录的爆款文章数据,深度获取同赛道爆款封面的视觉元素,通过AI智能分析总结高转化视觉规律,生成贴合文章内容、符合平台流量审美的可落地封面设计方案,省去繁琐设计流程,提升文章封面点击率。
**核心优势**:
- 自动解析用户文案意图,提取关键信息
- 获取目标领域真实爆款封面图,通过AI分析总结风格特征
- 结合用户需求与爆款数据,生成可落地的设计方案(含案例+生图提示词)
## ⚠️ 触发规则
**以下情况才执行任务流程**:
- 用户提供了具体的内容主题或赛道(如"帮我设计美妆教程封面"、"职场穿搭封面怎么设计")
- 用户明确要求生成封面方案
- 用户上传了文案或图片要求分析
**以下情况只介绍技能,不执行任务**:
- 用户询问"这个技能能做什么"、"怎么用"
- 用户只是了解功能,未提出具体需求
- 用户未提供明确的创作主题或方向
## ⚠️ 术语规范(强制执行)
**本技能统一使用"爆款封面"这一术语,禁止使用以下词汇**:
| ❌ 禁止使用 | ✅ 正确表述 |
| ----------- | ------------- |
| 爆炸封面 | 爆款封面 |
| 爆炸数据 | 爆款数据 |
| 抓取数据 | 获取/查询数据 |
| 抓取封面 | 获取封面 |
**⚠️ 强制要求**:在执行过程中,所有对外输出的文字必须使用"爆款封面"相关表述,包括但不限于:
- 标题、段落、步骤说明
- 对话回复
- 生成的分析报告
- 生成的提示词
## ⚠️ 数据来源强制要求(绝对禁止联网搜索)
**⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️**
**本技能的所有爆款数据必须来自接口,禁止自行上网搜索!**
| 要求 | 说明 |
| ----------------------- | ----------------------------------------------------- |
| ✅ 必须使用接口获取数据 | 调用 `fetch_explosive_covers.py` 脚本获取爆款封面数据 |
| ❌ 禁止联网搜索 | 不要自己上网搜索任何爆款文章、封面图、案例等 |
| ❌ 禁止使用其他数据源 | 只使用接口返回的数据,不要使用其他来源的数据 |
| ❌ 禁止脑补数据 | 如果接口返回数据不足,明确告知用户,而不是自己补充 |
**执行流程**:
1. 用户提供主题关键词
2. 调用脚本 → 获取接口数据
3. 基于接口数据 → 分析风格
4. 基于接口数据 → 生成方案
5. 基于接口数据 → 填充HTML模板
**⚠️ 违规后果**:如果发现自行联网搜索数据,将导致数据不一致、报告不可靠等问题!
## 前置准备
- 依赖:`requests>=2.28.0`
## 重要数据说明
- 数据库仅包含昨天至30天前的数据
- 默认时间范围为最近30天
## 操作流程
### 步骤1:用户意图解析(必须执行)
**核心任务**:结构化解析用户需求,提取关键信息
**解析维度**:
| 维度 | 说明 | 示例 |
| ---------- | ---------- | -------------------------- |
| 内容主题 | 优先领域词 | 护肤、穿搭、美食、职场 |
| 内容类型 | 内容形式 | 干货、测评、种草、教程 |
| 风格偏好 | 视觉/调性 | 专业、吸引点击、情绪、极简 |
| 核心关键词 | 搜索关键词 | 秋冬、美白、护肤、干皮 |
**解析示例**:
用户输入:`秋冬美白护肤心得,干货满满、看起来很专业`
解析结果:
```
内容主题:美白护肤、护肤
内容类型:干货
风格偏好:专业、干货
核心关键词:秋冬、美白、护肤
```
**关键词提取规则**:
- 提取2-5个核心关键词,用逗号分隔
- 优先提取细分领域词(如"美白护肤"而非"护肤")
- 结合风格偏好补充场景词(如"专业"、"干货")
---
### 步骤2:爆款数据查询
**执行命令**:
- 有赛道关键词:`python scripts/fetch_explosive_covers.py --keyword <关键词1,关键词2,关键词3>`
- 无赛道关键词:`python scripts/fetch_explosive_covers.py --keyword ""`
**重要说明**:
- 接口支持多个关键词,用逗号分隔(如:`职场穿搭,通勤穿搭,面试穿搭`)
- 最多5个关键词,总长度不超过200字符
- **默认查询近30天数据**,无需计算 startDate
**时间范围**:
- 用户未指定时间 → 默认近30天(不传 startDate 参数)
- 用户指定"近N天" → 计算 startDate = 今天 - (N-1)天
---
### 步骤3:智能匹配筛选(必须执行)
**⚠️ 重要:脚本返回数据后,必须进行智能匹配筛选**
**⚠️ 数据来源必须是接口!不要自己上网搜索或从其他来源获取数据!**
**执行流程**:
1. **首次调用接口**:使用用户输入的关键词调用接口获取数据
2. **数据量判断**:
- **如果数据量足够(≥20条)**:直接使用这些数据,不再调用接口
- **如果数据量不足(<20条)**:
- 分析当前关键词,提取核心词和扩展词
- 扩展关键词(如:美白 → 美白、护肤、美白祛斑、美白方法)
- 使用扩展后的关键词再次调用接口获取更多数据
- 合并新旧数据,凑够20条数据
3. **筛选规则**:
- 按阅读数从高到低排序
- 选取前20条数据用于封面图分析
- **关键词扩展原则**:最多扩展1-2次,每次扩展2-3个相似关键词,避免过度扩展导致数据不精准
---
### 步骤4:AI批量图像分析与特征提取(强制执行)
**⚠️ 重要:此步骤必须执行,不可跳过!**
**执行流程**:
1. **解析脚本返回的JSON数据**:脚本返回包含以下字段的JSON数据:
```json
{
"keyword": "关键词",
"low_fan_explosive": [...],
"ten_w_reading": [...],
"original_rank": [...]
}
```
2. **提取封面图URL**:从每条数据中提取 `coverUrl` 字段,合并为封面候选池
- **⚠️⚠️⚠️ 极重要**:直接使用接口返回的原始 `coverUrl` 字段值!**不要修改!不要转换!不要做任何改动!不要添加任何参数!不要删除任何参数!直接原样使用!**
3. **按互动量排序筛选**:从高到低选取前20条数据(优先选取总互动量高的文章)
4. **图像分析(强制执行,必须逐张分析)**:
**⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️**
**必须逐张访问封面URL进行图片分析!禁止跳过!禁止批量分析后不展示结果!**
**执行方式**:
- **主动调用原生图片理解能力**:智能体必须主动使用原生图片理解能力分析封面图
- **直接访问封面URL**:直接访问每张 `coverUrl` 的完整URL地址
- **逐张分析**:必须一张一张地分析
- **分析数量**:**必须分析全部封面图,一张都不能少!**
**详细分析维度(每张封面必须包含以下7个维度)**:
| 维度 | 分析内容 | 示例 |
| ------------- | ------------------------------------------------------------- | ---------------------------------------------- |
| 1. 文字内容 | 是否有文字、文字内容是什么、字体大小、位置、颜色、是否醒目 | "有文字'3天瘦5斤',白色大字居中,加粗醒目" |
| 2. 主体元素 | 画面中的主要视觉元素:人物/产品/场景/图案/图标等 | "健身女性全身照,穿着运动服,动作舒展" |
| 3. 色彩特征 | 主色调、配色方案、色彩对比度、冷暖色调 | "主色调橙红色,搭配白色文字,高对比度,暖色调" |
| 4. 构图布局 | 画面结构、元素分布、主体位置、留白处理 | "人物居右占2/3,左侧留白放文字,对角线构图" |
| 5. 视觉风格 | 整体风格类型:实拍/插画/拼贴/极简/炫酷等 | "实拍风格,自然光线,生活化场景" |
| 6. 点击吸引力 | 从用户角度评估:这个封面为什么吸引点击?痛点/好奇/美感/实用? | "数字冲击+身材对比,激发'我也能做到'的渴望" |
| 7. 尺寸检测 | 图片宽高尺寸,是否合格(≥10px) | "900x383px,合格" |
**⚠️⚠️⚠️⚠️⚠️ 强制过滤问题图片(违反此规则将导致失败)**:
**A. 空白图片过滤**:
- **空白图片定义**:纯白色、纯色块、无文字无图案、只有简单色块、看起来像空白或未加载的图片
- **检测方法**:分析图片时,检查是否包含:文字内容、图像元素、图案设计、人物、产品等
- **强制要求**:
1. 如果图片是空白或无明显内容,**必须在分析时明确标注"空白图片,需过滤"**
2. **后续所有环节都必须排除空白图片**:封面示例、案例参考、风格总结、生图参考
3. **输出前再次检查**:确认所有展示的图片都有实际内容,没有空白图片混入
- **所有输出的封面图片必须有实际内容,不允许任何空白图片出现**
**B. 小尺寸图片过滤(重要)**:
- **过滤标准**:图片宽度或高度低于 10px 的图片不作展示,**全部过滤掉**
- **检测方式**:在分析图片时,必须获取图片的基本信息(宽高尺寸)
- **只保留尺寸合格的图片用于后续展示**
- **所有输出的封面图片尺寸必须 ≥ 10px**
**批量分析提示词**:
```
请批量分析以下20张公众号封面图,对每张图片输出详细的7维度分析:
[序号] URL:[封面URL]
1. 文字内容:[有无文字、文字内容、字体大小、位置、颜色、醒目程度]
2. 主体元素:[人物/产品/场景/图案等主要视觉元素,描述具体]
3. 色彩特征:[主色调、配色方案、对比度、冷暖色调]
4. 构图布局:[画面结构、元素分布、主体位置、留白处理]
5. 视觉风格:[实拍/插画/拼贴/极简/炫酷等风格类型]
6. 点击吸引力:[从用户角度分析为什么吸引点击:痛点/好奇/美感/实用?]
7. 尺寸检测:[宽x高,是否合格≥10px]
备注:[如为空白图片/尺寸过小请标注需过滤]
封面图列表:
1. [coverUrl1]
2. [coverUrl2]
...
20. [coverUrl20]
```
**二次检查机制**:在输出封面示例和案例参考前,必须再次检查所有图片URL对应的图片内容,确保:
1. 没有空白图片混入
2. 没有尺寸过小(宽或高 < 10px)的图片
如果发现问题图片,立即删除该图片和相关数据。
**分类汇总**:将相似风格的封面归为同一类,统计特征规律
- **强制过滤**:在分类前先过滤掉所有空白图片,只保留有实际内容的封面
- **二次验证**:分类后再次检查每张图片,确保没有空白图片混入
### 步骤5:输出爆款封面分析报告与设计方案(HTML文档格式)
**⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️⚠️**
**必须严格使用 `references/report_template.md` 模板生成HTML!禁止自己编写HTML代码!**
**执行流程**:
1. **读取模板**:读取 `references/report_template.md` 获取HTML模板
2. **填充数据**:按照模板规范填充风格类型分类、设计方案
3. **写入文件**:使用 `write_file` 写入 `./爆款封面分析报告_{关键词}.html`
4. **展示报告**:**生成HTML文件后,必须立即使用 `read_file` 读取并直接展示HTML内容给用户查看**
**⚠️ 核心要求(必须执行)**:
| 要求 | 说明 |
| ------------------------- | ------------------------------------------------------------------ |
| ✅ 必须使用模板 | 读取 `references/report_template.md`,禁止自己编写HTML |
| ✅ 一个HTML文件 | 分析报告和设计方案合并在同一个文件中,用分割线分隔 |
| ✅ 文件命名 | `爆款封面分析报告_{关键词}.html` |
| ✅ 保存路径 | 当前工作目录 `./` |
| ✅ **必须展示给用户** | **生成HTML文件后,必须立即读取并展示HTML内容,让用户直接看到报告** |
| ✅ **按风格分类展示封面** | **不要逐张展示分析结果,而是按风格类型分类后展示封面图** |
**禁止事项**:
| 禁止项 | 说明 |
| -------------------------- | -------------------------------------------- |
| ❌ 禁止自己编写HTML | 必须使用模板 |
| ❌ 禁止分开生成 | 分析报告和设计方案必须在同一个HTML文件中 |
| ❌ 禁止使用class/style标签 | 所有样式内联 |
| ❌ 禁止hover效果 | 不要添加任何hover样式 |
| ❌ 禁止只告知不展示 | **生成后必须展示HTML内容,不能只说"已生成"** |
| ❌ **禁止逐张展示分析** | **不要在HTML中逐张输出每张封面图的分析结果** |
**内容要求**:
- **必须包含防盗链 meta 标签**:`<meta name="referrer" content="no-referrer">`
- **报告与方案合并**:一个HTML文档中同时包含分析报告和设计方案
- **封面展示方式**:**按风格类型分类展示,每个风格类型下展示该风格的代表性封面图(每类最多5张)**
- **案例参考**:
- 封面图:**直接使用接口返回的 coverUrl 原始值**
- 标题:填入真实标题,**必须添加 oriUrl 链接**
- 作者:填入真实作者名
- **仅保留阅读数**:只展示阅读数(clicksCount)
- **生图提示词**:严格遵循 2.35:1 横版比例要求
---
### 步骤6:用户选择方案并生成封面图(核心功能)
**⚠️⚠️⚠️ 这是最重要的功能环节!必须执行!输出报告后必须立即询问用户!**
在输出分析报告和设计方案后,**必须立即**询问用户选择方案并可上传参考图片:
**⚠️⚠️⚠️ 极重要:先询问,等用户回复后再生成!不要在用户选择前就生成封面图!**
**执行流程**:
---
**第一阶段:询问用户选择方案(输出报告后立即执行)**
**步骤6-1:HTML报告已包含方案选择询问**
HTML模板末尾已包含方案选择询问区域,展示HTML报告后会自动显示:
- 三个方案的风格名称和核心视觉
- 选择指引
**⚠️ 输出HTML报告后,无需再单独询问,HTML末尾已包含方案选择区域!**
**⚠️ 此时必须停止,等待用户回复!不要继续执行下面的步骤!**
---
**第二阶段:用户回复后执行(仅当用户选择方案后执行)**
**步骤6-2:获取用户回复并生成封面图**
当用户回复方案编号后:
1. 确认用户选择的方案(1/2/3)及其生图提示词
2. 如果用户上传了图片,使用原生图片理解能力分析用户图片
3. 使用原生图像生成能力生成封面图
4. 严格遵循2.35:1横版比例(900x383像素)
5. 结合方案提示词和用户图片(如有)进行生成
6. **⚠️ 生成封面图后直接展示图片即可,不需要用HTML包裹!**
**⚠️ 重要提示**:
- **第一阶段和第二阶段是分开的!先询问→等待用户→用户回复后才能生成封面图**
- **不要在用户选择方案前就生成封面图**
- **允许用户上传自己的图片作为参考**
- **封面图比例必须为 2.35:1(900x383像素)**
---
### 步骤7:输出前自检【必须执行】
**⚠️⚠️⚠️ 在完成任务前必须逐项检查以下内容!未完整不得结束!**
完成任务前,逐项检查以下内容是否完整:
**自检清单**:
| 检查项 | 检查内容 | 是否完整 |
| ------------------------ | -------------------------------------------------------------------------- | --------- |
| 1. 风格类型总结 | 每个风格类型是否都有:风格名称、出现频次、核心视觉、关键特征 | □ 是 □ 否 |
| 2. 风格类型封面示例 | 每个风格类型的封面示例是否完整(包含封面图) | □ 是 □ 否 |
| 3. 方案一 | 风格名称、核心视觉、案例参考(含封面图)、生图提示词 | □ 是 □ 否 |
| 4. 方案二 | 风格名称、核心视觉、案例参考(含封面图)、生图提示词 | □ 是 □ 否 |
| 5. 方案三 | 风格名称、核心视觉、案例参考(含封面图)、生图提示词 | □ 是 □ 否 |
| 6. 封面图链接 | **所有coverUrl是否直接使用原始值**(未修改、未转换) | □ 是 □ 否 |
| 7. 空白图片过滤 | 确认所有封面图都不是空白图片 | □ 是 □ 否 |
| 8. 图片尺寸过滤 | 确认所有封面图尺寸≥10px | □ 是 □ 否 |
| 9. 方案数据不重复 | **三个方案的案例参考是否使用不同的数据**(封面图、标题、作者等都不能重复) | □ 是 □ 否 |
| 10. **询问用户选择方案** | **是否已向用户展示方案选择提示并询问用户选择哪个方案** | □ 是 □ 否 |
| 11. **等待用户回复** | **是否已停止等待用户回复,而不是直接生成封面图** | □ 是 □ 否 |
**自检通过后**:方可结束任务
**⚠️ 重要提醒**:
- 必须逐项检查上述所有内容
- 如有任何一项不完整,必须补充完整后再结束
- **第10、11项为必检项:必须确认已询问用户并等待回复,不能直接生成封面图**
---
## 注意事项
- **⚠️⚠️⚠️⚠️⚠️ 极重要:禁止展示问题图片**:
- **A. 空白图片**:所有封面示例、案例参考中的图片必须有实际内容,纯白色、纯色块、无明显内容的空白图片必须过滤掉
- **B. 小尺寸图片**:图片宽度或高度低于 10px 的图片不作展示,全部过滤掉
- **输出前必须二次检查**:逐张确认所有图片:1.有实际内容(非空白);2.尺寸合格(宽或高 ≥ 10px)
- 如果发现问题图片,立即删除并替换为合格的图片
- **HTML 文档防盗链**:整个报告都要输出为 HTML 文档格式,添加 `<meta name="referrer" content="no-referrer">` 解决公众号图片防盗链问题
- **固定比例容器**:封面图容器比例必须为 2.35:1 (900x383)
- **自适应截取**:使用 `object-fit: cover` 和 `object-position: center` 自动截取图片中间部分
- **图像分析必须主动调用原生图片理解能力,直接访问封面URL,逐张分析所有封面图,不可跳过,不要使用read_image等工具**
- **案例参考仅保留阅读数**:删除点赞和在看字段
- **⚠️⚠️⚠️ 极重要:图片链接必须直接使用coverUrl字段的原始值!不要修改!不要转换!不要做任何改动!不要添加任何参数!不要删除任何参数!直接原样使用!**
- **封面图可点击跳转**:分析报告和方案文档中的封面图必须用`<a>`标签包裹,点击后跳转到封面图URL(coverUrl),让用户可以查看封面图大图
- **方案标题跳转**:列举的3个方案中,标题的跳转地址直接使用oriUrl
- **⚠️数据来源必须是接口**:所有数据必须通过调用接口获取,不要自己上网搜索或从其他来源获取数据