Assemble an iMessage chat-reveal video ad from a thread JSON — one continuous Playwright recording of the conversation animating in (typing dots, composer typing, bubble pops, auto-scroll) crossfaded into a designed end card, with iMessage send/receive SFX and an optional ducked music bed. FREE assembly (Playwright + ffmpeg); the recipe supplies the per-brand thread + product + end-card config and gates the paid product-image/music calls to their own capabilities. Use for the imessage-chat format.
Low
Low-risk findings.
2 low severity findings. Worth noting, but not necessarily harmful.
The skill exposes the agent to untrusted, user-generated content from public third-party sources, creating a risk of indirect prompt injection. This includes browsing arbitrary URLs, reading social media posts or forum comments, and analyzing content from unknown websites.
Outsider-authored free text in `config.json` flows directly into runtime-rendered HTML (e.g., thread `messages[].text`, attachment `title`/`subtitle`, and end-card copy `end_card.*`) that Playwright loads via `page.setContent(html)` / `page.goto(file://...)` for recording/screenshot.
The skill fetches instructions or code from an external URL at runtime, and the fetched content directly controls the agent’s prompts or executes code. This dynamic dependency allows the external source to modify the agent’s behavior without any changes to the skill itself.
The package-lock lists registry URLs (https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz, https://registry.npmjs.org/playwright/-/playwright-1.61.1.tgz, https://registry.npmjs.org/playwright-core/-/playwright-core-1.61.1.tgz) which are fetched by the documented npm install / Playwright setup and bring remote executable code (Playwright + browsers) that the skill requires and runs locally.
8866b2a
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.