跳到正文
cccskills
免费在 GitHub 公开

product-reel-generator

Generates Instagram-ready product reels from any e-commerce product page URL. Scrapes product images, classifies by type, generates AI-animated clips via Higgsfield API, creates text overlays with style presets, and composes a 15-20 second reel with music. Supports model-based and product-only reels.

中文简介正在准备中。当前显示原文说明。

集成工具InstagramShopify

实测评分 未实测

查看安装方法

包含的文件(3)

  • SKILL.md9.1 KB
  • scripts/higgsfield_video.py5.6 KB
  • skill.meta.json306 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Product Reel Generator

You are a video production skill that takes an e-commerce product page URL and produces an Instagram-ready reel. The reel features AI-animated model clips (or Ken Burns product showcases), text overlays, and background music.


Requirements

  • FFmpeg installed and available in PATH (brew install ffmpeg on macOS, apt install ffmpeg on Linux)
  • Python 3 with Pillow and python-dotenv packages (pip install Pillow python-dotenv)
  • Higgsfield API credentials — HIGGSFIELD_API_KEY_ID and HIGGSFIELD_API_KEY_SECRET in a .env file (project root or any parent directory)

Before starting: Verify dependencies are available. If FFmpeg or Python packages are missing, instruct the user to install them before proceeding.


Input

The user provides:

  1. Product page URL (required) — any e-commerce product page (Shopify, Zara, DaMENSCH, etc.)
  2. Music file (optional) — path to an MP3. If not provided, use a royalty-free track.
  3. Style preset (optional) — one of: minimal, luxury, bold, editorial, clean. Defaults to auto-detect based on brand.
  4. Brand name (optional) — for watermark. If not provided, extract from the page.

Pipeline

Step 1: Scrape Product Images

Try these methods in order until one works:

  1. Shopify JSON — append .json to the product URL and extract images from the response
  2. HTML scraping with referrer — curl with -H "Referer: <site-domain>" and a browser user-agent
  3. Chrome DevTools — navigate to page, extract image URLs via JavaScript, download

For each image, download at the highest available resolution.

Step 2: Classify Images (Heuristic)

Use image position on the product page as the primary signal:

PositionLikely TypeUse In Reel
Image 1 (first on page)Hero / front-facing modelWalk forward (AI)
Image 2Alternate angle (side/back)Turn or side walk (AI)
Image 3-4Close-up or detailDetail insert (Ken Burns)
Last imageSize guide or back viewBack turn (AI) or product card

Model detection heuristic: If image height > 1.5× width AND file size > 100KB → likely a model photo → use AI animation pipeline. Otherwise → product-only → use Ken Burns pipeline.

Step 3: Generate AI Video Clips

Use the Higgsfield API via this skill's scripts/higgsfield_video.py script or direct curl calls.

API details:

  • Base URL: https://platform.higgsfield.ai
  • Auth header: Authorization: Key {HIGGSFIELD_API_KEY_ID}:{HIGGSFIELD_API_KEY_SECRET}
  • Always set "aspect_ratio": "9:16" for Instagram Reels

Model selection:

  • Seedance (bytedance/seedance/v1/pro/image-to-video) — for hero/walk scenes. Higher quality, ~45 credits. Use for the most important clip.
  • Kling (kling-video/v2.1/pro/image-to-video) — for secondary scenes. Good quality, ~6 credits. Use for turns, side angles.

Prompt guidelines:

  • Always mention the clothing color and type in the prompt
  • Specify direction of motion ("walks forward", "turns from front to side")
  • Add "clean studio background" or describe the actual background
  • Add "smooth cinematic motion" at the end
  • For walk prompts, add "does not stop or turn around" to prevent reversal

Duration: Use "duration": 5 for each clip. Kling only supports 5 or 10.

Polling: After submission, poll GET /requests/{request_id}/status every 15 seconds until status: "completed". Then download the video from response.video.url.

Step 4: Create Ken Burns Scenes

For detail/texture shots where AI animation adds no value, use FFmpeg Ken Burns:

ffmpeg -y -loop 1 -i "detail.jpg" \
  -vf "scale=2160:3840,zoompan=z='1+0.06*in/75':x='iw/2-(iw/zoom/2)':y='ih/2-(ih/zoom/2)':d=75:s=1080x1920:fps=25" \
  -t 3 -c:v libx264 -pix_fmt yuv420p -r 25 "scene-detail.mp4"

Vary the zoom type: zoom-in, zoom-out, pan-left, pan-right, pan-up, pan-down.

Step 5: Create Text Overlays

Use Python Pillow to generate transparent PNG overlays, then composite with FFmpeg.

IMPORTANT: Many FFmpeg installations do NOT have the drawtext filter. Always use Pillow to create PNG text images, then overlay with:

ffmpeg -y -i video.mp4 -loop 1 -t <duration> -i overlay.png \
  -filter_complex "[1:v]format=rgba[txt];[0:v][txt]overlay=0:0" \
  -t <duration> -c:v libx264 -pix_fmt yuv420p -r 25 output.mp4

Style Presets

Fonts are provided as shared files in the pack's fonts/ directory (copied into each skill on install). Fall back to system fonts if custom fonts are not found.

PresetTitle FontBody FontText ColorTreatment
minimalMontserrat-Light.ttfMontserrat-Light.ttfWhite (255,255,255)No background, subtle shadow
luxurySystem Didot (/System/Library/Fonts/Supplemental/Didot.ttc)Cormorant-Regular.ttfCream (245,235,210)Thin gold stroke
boldSystem Futura (/System/Library/Fonts/Supplemental/Futura.ttc)Montserrat-Bold.ttfWhiteDark backdrop bar, uppercase
editorialCormorant-Italic.ttfCormorant-Regular.ttfWhiteMinimal, italic titles
cleanSystem Helvetica (/System/Library/Fonts/Helvetica.ttc)System HelveticaWhiteSimple shadow, professional

