产品推广图片解析器 (promo-image-parser)
Overview
读取一张产品推广类图片,按固定维度提取品牌、主体、卖点、文案、促销、CTA、人群、背书、视觉、转化入口等关键要素,
并产出一份深色惊艳风格的 HTML 分享报告(含结构化 JSON)。额外对图片使用的「钩子」
(注意 / 问题 / 利益 / 结果 / 场景 / 身份 / 差异 / 证据 / 报价 / 行动,共 10 类)逐项判定是否命中。
面向业务方,用大白话,不堆术语、不编造。
When to Use
- 用户提供推广图 / 营销海报 / 产品广告图 / 电商详情图 / 朋友圈宣传图
- 诉求是:提取关键信息、解析卖点、看这张图在卖什么、做成可分享报告
- 多张图时:逐张解析,可分别出报告,也可合并为一份
Workflow
Step 1 · 确认输入
- 接收图片:本地文件路径、或对话中贴出的图片。
- 多张图:列出清单,与用户确认是逐张分别报告还是合并一份。
- 若图片无法读取(损坏 / 非图片),直接告知并停止。
Step 2 · 读取并提取
- 用 Read 工具直接读取图片(多模态直读,无需额外 OCR 依赖)。
- 严格按
references/key-elements.md的 10 维清单逐项提取。 - 原图文案一律照录(不改写、不翻译、不润色)。
- 图片中不存在的维度 → 标「未体现」,严禁脑补。
- 同步整理一份 JSON(字段与 10 维一一对应,结构见
references/key-elements.md的「JSON 结构」,
加overall_read与completeness,另附hook_completeness与visual_quality)。 - 钩子分析:按
references/hooks.md的 10 类钩子逐项判定「是否使用」。
使用的摘录原文实现;未使用的标「未使用」并给一句补充建议。
JSON 中追加hooks数组(见references/hooks.md输出形态)。 - 视觉质量诊断:按
references/visual-quality.md的 5 子维度打分,
给出综合定级(高级感 / 普通 / 偏廉价 / 像垃圾广告)+ 3-5 条具体改进建议。
JSON 追加visual_quality字段。这一步是报告最有业务价值的部分,务必做,
很多图「要素齐全但看着廉价」必须点出来。
Step 3 · 生成 HTML 报告
- 复制
assets/report-template.html为输出文件:
命名推广图解析_<原图名>.html,保存到用户工作目录
(默认/Users/growthsmile/WorkBuddy/,用户另有指定时遵循用户)。 - 替换模板中的 token:
-{{TITLE}}→ 报告标题(如「XX 产品推广图解析报告」)
-{{SOURCENAME}}→ 原图文件名
-{{GENERATED_AT}}→ 当前日期时间
-{{HEADLINE}}→ 推广主体一句话(产品/品牌名 + 核心定位,≤ 20 字)
-{{SUBLINE}}→ 副线:一句话说清「在卖什么 + 怎么卖」(≤ 40 字)
-{{IMAGE}}→ 原图 base64 data URI,见下方「原图嵌入规则」
-{{CARDS}}→ 见下方「卡片生成规则」
-{{HOOKS}}→ 见下方「钩子区块生成规则」
-{{QUALITY}}→ 见下方「视觉质量区块生成规则」
-{{OVERALL}}→ 整体解读 HTML(见references/key-elements.md第 11 节)
-{{JSON}}→ Step 2 的 JSON 原文(去 token,保留缩进)。
转义要求:放入<pre>前必须把&<>转义为&amp;&lt;&gt;,
防止文案中的特殊字符破坏页面结构。 - 卡片生成规则(保持与模板 CSS 一致):
为每个维度生成一段.cardHTML,顺序按清单 1→10:
html
<div class="card">
<div class="k"><span class="dot"></span>品牌信息<span class="idx">01</span></div>
<div class="v">
<ul>
<li>品牌名称:<b>示例品牌</b></li>
<li>Logo:左上角圆形图标</li>
</ul>
</div>
</div>
- 缺失维度:<div class="v"><span class="none">未体现</span></div>
- 含价格/优惠等关键信息时,用 <span class="q">…</span> 高亮。
- 列表项用 <ul><li>,多段用 <p>;保持简洁,不做长段落。
钩子区块生成规则(保持与模板 CSS 一致):
每条钩子生成一段 .hook HTML,按清单 1→10 顺序:
html
<div class="hook">
<div class="hook-h"><span class="dot on"></span>注意钩子<span class="tagline">一句话让他停下来看</span><span class="state on">已使用</span></div>
<div class="hook-b">主标题"还在为加班秃头?"即注意钩子,用反问句让读者停住。</div>
</div>
- 未使用:<span class="dot off"></span> + <span class="state off">未使用</span> +
<div class="hook-b"><span class="none">未使用</span> 建议:可加一句"天天改方案?"戳问题钩子。</div>
- 顺序固定为:注意 → 问题 → 利益 → 结果 → 场景 → 身份 → 差异 → 证据 → 报价 → 行动。
原图嵌入规则({{IMAGE}}):
- 目标:报告保持单文件自包含,不依赖外部图片文件。
- 方法:把原图转为 base64 data URI(data:image/<png|jpeg|webp>;base64,...)填入 {{IMAGE}}。
用 python3 脚本辅助:读文件 → base64.b64encode → 拼 data URI → 替换 token。
- 图片 > 1.5MB 时:先用 Pillow 降采样 / 压缩(长边 ≤ 1280px)再嵌入,避免 HTML 过大。
- 无法嵌入时(文件不可达):填 <span class="none">原图不可用</span> 并提示用户。
视觉质量区块生成规则(保持与模板 CSS 一致):
生成一段 .quality HTML,含定级徽章 + 综合观感分 + 建议列表:
html
<div class="verdict">
<span class="vbadge cheap">偏廉价 / 像模板广告</span>
<div class="score">综合观感<b>2.5 / 5</b></div>
</div>
<ul class="sug">
<li>橙红渐变太刺眼,改柔和奶油底 + 局部强调色,去掉廉价感。</li>
<li>产品是圆形占位 + 红字,像临时拼凑;换真实渲染图或精良素材。</li>
<li>信息偏满,增加留白、强化单一卖点,提升呼吸感。</li>
</ul>
- 徽章 class:vbadge premium(高级感)/ vbadge normal(普通)/ vbadge cheap(偏廉价)/ vbadge spam(像垃圾广告)。
- 建议每条对应一个可感知的问题 + 改法,不空谈「丑」。
Step 4 · 交付
- 用
present_files打开生成的 HTML 供用户预览。 - 在对话中贴一份 JSON 摘要,便于用户直接复制使用。
- 提示报告保存路径;如需调整(合并/拆分、换配色、加截图)按用户反馈迭代。
Design Notes(报告视觉)
- 深色主题,青(#22d3ee)/紫(#a855f7)/琥珀(#fbbf24) 三色点缀,Inter + Noto Sans SC。
- 勿改动模板 CSS 变量与配色体系;仅填充 token 与卡片内容。
- 报告为单文件自包含 HTML,可直接分享 / 部署。
Resources
references/key-elements.md:10 维提取清单 + 整体解读规范(必读)。references/hooks.md:10 类钩子定义 + 提取/输出指引(钩子分析必读)。references/visual-quality.md:视觉质量 5 维打分 + 定级 + 改进建议规范(必做)。assets/report-template.html:报告外壳模板,含完整样式与 token 占位。assets/demo-promo.png:内置示例推广图(HHA 洗护系列海报),无图可试时直接用这张跑通流程。
快速试跑(Demo)
skill 内置两张示例图,可直接读取并生成报告做对比:
assets/demo-promo.png:品牌调性型海报(HHA 洗护系列),偏高级感,弱转化;assets/demo-promo-conversion.png:促销转化型海报(轻颜面膜),问题 / 利益 / 证据 / 报价 / 行动钩子齐全。
读取任一张 → 按 10 维 + 10 钩子提取 → 生成 HTML 报告。