关于 product-shots-ad-creative
product-shots-ad-creative 是用于规划广告创意的技能,面向需要按平台、格式、行业和广告目标制定素材的营销人员。它结合尺寸、安全区、文字规则及行业视觉规范,并在交付前执行自检。
主要功能
- 01按平台和格式制定创意
- 02遵循尺寸与安全区要求
- 03匹配行业和广告目标的视觉规范
- 04检查文字叠加与文案长度
- 05过滤生成提示词中的禁用词
- 06交付前执行自检
适用场景
- 01为特定平台和广告目标准备创意
- 02按品牌规范制作行业相关广告素材
- 03检查广告文字和图像提示词限制
MCP 相关
该技能依赖 product-shots-image-gen 根据整理后的提示词生成图像;输入字段缺失时会调用 product-shots 澄清需求。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ motiful/ product-shots --skill product-shots-ad-creative安装后在 Claude Code 中输入/product-shots-ad-creative确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/ad-objective-rules.mdbanned-words.mdcolor-and-cta-strategy.mdcomposition-patterns.mdfailures-defaults-output.mdhard-constraints.mdindustry-style-rules.mdmulti-platform-output.mdplatform-style-profiles.mdquick-start-and-fidelity.mdworkflow-and-self-check.md详细介绍
广告创意设计
设计原生适配各平台的广告创意(尺寸正确、安全区合规、符合文字叠加政策、字符数符合限制),确保精准体现行业特征(针对每个行业 × 广告目标的视觉 DNA),并对提示词进行清理(不让平台名称 / UI 元素 / 虚假广告元素泄漏到图像生成器中)。本技能制定了涵盖 8 个平台 × 21 种格式的矩阵、六步工作流、自检关卡,以及一套违禁词系统和配套的正向保留规则。
参与原则
这些规则适用于每个部分。执行前请阅读。
- 禁止采用通用的、一刀切的创意方案 — 每项创意都必须对应一个特定的(平台、格式、目标、行业)组合。没有完整组合 = 不开展工作。
- 优先处理硬性约束 — 第 0 部分(平台尺寸 / 安全区 / 文字叠加 / 广告文案字符数限制)在步骤 0 加载,并在交付前的自检关卡重新验证。“Google Display 上出现文字”或“CTA 位于 TikTok 底部 18% 区域”等违规行为可能导致平台下架广告,或使广告无法显示。
- 品牌名称和用户文案必须忠实保留 — 用户指定的每个品牌名称、标语、CTA 文本以及价格 / 优惠,都必须在交付内容中原样呈现。绝不改述、翻译或替换用户提供的文案。
- 行业 × 目标决定构图和配色 — 根据交叉决策矩阵(第 8 / 9 部分)选择构图模式和配色策略,而非凭通用的风格直觉判断。
- 平台风格档案不是风格建议,而是约束 — TikTok 要求反广告美学,并且品牌 / 产品 / CTA 信息完整;LinkedIn 要求字体 ≥60pt;Pinterest 要求营造令人向往的场景;Google Display 要求文字叠加为零。
- 从图像生成器提示词中过滤违禁词 — 平台名称、广告 UI 术语和品牌工具名称不得传递给模型。这些内容仅用于内部路由和规则选择。
- 正向指令必须保护产品包装上的原生文字 — “不添加文字叠加”不得删除产品本身印刷的文字。始终将违禁词过滤器与正向保留指令搭配使用(references/banned-words.md §Required Positive Instruction)。
- 使用用户所用的语言 — 用户用英语提问时使用英语回复,用中文提问时使用中文回复。切勿在用户未要求时擅自切换语言。
- 使用
<suggestion>提供选项集 — 提出平台 / 目标 / 行业 / 素材选项时,请用<suggestion>标签包裹。一次只问一个问题。
执行流程
generate_ad_creative(user_request) → variant[] + self_check
# This EP IS the inlined procedural backbone. Each Step calls the EP entry point
# of its corresponding reference module — bindings below are bidirectional (every
# call has a matching `def` in references/*.md).
# Step 0 — Pin hard constraints (MUST, before any decision)
load references/hard-constraints.md
→ Platform Dimensions / Safe Zones / Text Overlay Rules / Ad Copy Char Limits
load references/banned-words.md
→ Prompt Banned Words + Required Positive Instruction (Preserve Native Packaging Text)
keep these in working context for every step.
defer enforcement to Step 6 — `enforce_constraints(format, output_text, prompt_text, user_copy)`
will be called there with the four params built up over Steps 1–5.
# Step 1 — Platform + Objective (Quick Start: 7 required fields)
brief_state = preflight(user_request) # references/quick-start-and-fidelity.md
collect 7_required_fields:
platform, format, ad_objective, industry,
visual_assets, brand_kit, copy (brand_name / slogan / cta / price)
missing = [f for f in 7_required_fields if not provided(f)]
if missing:
filled = Skill("product-shots", f"fill missing fields: {missing}")
# `Skill("product-shots", "fill missing fields: <list>")` — the hub/router skill owns Quick Start clarification.
# ad-creative owns the post-fill workflow. Do not substitute with manual clarification questions.
assert filled.delivered # Step 2 requires the filled brief
brief = filled.brief
else:
brief = brief_state.ready_brief
for phrase in [brief.copy.brand_name, brief.copy.slogan, brief.copy.cta, brief.copy.price]:
if phrase: register_protected_phrase(phrase) # references/banned-words.md
# run_workflow(brief) is the canonical procedural backbone. Steps 2–6 below
# unfold it inline so the EP stays readable; each named call matches a `def`
# entry in the corresponding reference module.
result = run_workflow(brief) # references/workflow-and-self-check.md
# Step 2 — Industry + Brand
industry = match_industry(user_request)
bundle = load_industry_bundle(industry) # references/industry-style-rules.md
# (color palette / composition / typography / CTA tone / forbidden)
if brief.brand_kit:
kit = parse_brand_kit(brief.brand_kit) # references/industry-style-rules.md
apply_brand_kit_overrides(bundle, kit):
• brand colors → primary palette (overrides industry defaults)
• brand fonts → headlines
• brand logo → composed per platform safe-zone rules
# Step 3 — Visual Asset Audit
"Available assets determine the creative ceiling."
classified_assets = classify(brief.visual_assets) # references/composition-patterns.md
# ∈ {has_product_photo, has_model_photo, has_logo_only, has_none, ...}
# drives composition pattern selection in Step 4
# Step 4 — Composition + Color (Industry × Objective cross-decision)
composition = select_composition_pattern(industry, ad_objective, classified_assets)
# references/composition-patterns.md (12 patterns)
color_strategy = pick_color_strategy(industry, brief.brand_kit)
# references/color-and-cta-strategy.md §Color Strategy
cta_strategy = pick_cta_strategy(ad_objective, platform)
# references/color-and-cta-strategy.md §CTA Strategy
apply_objective_rules(creative, ad_objective)
# references/ad-objective-rules.md — info hierarchy / cta_intensity / text_density
validate_color_scheme(color_strategy.primary, industry)
# references/color-and-cta-strategy.md / industry-style-rules.md
# Step 5 — Platform Adaptation Layer (inject platform-specific differences)
for each target_platform in brief.platforms:
apply_platform_profile(prompt, target_platform)
# references/platform-style-profiles.md (tone / production / text style / cadence)
prompt = sanitize_prompt(prompt, protected_phrases)
# references/banned-words.md — filter banned words, restore user copy,
# inject Required Positive Instruction (Preserve Native Packaging Text)
multi_platform_fanout(brief, brief.platforms)
# references/multi-platform-output.md (per-platform output + cross-format consistency)
# Section 16 — fill any deferred field with DEFAULTS
for field in required_fields:
if not provided(field) and user_deferred(field):
use DEFAULTS[field] # references/failures-defaults-output.md §Defaults
# Step 6 — Self-Check Gate (mandatory) — Quality Check Before Delivery
for each variant:
findings = enforce_constraints(format, output_text, prompt_text, user_copy)
# references/hard-constraints.md — re-validates dimensions / safe zones /
# text overlay / char limits / banned words / Required Positive Instruction /
# Brand Name & User Copy Fidelity (user_copy preserved verbatim)
if findings:
revise prompt and regenerate
continue
apply_objective_rules(variant, ad_objective) # Check 10 promotion validation
validate_tiktok_native_aesthetic(variant) # Check 7 platform_tone (when platform == tiktok)
validate_color_scheme(dominant_colors, industry) # Check 6 industry forbidden colors
if all pass → emit variant
# Output assembly — variant[] + self_check_score block per
# references/failures-defaults-output.md §Section 17 VARIANT_OUTPUT_SCHEMA.
emit variant[] + self_check_score
on user request → iterate
on user satisfied:
Run: `Skill("product-shots-image-gen", f"render variants: {variant[].prompt} use_case=text-overlay")`
Do not substitute with manual image-generation prompts or direct model calls.
Record output — final delivery to the user requires the rendered images.
use_case=text-overlay is REQUIRED for ad-creative — ad copy (headlines,
CTAs, price chips) MUST render legibly; this routes to gpt-image-2.
See product-shots-image-gen/references/model-selection.md.
模块文件目录
references/hard-constraints.md— 第 5 节(硬性约束,4 个子节:平台尺寸 / 安全区域 / 文字叠加规则 / 广告文案字符限制)。MUST 级别。在 EP 步骤 0 加载,并在步骤 6 重新验证。references/banned-words.md— 第 20 节(提示词禁用词,3 个子节:例外 / 禁用词列表 / 必需的正向指令)。MUST 级别。在 EP 步骤 0 与 hard-constraints.md 一同加载,并在步骤 6 重新验证。从 hard-constraints.md 中拆分出来,以确保两个文件都不超过 300 行。references/quick-start-and-fidelity.md— 第 3 节(目标用户)、第 4 节(快速入门 — 7 个必填字段)、第 5 节(品牌名称与用户文案忠实度规则)。references/workflow-and-self-check.md— 第 6 节(核心工作流六步流程),包含自检关卡的流程骨干。references/industry-style-rules.md— 第 7 节(行业风格规则),行业 × 视觉参数(颜色、构图、字体、CTA 语气、禁用项、市场份额)。references/ad-objective-rules.md— 第 8 节(广告目标规则 — 目标决定信息层级)。references/platform-style-profiles.md— 第 9 节(平台风格档案 — 速查,按平台列出语气 / 制作 / 文字风格 / 刷新频率 / 有效做法 / 应避免的做法)。references/composition-patterns.md— 第 10 节(构图模式 — 共享模式库,12 种模式)。references/color-and-cta-strategy.md— 第 11 节(颜色策略:行业 × 颜色矩阵 + 颜色规则)+ 第 12 节(CTA 策略)。references/multi-platform-output.md— 第 13 节(多平台输出规则)+ 第 14 节(创意疲劳与刷新频率)。references/failures-defaults-output.md— 第 15 节(常见失败模式)+ 第 16 节(默认值 — 用户未指定时的回退值)+ 第 17 节(输出格式)+ 第 18 节(性能基准)。
章节索引
Goal — No Generic One-Size-Fits-All Creatives → SKILL.md §Goal
Language Rule → SKILL.md §Language Rule
Target Users — Small Business Owners and Marketers → references/quick-start-and-fidelity.md §Target Users
Quick Start — 7 Required Fields Before Generating → references/quick-start-and-fidelity.md §Quick Start
Brand Name & User Copy Fidelity Rule → references/quick-start-and-fidelity.md §Fidelity Rule
Hard Constraints — Must Not Be Violated → references/hard-constraints.md
Platform Dimensions — Quick Reference
Safe Zones — Each Platform's UI Overlays Differ Completely
Text Overlay Rules — Text Policies Vary Drastically Across Platforms
Ad Copy Character Limits
Core Workflow — Six-Step Process → references/workflow-and-self-check.md
Step 1: Platform + Objective
Step 2: Industry + Brand
Step 3: Visual Asset Audit — Available Assets Determine the Creative Ceiling
Step 4: Composition + Color — Determined by Industry × Objective
Step 5: Platform Adaptation Layer — Inject Platform-Specific Differences
Step 6: Self-Check Gate — Quality Check Before Delivery
Industry Style Rules → references/industry-style-rules.md
Ad Objective Rules — Objective Determines Info Hierarchy → references/ad-objective-rules.md
Platform Style Profiles — Quick Reference → references/platform-style-profiles.md
Composition Patterns — Shared Pattern Library → references/composition-patterns.md
Color Strategy — Industry-Based Color Guide → references/color-and-cta-strategy.md §Color Strategy
Industry × Color Matrix
Color Rules
CTA Strategy — Call-to-Action Design Rules → references/color-and-cta-strategy.md §CTA Strategy
Multi-Platform Output Rules → references/multi-platform-output.md §Multi-Platform Output
Creative Fatigue & Refresh Cadence → references/multi-platform-output.md §Refresh Cadence
Common Failure Modes → references/failures-defaults-output.md §Common Failure Modes
Defaults — Fallback Values When User Doesn't Specify → references/failures-defaults-output.md §Defaults
Output Format — Standard Output per Variant → references/failures-defaults-output.md §Output Format
Performance Benchmarks — Key Data Reference → references/failures-defaults-output.md §Performance Benchmarks
Prompt Banned Words — Avoid Watermarks, UI Artifacts, and Fake Ad Elements
→ references/banned-words.md
Exception: User-Specified Content Passthrough
Banned Words List
Required Positive Instruction — Preserve Native Packaging Text
IMPORTANT!Suggestion → SKILL.md §IMPORTANT — Suggestion Format
目标
设计符合平台原生规范的广告创意(精确尺寸、安全区域、文字叠加政策、字符限制)、符合行业特点的创意(视觉特征与行业 × 广告目标相匹配),并确保提示词干净(不让虚假 UI / 水印 / 平台名称泄漏到图像生成器中)。拒绝制作泛泛的「一刀切」图像。每个变体在交付前都必须通过自检关卡。
语言规则
Always respond in the user's language.
IF user writes in English THEN respond in English
IF user writes in Chinese THEN respond in Chinese
NEVER switch language unprompted.
重要 — 建议格式
IMPORTANT!Suggestion:
Always use <suggestion> format to guide the user.
Do not ask several questions at once.
Example: use <suggestion> format to provide options like
Instagram (Feed / Story / Reel / Carousel) / Facebook / TikTok / LinkedIn /
Google Display / Google Demand Gen / YouTube / Pinterest / X (Twitter) / Other platform.
这是前端渲染指令 — 选项集使用 <suggestion> 标签包裹,以便 UI 将其渲染为可点击的选项标签。
跨技能说明
- 上游路由器:当
asset_type == "ad"或is_promotion == True时,product-shots会路由至此。快速入门字段的条件预填发生在product-shots的澄清状态机中;实际的六步工作流在此技能内运行(第 6 节)。 - 快速入门依赖项:缺少 7 个必填字段中的任何一个时,此技能会将澄清工作交由
product-shots处理(“如果缺少其中任何一项,请先使用 hub。”)。这是条件预填,不是移交——字段填齐后,控制权会返回此处。 - Brand Kit:用户提供 Brand Kit(文件路径或内联颜色/字体/logo)时,步骤 2 会将其作为硬性约束。Brand Kit 优先于行业默认颜色,并作为跨技能一致性锚点,与所有同级 product-shots 技能共享。
- 行业视觉 DNA:与
product-shots-social-post和product-shots共享(跨技能一致性)。 - 图像生成后端:渲染后的提示词会分派给
product-shots-image-gen(product-shots 图像生成引擎),由其封装底层 API(OmniMaaS / OpenAI / Gemini)。 - 相邻边界技能(同级技能,不会从
product-shots-ad-creative内部调用):product-shots-social-post(自然社交内容,不含广告目标层)、product-shots-main-image(符合 Amazon 规范的产品主图)、product-shots-detail-page(Amazon A+ Content)、product-shots-multi-angle(保持模特一致性的人像系列)。
工具
product-shots— 缺少 7 个必填字段中的任何一个时调用(快速入门关卡)。product-shots-image-gen— 在组装输出时调用,根据组合后的提示词实际生成图像。- Brand Kit 输入(步骤 2)— 直接解析用户提供的文件路径或内联字段。无需调用外部工具。
评论
支持 Markdown