
Frame Extraction
Pull intent-matched still frames and contact sheets from local video for ads, personas, product shots, UI walkthroughs, or compliance review—not generic scene summaries.
Overview
Frame Extraction is an agent skill most often used in Grow (also Idea, Validate) that selects still frames and contact sheets from local video based on task intent rather than uniform sampling.
Install
npx skills add https://github.com/postplusai/postplus-skills --skill frame-extractionWhat is this skill?
- Intent-driven modes: face-priority, scene-change, object-priority, text-ui-priority, hook-first, cta-last, uniform-sampl
- Explicit scope controls: first 3–5 seconds, final 3–5 seconds, full video, or timestamp ranges
- Pairs with video-analysis when shot-level understanding improves frame selection
- Rejects uniform sampling by default when a narrower mode matches the task
- Handoff guardrails: defers ideation and QA tasks to other released skills in the family
- 7 intent-driven extraction mode defaults listed in the skill boundary
Adoption & trust: 1 installs on skills.sh; 8 GitHub stars; 2/3 security scanners passed (skills.sh audits); trending (+100% hot-view momentum).
What problem does it solve?
You have local creative video but generic analysis or even frame grabs give you the wrong moments for persona, product, UI, hook, or CTA work.
Who is it for?
Indie marketers and founders producing short-form or ad creative who need review packs from footage already on disk.
Skip if: Ideation-only briefs with no video file, tasks that belong to QA or other PostPlus skills listed in handoff, or runs where required inputs are missing and guessing would change outcomes.
When should I use this skill?
The user needs selected still frames, a contact sheet, or a review pack from local video for persona, product, UI, hook, CTA, or shot-structure work—not generic video analysis.
What do I get? / Deliverables
You receive a scoped frame set or contact sheet matched to the declared intent, ready for creative review or the next skill in your media handoff chain.
- Intent-matched still frame set
- Contact sheet or review pack
- Documented extraction mode and scope used
Recommended Skills
Journey fit
Spans multiple journey phases - primary shelf plus alternate fits below.
Canonical shelf is Grow because extracted frame packs feed content production, creative review, and distribution assets solo marketers ship from video. Content subphase fits selectable stills and review packs that downstream copy, design, and channel posts depend on.
Where it fits
Pull face-priority frames from founder-led footage to study persona and on-camera vibe before scripting.
Capture text-ui-priority stills from a screen recording to review onboarding copy in a landing prototype.
Build a hook-first contact sheet from the opening seconds for short-form ad iteration.
Extract cta-last frames from a long-form promo for legal or brand compliance sign-off.
How it compares
Use this workflow skill for intent-specific still extraction—not full video-analysis narration or open-ended creative brainstorming.
Common Questions / FAQ
Who is frame-extraction for?
Solo builders and small teams doing media and creative production who need targeted stills from local video for marketing, product, or compliance workflows.
When should I use frame-extraction?
In Grow content when building review packs for posts; in Idea audience work for persona and vibe frames; in Validate prototype when capturing UI walkthrough stills from demo recordings.
Is frame-extraction safe to install?
Check the Security Audits panel on this Prism page; the skill reads local video via filesystem tooling—confirm paths and scripts match your environment before batch runs.
SKILL.md
READMESKILL.md - Frame Extraction
# Frame Extraction ## Use When - The user needs selected still frames, a contact sheet, or a review pack from local video files for persona, product, UI, hook, CTA, before/after, or shot structure work. - Use `video-analysis` before or alongside this skill when shot-level understanding already exists or would materially improve frame selection. ## Do Not Use When - The task belongs to ideation, QA, or another released skill listed in the handoff section. - Required inputs are missing and guessing would change the result. ## Selection Boundary - Do not default to uniform sampling. Choose the smallest extraction mode that matches the task intent. - Good mode defaults: persona/vibe `face-priority`, shot/structure `scene-change`, product visibility `object-priority`, UI/text `text-ui-priority`, hook `hook-first`, CTA/compliance `cta-last`, broad scan `uniform-sample`. - Scope should be explicit: first 3-5 seconds, final 3-5 seconds, full video, or a requested timestamp range. ## Source And Path - Inputs can be one local video, a folder, or a manifest mapping source ids to local files. If only URLs are available, recover/download local files first. - Preserve source video, timestamp, extraction mode, selection reason, and source basis in the frame manifest. - Keep internal extraction requests, plan outputs, contact-sheet inputs, and intermediate manifests under `.postplus`; keep final frames/contact sheets in the user-facing output folder. ## Review And Handoff - Package outputs for the downstream job: persona frames plus contact sheet and vibe notes, shot frames plus timestamp list, product-visible frames plus proof notes, or UI frames plus readable text notes. - For long videos, start with the bounded first pass, then expand only after the first manifest proves the mode is useful. - Return final frame folders, contact sheets, and frame manifest paths. ## Stop Conditions - Stop when required user intent, source evidence, or owned input artifacts are missing and guessing would change the result. - If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools. ## Public Command Boundary - Choose the smallest matching command or workflow from the user input and run it directly. - If an owned CLI or script command fails, report the exact error and stop. Do not bypass the failure with metadata-only answers, readiness probing, local payload rewrites, fallback providers, or unpublished tools. - Use `postplus media schema --json` only when constructing or repairing an unknown request shape. - Hosted media capability: `postplus media capability --request <hosted-capability-request.json> --output <result.json>`. - Use the capability request shape required by the selected workflow; do not call provider APIs directly. - If the CLI returns a quote-confirmation challenge, run `postplus quote confirm --json --challenge-file <challenge.json>` and retry with the returned token.