Overlays to create:

  1. Brand watermark — small text, top-right corner, persistent on all video scenes
  2. Product info card — product name, price, CTA ("Shop now → website"), placed on the final scene with gradient background

Step 6: Compose the Reel

Model Reel Structure (when model photos detected)

TimeSceneTypeDuration
0-5sHero — walk forward or full bodyAI (Seedance)5s
5-10sAlternate angle — side/backAI (Kling) or Ken Burns5s
10-13sDetail — texture, fabric, accessoriesKen Burns3s
13-16sThird angle — back turn or close-upAI (Kling)3s
16-20sProduct card + CTAStatic + text overlay4s

Target: 80% video, 20% static. The product card at the end is fine as static.

If a generated AI clip looks bad (distortion, wrong face, backward motion), replace with Ken Burns from the same source image.

Product-Only Reel Structure (no model photos)

TimeSceneTypeDuration
0-3sHero revealKen Burns zoom-out3s
3-6sDetail 1Ken Burns zoom-in3s
6-9sAlternate angleKen Burns pan3s
9-12sDetail 2Ken Burns zoom3s
12-15sProduct card + CTAStatic + text3s

Stitching

Concatenate all scenes with FFmpeg:

cat > concat.txt << EOF
file 'scene1.mp4'
file 'scene2.mp4'
...
EOF
ffmpeg -y -f concat -safe 0 -i concat.txt -c:v libx264 -pix_fmt yuv420p -r 25 reel-silent.mp4

Step 7: Add Audio

Mix background music with the silent reel:

ffmpeg -y -i reel-silent.mp4 -i music.mp3 \
  -filter_complex "[1:a]atrim=<start>:<end>,asetpts=PTS-STARTPTS,afade=t=in:st=0:d=1.5,afade=t=out:st=<fade_start>:d=2,volume=0.5[aud]" \
  -map 0:v -map "[aud]" -c:v copy -c:a aac -shortest output.mp4

If no music file is provided, ask the user to supply one or search for a royalty-free track (e.g., Kevin MacLeod's library at incompetech.com). The user should provide a local file path or URL.


Output

Save the final reel to a user-specified directory (or the current working directory).

Output specs:

  • Format: MP4 (H.264)
  • Resolution: 1080×1920 (9:16 portrait)
  • Frame rate: 25fps
  • Duration: 15-20 seconds
  • Audio: AAC

Known Limitations

  1. Multi-clip cohesion — independently generated AI clips may have slightly different faces or clothing details. Mitigate by using different source images (not same image with different prompts) and keeping clips short (3-5s each).
  2. AI motion reversal — Kling sometimes reverses motion (walk forward then backward). Seedance handles this better. Use Seedance for walk scenes.
  3. Enterprise CDN blocking — sites like Zara require Referer header. Always include -H "Referer: <site-domain>" in curl downloads.
  4. Flat-lay animation — AI animation adds no visible value to flat-lay/product-on-surface photos. Use Ken Burns instead (free, equally effective).
  5. No drawtext in FFmpeg — many FFmpeg installations lack the drawtext filter. Always use Pillow for text → PNG → overlay.

Cost Estimate Per Reel

ComponentCreditsApprox Cost
1× Seedance clip (hero)~45~$2.50
1-2× Kling clips (secondary)~6-12~$0.60-1.20
Ken Burns + text overlays0Free
Total per reel~51-57~$3-4

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Research supported advertising promises from a specific buyer's context, current product facts, customer language and observed ads. Turn them into static, video or copy ideas; match video ideas to actual recipes and save a product-scoped angle bank for write-video-ad-script. Product-led discovery can use verified facts without reviews. Reference persistence and reach are observations, not proof of performance.

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

Analyze ad campaign performance data (Google, Meta, LinkedIn) to identify what's working, what's wasting budget, and specific cut/scale/test recommendations. Runs statistical analysis, funnel diagnostics, and multi-channel budget reallocation with specific dollar-amount shift recommendations and scenario modeling.

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

For paid lead-gen and participant-recruitment ads, replaces vanity CPA with true CAC per qualified lead by joining ad-platform data with downstream funnel events, surfaces tracking gaps, and classifies every creative into Scale / Keep / Investigate / Cut.

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

The intake stage of a Meta ad harness. Researches the brand first, states what it assumes, and asks only what it cannot infer and what would change money, claims or legal exposure if guessed wrong — at most four questions a turn, in plain business language. Writes the brand's stable facts (ads/brand.md), the campaign brief, and a log of what was asked vs assumed. Use it when someone wants to run Meta ads and the brand's ad facts are not yet recorded.

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

Checks paid ads against the ad platform's rules (Meta, TikTok, Google, LinkedIn and others) and the brand's category rules: the copy, on-image or on-screen text, pictures and people. Rewrites what can be fixed honestly, adds the disclosures that are needed, and flags anything that needs a human or legal review, with one pass, fixed or flag line per ad and platform. Use alone when you already have the ad text or images and know where they will run; otherwise run the playbook for the job (e.g. make-static-ads, make-content, email-lifecycle).

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

Analyze the message match between your ads and landing pages. Checks if the promise in the ad copy carries through to the landing page headline, body, and CTA. Flags disconnects that kill conversion rates. Works with Google, Meta, and LinkedIn ads.

中文简介正在准备中。当前显示原文说明。

gooseworks-ai/goose-skills12642026年10月24日 更新

查看 gooseworks-ai 的全部技能

报告此技能的问题