CtrlK
BlogDocsLog inGet started
Tessl Logo

music-to-video

Turn a music track (an audio file, a video to pull audio from, or a track generated from a mood brief) into a beat-synced video — lyric video, slideshow, or kinetic promo. The music drives all pacing; any user-supplied images/videos are cut onto the same beat grid, and a complete video needs zero assets. Narrated pieces → the input-matched workflow (see /hyperframes). Unclear → /hyperframes.

64

Quality

77%

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

Fix and improve this skill with Tessl

tessl review fix ./skills/music-to-video/SKILL.md
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.

An exemplary multi-step workflow with explicit gates, validation, feedback loops, and executable commands, plus well-structured progressive disclosure. The one notable defect is the missing sub-agents/frame-worker.md file that Step 4, the Quick Reference, and the directory layout all cite.

Suggestions

Add the missing sub-agents/frame-worker.md (or correct the path) — Step 4 dispatch depends on it but the directory is absent from the bundle.

De-duplicate the 'one analyzer, trust it' guidance between the 'Two ideas' section and Step 1 to tighten conciseness.

Reconcile the directory-layout block with the actual bundle so listed paths (e.g. sub-agents/) all resolve.

DimensionReasoningScore

Conciseness

Dense, operational prose that mostly assumes Claude's competence, but the 'one analyzer / trust it' message is repeated across 'Two ideas' and Step 1 and could be tightened — efficient with minor trimmable redundancy.

4 / 5

Actionability

Multiple copy-paste-ready command blocks with real flags (init, analyze-beatgrid.py, validate-plan.mjs, assemble-index.mjs, check, render) cover the common cases fully.

5 / 5

Workflow Clarity

Steps 0–6 are explicitly sequenced with a Gate after each, validation gates (validate-plan.mjs, hyperframes check), feedback loops (fix every ✗, re-dispatch, re-assemble), and a resume table for error recovery.

5 / 5

Progressive Disclosure

Well-signaled one-level-deep references with a Quick Reference table and content split across references/ and scripts/ — but sub-agents/frame-worker.md is referenced repeatedly while no sub-agents/ directory exists in the bundle, a broken reference that keeps this below 5.

4 / 5

Total

18

/

20

Passed

Description

66%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 concrete, domain-specific description with strong action specificity and explicit disambiguation routing, but it lacks an explicit 'Use when...' trigger clause, which caps completeness. Trigger-term coverage is good though missing common synonyms and file extensions.

Suggestions

Add an explicit 'Use when...' trigger clause, e.g. 'Use when the user wants a music video, lyric video, beat-synced slideshow, or kinetic promo from a track.'

Include natural synonyms and extensions users actually say — 'music video', .mp3, .mp4 — to lift trigger-term quality.

State the when-condition concretely (music-driven pacing, no narration) rather than only routing away the non-matching cases.

DimensionReasoningScore

Specificity

Names the domain and several concrete actions — 'Turn a music track ... into a beat-synced video — lyric video, slideshow, or kinetic promo' and 'user-supplied images/videos are cut onto the same beat grid' — but stops short of the exhaustive action list of a 5.

4 / 5

Completeness

The 'what' is clear (music track → beat-synced video) but there is no explicit 'Use when...' trigger clause — the 'when' is only weakly implied, so per the cap this stays at 3.

3 / 5

Trigger Term Quality

Good natural-term coverage ('music track', 'beat-synced video', 'lyric video', 'slideshow', 'kinetic promo', 'audio file', 'video') but omits common synonyms/extensions like 'music video', .mp3, or .mp4 that a 5 would include.

4 / 5

Distinctiveness Conflict Risk

Clear niche (music-driven beat-synced video) with explicit boundary routing ('Narrated pieces → ... /hyperframes. Unclear → /hyperframes'), leaving only minor overlap risk with sibling hyperframes video skills.

4 / 5

Total

15

/

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.

Validation14 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 2 missing

Warning

referenced_paths_exist

Referenced path issues: 8 missing

Warning

Total

14

/

16

Passed

Repository
heygen-com/hyperframes
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.