CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

review-ugc-render

Mandatory pre-publish review gate for a UGC video render. Transcribes the finished render's AUDIO with Whisper and word-diffs it against the approved spoken script, then gates pinning the final render (video_project_upsert patch.final_render_id) — blocking a render whose generated audio mis-voices a word (e.g. the approved "human-vetted" spoken as "human witted"), says a different number or brand name, flips a negation, drops an approved phrase, or comes back silent. Correct speech written differently ("5mg" said "five milligrams", "30%" said "thirty percent", a spoken URL, "don't" said "do not", "braxleybands" said "braxley bands", a confirmed pronunciation like "AG1" said "A G one") passes. Runnable, gating counterpart to content-goose's review-transcript-integrity atom. Every ugc-video-formats recipe runs this after render and BEFORE pinning the final render.

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A strong, execution-ready skill body: concrete commands, explicit exit-code-driven validation with re-run feedback loops, and dense domain rules that Claude could not reconstruct on its own. The main costs are token weight — some repetition and long nested-condition prose in the brand-term section — and rule/failure tables that sit inline where a references file would keep the overview leaner.

Suggestions

Move the detailed rewrite-rule table ("What counts as the same speech") and the failure catalog ("What still FAILS") into a references/ file (e.g. references/rules.md), keeping a 5-line summary of the pass/fail categories in SKILL.md; this would cut the body by roughly half.

Tighten the brand-term acceptance rules into a short bulleted checklist or table — the nested all-conditions paragraph (similarity >= 0.6, alphabetic words, both sides --brand-term) is the hardest passage to scan.

Deduplicate the "human-vetted"/"human witted" example (it appears in both "Why this exists" and the failure table) and ensure tests/test_review_render.py ships in the bundle, since the Tests section references it.

DimensionReasoningScore

Conciseness

The body is dense with non-obvious, domain-specific rules Claude could not know (canonical spoken-form rewrite table, exit-code semantics, backend priority, alias restrictions), so most tokens earn their place. Not score 5: there is measurable repetition — the "human-vetted"/"human witted" mis-voicing example appears in "Why this exists" and again in the failure table (and in the description); the brand-term acceptance rules in "Brand names and confirmed pronunciations" are a ~150-word nested-condition paragraph that could be tightened or tabulated; and the superseded/deprecation notes plus the history aside ("Before 2026-10-06, --brand-term fuzzily stripped...") add date-sensitive bulk, though at least the deprecation note is clearly sectioned off as such. Clearly above score 3: padding is minor, not systematic.

4 / 5

Actionability

Fully executable guidance: a copy-paste-ready CLI invocation with concrete working paths ("python3 <pack>/review-ugc-render/scripts/review_render.py --video working/final.mp4 --script-file working/approved-script.txt --json working/review-verdict.json"), an exhaustive flag reference with defaults (--min-ratio 0.90), explicit exit-code semantics (0/2/3) with what to do on each, backend fallback order, and a runnable test command. The referenced script scripts/review_render.py exists in the bundle. The only placeholder is `<pack>`, a standard skill-pack location convention, which does not rise to a gap. Specific examples cover the common cases (pronunciations file, aliases, brand terms).

5 / 5

Workflow Clarity

The multi-step process is clearly sequenced with explicit validation checkpoints and a full feedback loop: persist the approved script before rendering → run the check after the master render exists → branch on exit code (0 pin / 2 do NOT pin, fix, re-run / 3 fix environment) → "Re-run after every fix / re-roll until it PASSES". This is a gating skill over a publish/pin action, and validation is present and explicit (verdict passes only when similarity >= --min-ratio and no HIGH issue), so the destructive/batch cap at 3 does not apply. The failure table maps each report line to root cause and fix — exactly the anchor-5 'feedback loops for error recovery' pattern.

5 / 5

Progressive Disclosure

Good structure with clear, well-labeled sections (Why / When to run / Contract / rules tables / failure catalog / Inputs / Tests / Relationship) and one-level-deep, clearly signaled references: the bundled script scripts/review_render.py exists at the referenced path, and external pointers (create-vo-elevenlabs' read_pronunciations.py, create-video-seedance-2-fal Failure Modes) are single-hop. Not score 5: the body inlines ~190 lines of rule tables and failure-catalog detail that could partly live in a references/ file, and the Tests section points at tests/test_review_render.py, which is not present in the provided bundle (only scripts/ exists). Not score 3: nothing is buried, sections are easy to navigate, and the inline tables are decision-critical at run time rather than offloadable bulk.

4 / 5

Total

18

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A dense, highly specific description that fully answers what the skill does, when it runs (with an explicit trigger clause), and how it differs from related tooling, all in third person. Its only weakness is token-heavy wording laced with internal system identifiers that no user would say verbatim, which slightly dilutes natural trigger terms.

Suggestions

Trim internal identifiers (e.g. "video_project_upsert patch.final_render_id", "review-transcript-integrity atom") from the description or compress them to one clause; keep natural user-facing terms ("UGC video", "render", "audio", "script", "review", "publish") dominant.

The duplicated pass/fail example lists ("5mg" said "five milligrams", "human-vetted" spoken as "human witted", etc.) could be shortened to one example per category to cut length without losing trigger coverage.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions with comprehensive coverage: "Transcribes the finished render's AUDIO with Whisper and word-diffs it against the approved spoken script", "gates pinning the final render (video_project_upsert patch.final_render_id)", plus an explicit block list ("mis-voices a word ... says a different number or brand name, flips a negation, drops an approved phrase, or comes back silent") and an explicit pass list. It is written in third person ("Transcribes", "gates", "passes"), so no voice penalty applies. Not score 4 territory: coverage is comprehensive, not 'minor gaps'.

5 / 5

Completeness

Both 'what' and 'when' are explicit. What: transcribe audio with Whisper, word-diff against the approved script, gate the pin action, with concrete pass/fail examples. When: "Mandatory pre-publish review gate" plus "Every ugc-video-formats recipe runs this after render and BEFORE pinning the final render" — an explicit trigger clause with concrete trigger phrases, so the missing-'Use when' cap at 3 does not apply. Not score 4: the 'when' is as explicit and specific as the anchor-5 example.

5 / 5

Trigger Term Quality

Good natural keyword coverage within the niche: "UGC video render", "review gate", "Whisper", "audio", "approved spoken script", "pinning the final render", "recipe". Not score 5: a chunk of the wording is internal system jargon users would not naturally say ("video_project_upsert patch.final_render_id", "content-goose's review-transcript-integrity atom", "ugc-video-formats recipe"), and a few natural variants ("captions", "mp4", "speech check", "publish") are absent. Clearly above score 3, which requires missing common variations or synonyms.

4 / 5

Distinctiveness Conflict Risk

Clear niche with distinct triggers: pre-publish audio-vs-script gating for UGC video renders. It even disambiguates itself from the neighboring system ("Runnable, gating counterpart to content-goose's review-transcript-integrity atom ... Deeper multi-axis review stays in the content-goose lab"), so conflict risk with the closest related skill is explicitly managed. Minimal conflict risk with anything else.

5 / 5

Total

19

/

20

Passed

Validation

87%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

referenced_paths_exist

Referenced path issues: 1 missing

Warning

Total

14

/

16

Passed

Repository

gooseworks-ai/goose-skills

Path

skills/ads/packs/ugc-video-formats/review-ugc-render/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.