storyboard — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited storyboard (Agent Skill) and scored it 96/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 1 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 1 flagged
The text {match} tells the agent to skip the normal "ask the user first" gate. Used adversarially it removes the human-in-the-loop check before destructive or sensitive actions, turning a normally-gated agent into a fire-and-forget executor.
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill turns product screenshots, brand assets, and taste references into a cohesive storyboard frame set for short product-launch motion graphics.
It is intentionally opinionated: a storyboard frame is not just an image. It is a production still that must preserve product truth, match the visual system, and imply motion.
In Codex, this skill must be used together with $imagegen / the built-in image_gen workflow.
imagegen skill before generating frames.videos:storyboard + imagegen so the user knows generation is coming from Codex imagegen.imagegen for every storyboard frame.Allowed local file operations:
If this skill is invoked from Claude Code or another host that does not have Codex imagegen available, route the generation work to Codex/headless. The host may plan and review, but Codex owns frame generation.
Use this skill for requests like:
Do not use this skill for finished video rendering, code-native animation, deterministic UI implementation, or simple prompt rewriting unless the user is clearly working toward storyboard frames.
Generate, inspect, compare, reject, regenerate, and log.
Never treat the first generated frame as correct by default. Every frame must be judged against:
Before generating frames, establish these foundations. Infer low-risk details from local files when possible; ask only when a missing answer would materially change the frame set.
Identify what the product actually does and the one-sentence promise.
Good:
Bad:
Reduce the video to a short story flow. Do not list every feature.
For a 5-10 second product launch, use 5-8 beats:
entry / setup -> first product action -> agent or system response -> confirmation -> social/proof -> brand resolveFor Fantopy-style prediction apps:
name or appoint agent -> make prediction -> agent reacts -> lock score -> invite friends -> leaderboard -> brandFind and inspect the actual product materials before inventing:
Extract the product's real visual language:
For every external reference, separate what to borrow from what not to copy.
Examples:
Never copy reference text, product concepts, or UI metaphors unless the user explicitly asks.
Choose one text mode before generating.
Default: use minimal exact text only.
Modes:
textless plates: no readable generated text; copy is added later in a motion tool.minimal exact text: 1-8 short exact strings, no paragraphs.real UI screenshot text: preserve existing screenshot text as reference.editable motion layer: generate mostly textless plates and plan copy as a separate layer.Avoid generated paragraphs, fake microcopy, skeleton bars, placeholder labels, and text-dense UI unless the user explicitly accepts the risk.
Real logos and marks come from brand files or uploaded references.
Always maintain an explicit avoid list based on user taste and product category.
Common avoids for SaaS/product-launch storyboards:
For sports-adjacent apps, avoid realistic stadiums, crowds, mascots, grass, broadcast overlays, and live-action football scenes unless the user explicitly wants them.
Before batching, determine:
9:16Known upload planning examples:
For AI video tools, separate the master storyboard from tool limits:
Before generating a full storyboard or motion-handoff package, make sure the following are either answered by the user or stated as assumptions:
If these decisions are not clear, do not blindly commit to a specific frame count or batching structure. Either ask a concise confirmation question or write an explicit assumption block before proceeding.
Good assumption block:
Assumptions before generating:
- Target: AI-video input, not final rendered video.
- Master storyboard: 12-15 frames.
- Style: product-launch motion stills using real product UI as the source of truth.
- Handoff: create prompt files only after the frame sequence is accepted.Only skip this gate when the user explicitly asks for a fast draft or the missing details have a low impact on the result.
Prefer product-motion frames over literal full screenshots.
Strong frame types:
Weak frame types:
Inspect source assets and summarize:
Generate one baseline frame first.
Use $imagegen / built-in image_gen. Keep the prompt concise but precise. Do not over-expand; longer prompts can make video and image tools worse.
Open the baseline frame with image inspection.
Judge it in taste language:
If it fails, regenerate with one targeted correction. Do not generate the full set until the baseline direction is acceptable.
Generate each distinct frame with its own prompt. Keep composition and visual language consistent across prompts.
For each frame:
For every generated frame copied into the workspace, log:
Use a local prompts.md or prompt-log.md in the storyboard folder.
Create a contact sheet from accepted final frames for visual comparison. This is an index artifact, not manual frame editing.
Review the contact sheet and individual frames. Regenerate any frame that breaks cohesion.
Do not manually fix broken frames.
If requested, create upload-ready folders with sequential copies only.
Examples:
omni/chat-1/
omni/chat-2/
higgsfield/batch-1/
higgsfield/batch-2/Respect platform image-count limits and preserve story order.
Create motion-handoff prompts only when the user asks for AI-video input, clip generation prompts, editing guidance, or a tool-specific handoff. Do not make motion prompts a mandatory part of every storyboard.
When making motion prompts, group frames by story arc, not by arbitrary count. Strong groups usually contain one of these arcs:
The grouping can be 2, 3, 4, 5, or more frames depending on the tool and the motion arc. Do not hard-code ranges such as 1-3 or 4-8 into the skill. Ask or infer based on the accepted storyboard.
For each group, save a prompt file with a descriptive name. Examples:
shot-agent-reveal.md
shot-prediction-flow.md
shot-social-proof.md
shot-brand-resolve.mdIf exact frame ranges are known and useful, include them in the filename, but treat this as project-specific:
frames-04-08-prediction-flow.mdEvery multi-image motion prompt should explicitly state how the images should be interpreted:
Use the connected images as sequential keyframes in this exact chronological order:
1. <describe keyframe 1>
2. <describe keyframe 2>
3. <describe keyframe 3>
Animate one continuous product-launch motion graphic shot that flows through these keyframes in order.
Do not treat the connected images as separate style references. They are the timeline.When clips will be stitched, add a stitch strategy only if it matches the user's workflow:
Animate the first keyframe in from a clean empty stage, and animate the final keyframe out into a clean empty stage, so this clip can be stitched smoothly with neighboring clips.For UI-heavy keyframes, add stability constraints when needed:
Keep the UI stable and preserve exact text, layout, colors, flags, scores, and typography. Do not warp, redesign, or invent new UI.If the tool's image order is ambiguous, describe the intended order by content. Do not rely on visual node order alone.
Use this compact pattern for imagegen prompts:
Create ONE production-grade 9:16 storyboard frame for <product/video>.
Frame: <number/name>.
Product truth: <what this product actually does>.
Style: <visual language from real product + taste refs>. Borrow <specific qualities> from references. Do not copy <specific concepts/text/layout>.
Composition: <one clean product-motion frame, with clear crop/stage/module>.
Exact readable text only, if any:
<short lines>
Avoid: <specific avoid list>.
Quality: must feel like a screenshot from a polished SaaS product-launch motion-design video, cohesive with the accepted frames.Keep prompts shorter when the model starts overfitting or adding unwanted detail.
Reject/regenerate if any are true:
For final AI-video-ready storyboards, also check sequence rhythm:
When the user asks for AI-video prompts, keep them short. Over-detailed prompts often make the video worse.
Use 1-2 sentences unless the user asks for a detailed prompt.
Example:
Make a clean SaaS product launch motion-graphics video using the attached screenshots as the visual style and storyboard. Keep it faithful to the screenshots with subtle UI motion, dark teal gradients, crisp product elements, and no extra scenes, people, stadium footage, fake logos, or invented text.This skill is Codex-native when frame generation is required because it depends on Codex $imagegen / built-in image_gen.
If a non-Codex host invokes this skill:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.