Content
90%Weight 40%Scale 1-5Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
A tight, fully executable reference for a three-command render pipeline: exact commands, a complete input schema, hard numeric thresholds, and an explicit rejection gate, with essentially zero token waste. The remaining gaps are minor — the measure_motion rejection recovery path is left implicit, and the bundle's fourth script (_fonts.py) is undocumented in the overview.
Suggestions
Make the motion-gate feedback loop explicit, e.g. after "exit 1 = reject" add: "On reject, re-run compose.py with a higher --speed (3-8x) or different real footage, then re-measure — do not ship a clip that fails the gate."
Mention every bundle script's role in the Run section or a one-line bundle map (including _fonts.py) so the scripts/ directory is fully navigable from SKILL.md.
Consider moving the b-roll rules and guardrail enumerations into a short reference file (e.g. references/guardrails.md) if the skill grows, keeping SKILL.md as the overview.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The body is lean and dense: every section carries operational constraints or exact commands, with no explanations of concepts Claude already knows and no padding. Phrases like "A locked-off real-time shot measures ~18x less motion than the reference and reads as a still photo" give decision-relevant rationale in one line, and the note "The Slack standup card above is an illustration of the schema, not a default" pre-empts a real misuse in a single sentence. | 5 / 5 |
Actionability | Guidance is fully executable: the Run block gives copy-paste commands with flags, expected outputs ("card-no-cta.png, card-with-cta.png") and exit semantics ("exit 1 = reject"), card.json is a complete working example, and numeric thresholds are explicit throughout ("--speed (3-8x)", "rejects a mean under 1.5", "normalised to -15 LUFS", "7s", "2.0s"). | 5 / 5 |
Workflow Clarity | The three-step sequence (render_card.py → compose.py → measure_motion.py) is clearly ordered in one block, with an explicit validation gate ("measure_motion.py ad.mp4 --cta-at 2.0 # exit 1 = reject") and a failure-checklist guardrail section. It sits at 4 rather than 5 because the recovery loop when the motion gate rejects — re-run with a higher --speed or ask the user for different real footage — is implied ("If there is no real footage, ask the user for some") rather than spelled out as a validate → fix → re-measure step. | 4 / 5 |
Progressive Disclosure | Structure is good: the body is a well-sectioned overview (Run, Choices, Guardrails, Rules for the b-roll, Audio) and implementation detail correctly lives in the bundle scripts, all of which are referenced by name with their roles ("render_card.py draws the two card plates… compose.py… measure_motion.py"). It is 4 rather than 5 because the body is ~84 lines with several dense rule lists that could split into a one-level-deep reference, and the bundled _fonts.py is never mentioned or attributed a role. | 4 / 5 |
Total | 18 / 20 Passed |