CtrlK
BlogDocsLog inGet started
Tessl Logo

render-imessage-cascade

Assemble an iMessage notification-cascade video ad (≈14s, 9:16) from a phone-on-desk plate + 3–5 messages — authentic Apple Messages banners composited in PIL (SF Pro text, green Messages icon, warm translucent-greige fill, soft shadow) spring in one-by-one at the BOTTOM and push the stack UP, a right-aligned Show-less/X pill rides above, the X clears the stack, then a serif end card resolves. FREE assembly (PIL + ffmpeg); the recipe supplies the per-brand plate, notifications, and end-card config and gates the paid plate-clean/music calls to their own capabilities. Use for the imessage-notification-cascade format.

64

Quality

76%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Low

Low-risk findings worth noting

Fix and improve this skill with Tessl

tessl review fix ./skills/ads/capabilities/render-imessage-cascade/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

68%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 well-structured, mostly actionable body that points to a clean script bundle with concrete geometry and craft rules. It loses marks for lacking an explicit run/QC workflow with validation checkpoints and for slight duplication of the description in the opening.

Suggestions

Add a short numbered workflow with an explicit invocation (e.g. '1. python scripts/build_assets.py config.json 2. python scripts/compose.py ... 3. watch/QC the master') and a validation checkpoint before declaring the render done — this would lift workflow_clarity above the batch-operation cap of 3.

Trim the opening two paragraphs, which re-explain the format and deterministic-composite rationale already stated in the description, to improve conciseness.

Add explicit 'see scripts/X.py for usage' navigation cues so the script references read as deliberate progressive disclosure rather than inline descriptions.

DimensionReasoningScore

Conciseness

Mostly lean and load-bearing (craft rules, geometry contract, script roles), but the opening two paragraphs re-describe the format and deterministic-composite rationale already covered by the description — minor over-explanation that could be trimmed. Not a 5 because of that duplication.

4 / 5

Actionability

Concrete script roles with named outputs ('nb-1..N.png', 'pill.png', 'endcard.png') and explicit geometry values (W=1080, BANNER_H=176, YB=1200), and the referenced scripts all exist. Not a 5 because no copy-paste-ready invocation command is given — Claude must infer how to run the scripts.

4 / 5

Workflow Clarity

A sequence is implied inside the compose.py bullet (push-in → banners spring in → pill → ✕-clear → end card → encode), but there is no explicit numbered workflow and no validation/verification checkpoint. Video rendering is a batch operation, so per the rubric guideline missing validation caps workflow_clarity at 3.

3 / 5

Progressive Disclosure

Clean one-level-deep bundle (scripts/build_assets.py, scripts/compose.py, scripts/config.example.json — all present and referenced) with well-organized sections serving as an overview. Not a 5 because references are signaled via backtick paths rather than explicit 'see X for usage' navigation links.

4 / 5

Total

15

/

20

Passed

Description

83%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 highly specific, third-person description that concretely enumerates the assembly actions and names a distinct niche. Its main weakness is a single narrow 'Use for...' trigger with no synonyms, which leaves trigger quality and completeness just short of full marks.

DimensionReasoningScore

Specificity

Lists multiple concrete actions — 'Assemble an iMessage notification-cascade video ad', 'banners composited in PIL', 'spring in one-by-one at the BOTTOM and push the stack UP', 'the X clears the stack, then a serif end card resolves', 'FREE assembly (PIL + ffmpeg)' — with comprehensive coverage of what the skill does.

5 / 5

Completeness

Clearly answers 'what' (full assembly/composite description) and provides an explicit 'when' ('Use for the imessage-notification-cascade format.'), but the when is one terse format-name trigger rather than multiple concrete trigger phrases, matching the 4 anchor where the when could be more specific.

4 / 5

Trigger Term Quality

Good domain keyword coverage ('iMessage', 'notification-cascade', 'video ad', '9:16', 'Apple Messages banners') and an explicit 'Use for the imessage-notification-cascade format' trigger, but only a single narrow trigger phrase with no natural synonyms or variations. Not a 5 because it lacks the common-variation breadth of the 5 anchor.

4 / 5

Distinctiveness Conflict Risk

Targets a highly specific niche — the 'imessage-notification-cascade video ad format' — with distinct triggers and minimal overlap risk with other skills.

5 / 5

Total

18

/

20

Passed

Validation

93%

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

Validation15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

frontmatter_unknown_keys

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

Warning

Total

15

/

16

Passed

Repository
gooseworks-ai/goose-skills
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.