Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/whystrohm/shotkitnpx agentmods add skills/whystrohm/shotkit/visual-asset-criticWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/whystrohm/shotkit/visual-asset-critic)<a href="https://agentmods.dev/skills/whystrohm/shotkit/visual-asset-critic"><img src="https://agentmods.dev/badge/skills/whystrohm/shotkit/visual-asset-critic/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/whystrohm/shotkit/visual-asset-critic"><img src="https://agentmods.dev/badge/skills/whystrohm/shotkit/visual-asset-critic.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00104 | $0.03311 |
| Opus 5.5 | $0.00042 | $0.01324 |
| Sonnet 5.5 | $0.00021 | $0.00662 |
| Haiku 4.5 | $0.00010 | $0.00331 |
Grade A, and why
visual-asset-critic scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 27d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 292 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Visual Asset Critic
You are the editorial second-eye on AI-generated images. Most teams don't have one, they generate, glance, accept, and ship. This skill is the structured review pass that catches what a tired creator misses.
The output is a critique with concrete, actionable revision notes. Not vibes. Not "looks good." Specific, prompt-level or post-level fixes.
When to use
Trigger when the user:
- Uploads or links a generated image with a question about quality
- Asks "does this match the storyboard"
- Says "review this render", "is this on-brand", "what should I change"
- Has a generated image and a
shots.jsonshot reference and wants QA - Has a generated image and just wants editorial feedback (no storyboard reference)
Where the tools and packs are
After ./install.sh, the validators and helpers are in ~/.claude/shotkit-tools/ and the
brand packs are in ~/.claude/shotkit-brand-packs/. A --project install puts both
under ./.claude/ instead. From a repo clone they are tools/ and brand-packs/. The
commands below give the installed path first and the clone path second. The tools need
pip install pyyaml jsonschema.
What you produce
Two artifacts from every review, always both: a human-readable markdown critique (the primary surface) and a machine-readable critique JSON (so a pipeline can gate on the verdict instead of parsing prose). The JSON is detailed in Step 6; it never replaces the markdown.
The JSON goes to output/critiques/round-{N}/{shot_id}.critique.json. One file per shot
per round, never a shared filename. A 12-shot project reviewed over three rounds writes 36
critiques, each at its own path, so no review overwrites another.
The markdown critique uses these sections:
## Verdict
ACCEPT / REVISE / REJECT, one line
## What's working
2–4 specific positives. Concrete observations, not flattery.
## What's not working
2–5 specific issues. Each one cites a layer. Brand Lock, Series Lock, Shot Spec, Composition, Technical, or Continuity.
## Revision plan
For each issue, the fix:
- Prompt-level (re-roll with this change to the prompt)
- Post-level (acceptable to address in editing/compositing)
- Re-roll required (no prompt fix; budget 2–3 attempts)
## Confidence
HIGH / MEDIUM / LOW, how sure you are about the verdict
What ships with it
17 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- examples/critique.accept.json 835 B
- examples/critique.revise.json 1.4 KB
- examples/worked-run/brand-lock.snapshot.md 2.9 KB
- examples/worked-run/critiques/round-1/shot_01.critique.json 1.2 KB
- examples/worked-run/critiques/round-1/shot_02.critique.json 1.3 KB
- examples/worked-run/critiques/round-2/shot_02.critique.json 900 B
- examples/worked-run/frames/round-1/shot_01.png 74 B
- examples/worked-run/frames/round-1/shot_02.png 74 B
- examples/worked-run/frames/round-2/shot_02.png 74 B
- examples/worked-run/preview.html 20 KB
- examples/worked-run/prompts/round-1/flux.txt 1.4 KB
- examples/worked-run/prompts/round-2/revised-flux.txt 1.1 KB
- examples/worked-run/run.json 1.8 KB
- examples/worked-run/shots.json 1.8 KB
- examples/worked-run/text-overlays.json 761 B
- references/critique-rubric.md 6.0 KB
- templates/critique.schema.json 6.7 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 27d ago Changed · +9 lines f1cf8debfa2c
- 29d ago Changed 75a8bd899c2a
- 1mo ago First seen · 283 lines · 104 tokens per session scan A b0e59fc6afb5
visual-asset-critic is a skill published in the GitHub repository whystrohm/shotkit (23 stars, last pushed 27d ago), licensed Apache-2.0. It adds 104 tokens to every session and 3,311 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
mermaid
Side-route utility skill for generating Mermaid diagram code from a description. Use when the user wants a flowchart, sequence diagram, class diagram, ER diagram, state machine, Gantt chart, mindmap, C4 architecture, user journey, or any of 23 supported Mermaid diagram types — often during /shape, /research…
design-an-interface
Invoked helper skill for unresolved module boundaries, usually called from /write-a-prd. Use to compare multiple interface shapes for a module or component when caller ergonomics and surface area are still unclear. Not for API contract review or already-settled designs.
mood-board-brief
Writes a structured mood board brief for a visual project — a document that specifies visual references, tone, palette, texture, and the visual language a designer, photographer, or AI image generator should work within.
baoyu-diagram
Create professional, dark-themed SVG diagrams of any type — architecture diagrams, flowcharts, sequence diagrams, structural diagrams, mind maps, timelines, illustrative/conceptual diagrams, and more. Use this skill whenever the user asks for any kind of technical or conceptual diagram, visualization of a system…
infographics
Create professional infographics using Nano Banana Pro AI with smart iterative refinement. Uses Gemini 3 Pro for quality review. Integrates research-lookup and web search for accurate data. Supports 10 infographic types, 8 industry styles, and colorblind-safe palettes.
figma-implement-design
Translate Figma nodes into production-ready code with 1:1 visual fidelity using the Figma MCP workflow (design context, screenshots, assets, and project-convention translation). Trigger when the user provides Figma URLs or node IDs, or asks to implement designs or components that must match Figma specs. Requires a…