Use when the user wants a product demo video / screen recording with zooms and cursor / dashboard walkthrough clip for any product (e.g. "/product-demo", "record a demo of the app", "Screen-Studio style demo").
Installs into .claude/skills of the current project.
Are you the author of Product Demo?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/ucsandman-product-demo)
---
name: product-demo
description: Use when the user wants a product demo video / screen recording with zooms and cursor / dashboard walkthrough clip for any product (e.g. "/product-demo", "record a demo of the app", "Screen-Studio style demo").
---
# Product Demo
**REQUIRED BACKGROUND:** marketing-studio skill; also read
`${CLAUDE_SKILL_DIR}/../../docs/playbook/capture.md` and
`${CLAUDE_SKILL_DIR}/../../docs/playbook/remotion.md`. Work in `${CLAUDE_SKILL_DIR}/../..`.
Produces `<product>/marketing/assets/<brand>/demo.mp4`: real app footage with a
timestamp-driven cursor, subject-safe camera framing, and concise captions.
## Recipe
1. Toolchain + brand check per marketing-studio. The product's app must be RUNNING
(ask the user to start it; never start their stack yourself).
2. Capture script: `feeders/capture/record-<brand>-demo.mjs`. For a new product copy
`record-noban-demo.mjs`: viewport wide enough for the app, `deviceScaleFactor: 2`,
proven ready-locators per view, a step caption per view. Read
`${CLAUDE_SKILL_DIR}/../../docs/playbook/capture.md` FIRST — especially: camera focus rects are MEASURED from raw
footage frames, never derived from click points, and must end before any app-side
clipped edge.
3. Run the capture with `--project <product>`; verify `capture OK` and the product-owned
props/public files it writes. Do not stage product footage in the engine.
4. Measure/tune focus rects: extract raw frames
(`npx remotion ffmpeg -ss <t> -i <product>/marketing/assets/<brand>/public/<brand>/demo.webm -frames:v 1 f.png`),
Read them, set focus {x,y,w,h} centers/sizes in the capture script, re-capture (~20s).
5. Render one proof per view with
`--public-dir=<product>/marketing/assets/<brand>/public`; check that the product action
is legible at delivery size, camera framing is safe, and pointer phases match capture.
6. Render into the product workspace and deliver per marketing-studio. A full desktop
recording is raw material, not automatically an authored edit.