juanmarchetto/agent-skills/playwright-recording
- community
Checking that the SKILL.md file is still in the repository.
Record browser interactions as video using Playwright. Capture demo videos, app walkthroughs, and UI flows. Includes cursor highlighting, click ripple effects, cookie banner dismissal, and window scaling patterns. Use when: record demo, capture browser video, screen recording, walkthrough footage.
Install
npx vskill@latest install juanmarchetto/agent-skills/playwright-recordingSKILL.md
Playwright Video Recording
Record browser interactions as video using Playwright — quick capture of demos, walkthroughs, and UI flows during development.
When to Use This vs Other Recording Skills
| Need | Use | |
|---|---|---|
| Scripted demos with cursor animation, overlays, themes | webreel | |
| Quick browser capture during development | playwright-recording (this skill) | |
| Natural language -> automated recording pipeline | demo-pipeline | |
| Live browser interaction with element refs | agent-browser |
Use this skill when you need a fast, scriptable way to capture browser video without the overhead of a full production pipeline. Write a TypeScript script, run it, get a .webm file.
Workflow
Step 1: Setup
Step 2: Write Recording Script
Create a TypeScript file that launches a browser context with video recording enabled:
Step 3: Run
Step 4: Convert (optional)
Playwright outputs WebM. Convert to MP4 if needed:
Recording Patterns
Viewport Sizes
Cursor Highlighting
Playwright does not show a cursor by default. Inject one:
Note: Injected DOM elements appear in the video. Re-inject after navigation since they reset on page load.
Cookie Banner Dismissal
Window Scaling for Laptops
Record at full 1080p while showing a smaller window:
Example Output
Running a recording script produces:
The output is a .webm video file in the configured directory. The filename is auto-generated by Playwright — rename or move it in your script using page.video()?.saveAs('desired-name.webm').
Tips
- Use slowMo — 50-100ms makes actions visible to viewers
- Add waitForTimeout — pause between actions for comprehension
- Wait for animations — use
waitForLoadState('networkidle') - Test without recording first — debug before final capture
- Clear browser state — use fresh context for clean demos
- Use headless: false for debugging, headless: true for final capture
Error Handling
- Chromium not installed: Run
npx playwright install chromium. If on CI, add to setup step. - Video codec issues: Playwright outputs VP8 in WebM. If your player can't handle it, convert with
ffmpeg -i input.webm -c:v libx264 output.mp4. - Black/empty video: Ensure
context.close()is called beforebrowser.close()— the video is finalized on context close. - Recording too large: Reduce viewport size or use shorter
waitForTimeoutdurations. - Injected elements lost after navigation: Re-inject cursor/overlays in a
page.on('load')handler. - Permission denied on Linux: Playwright may need
--no-sandboxflag:chromium.launch({ args: ['--no-sandbox'] }).
Structure
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/playwright-recording/SKILL.md
Popularity
- Repository stars
- 5
- Repository forks
- 1
- 7-day trend score
- 9
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/juanmarchetto/agent-skills/playwright-recording)