<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv" -->

---
title: Have your agent record video demos of its work with...
description: shot-scraper 1.10 introduces a new `video` command that reads a YAML storyboard file and uses Playwright to record browser-based video demos of web...
canonical: https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Have your agent record video demos of its work with shot-scraper video | daily.dev
og:description: shot-scraper 1.10 introduces a new `video` command that reads a YAML storyboard file and uses Playwright to record browser-based video demos of web...
og:url: https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv
og:image: https://api.daily.dev/og/posts/g5FYnKcTv.png
og:image:alt: Have your agent record video demos of its work with shot-scraper video
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Have your agent record video demos of its work with shot-scraper video

**[Simon Willison](https://daily.dev/sources/simonwillison)** · 5 min read · 0 upvotes · 0 comments

## Summary

shot-scraper 1.10 introduces a new `video` command that reads a YAML storyboard file and uses Playwright to record browser-based video demos of web applications. The feature is designed to let coding agents autonomously produce demo videos of their own work. The storyboard YAML supports scenes, clicks, fills, waits, JavaScript injection, and server startup — all validated via Pydantic. The implementation was written by GPT-5.5 xhigh in Codex Desktop, unblocked by playwright-python 1.61.0 which fixed a video width limitation. The author highlights a pattern where rich `--help` output enables agents to use a tool without additional documentation.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://simonwillison.net/2026/Jun/30/shot-scraper-video>

## Questions this post answers

### How do I use shot-scraper video to record a demo of a web app routine?

Shot-scraper 1.10 introduces a video subcommand that reads a storyboard.yml file defining a server to launch, a target URL, a viewport, and a sequence of scenes with actions like click, fill, wait_for, and pause. Running it with a command such as 'shot-scraper video storyboard.yml --auth auth.json --mp4' produces an MP4 or WebM recording of the routine via Playwright's screencast mechanism.

_Teams automating product demos with shot-scraper video can track tooling updates like this on daily.dev._

### Why were shot-scraper's Playwright-recorded videos stuck at 800 pixels wide?

Playwright's screencast video recording mechanism, added in Playwright 1.59, had a hardcoded 800px video width that blocked wider demo recordings. A pull request fixing this landed in the Playwright repository but wasn't released until playwright-python 1.61.0 shipped, which unblocked full implementation of shot-scraper's new video command.

_Developers debugging Playwright video-recording quirks can follow fixes like this on daily.dev._

### Can a coding agent write a video storyboard for a tool using only its --help output?

Yes, shot-scraper's video command was designed so that its --help output gives enough detail for a coding agent to construct a full storyboard.yml file without additional documentation. GPT-5.5 xhigh running in Codex Desktop generated the entire demo YAML, including scenes, selectors, and pasted CSV data, using only the --help text and a short natural-language prompt.

_Developers designing CLI tools for agent use can compare help-text-as-skill-file patterns on daily.dev._

## Similar posts on daily.dev

- [Record a product demo with Playwright](https://daily.dev/posts/record-a-product-demo-with-playwright-bfaidl1pm) · Flavio Copes · 0 upvotes · 0 comments

---

Tags: [#python](https://daily.dev/tags/python), [#ai-agents](https://daily.dev/tags/ai-agents), [#pydantic](https://daily.dev/tags/pydantic)

[View this post on daily.dev](https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Have your agent record video demos of its work with shot-scraper video","url":"https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv"},"datePublished":"2026-06-30T16:58:26.362Z","dateModified":"2026-09-14T05:58:32.981Z","description":"shot-scraper 1.10 introduces a new `video` command that reads a YAML storyboard file and uses Playwright to record browser-based video demos of web...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/16e13e0137a86507196c93900d5e666a?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/16e13e0137a86507196c93900d5e666a?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Simon Willison","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Simon Willison","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/cf12b897300740218b35f49a6309ec5b","url":"https://daily.dev/sources/simonwillison"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"python,ai-agents,pydantic","timeRequired":"PT5M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Simon Willison","item":"https://daily.dev/sources/simonwillison"},{"@type":"ListItem","position":3,"name":"Have your agent record video demos of its work with shot-scraper video"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/have-your-agent-record-video-demos-of-its-work-with-shot-scraper-video-g5fynkctv#faq","mainEntity":[{"@type":"Question","name":"How do I use shot-scraper video to record a demo of a web app routine?","acceptedAnswer":{"@type":"Answer","text":"Shot-scraper 1.10 introduces a video subcommand that reads a storyboard.yml file defining a server to launch, a target URL, a viewport, and a sequence of scenes with actions like click, fill, wait_for, and pause. Running it with a command such as 'shot-scraper video storyboard.yml --auth auth.json --mp4' produces an MP4 or WebM recording of the routine via Playwright's screencast mechanism. Teams automating product demos with shot-scraper video can track tooling updates like this on daily.dev."}},{"@type":"Question","name":"Why were shot-scraper's Playwright-recorded videos stuck at 800 pixels wide?","acceptedAnswer":{"@type":"Answer","text":"Playwright's screencast video recording mechanism, added in Playwright 1.59, had a hardcoded 800px video width that blocked wider demo recordings. A pull request fixing this landed in the Playwright repository but wasn't released until playwright-python 1.61.0 shipped, which unblocked full implementation of shot-scraper's new video command. Developers debugging Playwright video-recording quirks can follow fixes like this on daily.dev."}},{"@type":"Question","name":"Can a coding agent write a video storyboard for a tool using only its --help output?","acceptedAnswer":{"@type":"Answer","text":"Yes, shot-scraper's video command was designed so that its --help output gives enough detail for a coding agent to construct a full storyboard.yml file without additional documentation. GPT-5.5 xhigh running in Codex Desktop generated the entire demo YAML, including scenes, selectors, and pasted CSV data, using only the --help text and a short natural-language prompt. Developers designing CLI tools for agent use can compare help-text-as-skill-file patterns on daily.dev."}}]}
```

