TL;DR
shot-scraper 1.10에 shot-scraper video 명령이 추가되어 storyboard.yml로 정의한 일련의 브라우저 동작을 Playwright로 실행하고 그 과정을 비디오로 기록할 수 있다. 이 기능은 로컬 서버를 기동하거나 지정한 URL을 방문하고 뷰포트·대기 셀렉터·장면별 액션을 따라가며 녹화를 수행하며 명령행에서 --auth로 인증 쿠키를 전달해 인증된 세션을 재현할 수 있다. 게시글에 제시된 예시는 Datasette의 개발 중 기능을 데모하는 워크플로로, 페이지에 주입된 JavaScript로 navigator.clipboard를 대체해 시스템 클립보드에 의존하지 않고 텍스트 붙여넣기 동작을 재현하는 방식으로 결정론적 데모를 만든다. 이 방법은 자동화된 데모 생성과 코딩 에이전트가 만든 작업의 동작 증명에 유용하며 재현성과 안정성을 높인다.
섹션별 상세
shot-scraper video datasette-bulk-insert-storyboard.yml \
--auth datasette-demo-auth.json --mp4이 명령은 storyboard.yml 파일을 실행하여 Playwright 기반으로 웹 루틴을 녹화하고 --auth로 제공한 JSON에 들어있는 쿠키를 사용해 인증된 세션으로 접근한 뒤 MP4로 출력하는 예시이다.
(() => {
let clipboardText = "";
Object.defineProperty(navigator, "clipboard", {
configurable: true,
get: () => ({
writeText: async (text) => {
clipboardText = String(text);
},
readText: async () => clipboardText,
}),
});
})();storyboard.yml에 삽입된 이 스니펫은 페이지의 navigator.clipboard를 가로채어 writeText와 readText를 내부 변수로 흉내내므로 시스템 클립보드에 의존하지 않고 테스트용 클립보드 동작을 재현한다.

용어 해설
- Playwright
- — Playwright는 브라우저 자동화를 위한 라이브러리로, 스크립트로 브라우저를 열고 클릭·입력·네트워크 조건 등을 제어하여 웹 애플리케이션을 자동으로 조작하고 테스트할 수 있다. Playwright는 여러 브라우저 엔진을 지원하며 헤드리스 모드에서의 상호작용과 비헤이비어 주입이 가능하여 재현 가능한 데모 녹화에 적합하다.
- shot-scraper
- — shot-scraper는 웹 페이지의 스크린샷과 화면 녹화를 자동화하는 커맨드라인 도구로, storyboard.yml 같은 설정 파일로 일련의 브라우저 동작을 정의하여 Playwright를 통해 실행하고 결과를 이미지나 비디오로 저장한다. 자동화된 데모 생성과 회귀 확인용으로 사용된다.
- storyboard.yml(Storyboard YAML)
- — storyboard.yml은 shot-scraper가 실행할 루틴을 선언하는 YAML 형식의 시나리오 파일로, 서버 명령, 방문할 URL, 뷰포트, 대기 셀렉터, 페이지에 주입할 JavaScript와 장면별 액션 목록을 포함하여 자동화 실행의 입력으로 쓰인다.
- navigator.clipboard API(navigator.clipboard)
- — navigator.clipboard는 브라우저에서 클립보드에 접근하는 Web API로, writeText와 readText 메서드를 통해 텍스트를 쓰고 읽을 수 있다. 게시글에서는 이 API를 페이지 내에서 재정의하여 시스템 클립보드에 의존하지 않고 데모에 필요한 텍스트를 주입하고 재현 가능성을 확보했다.
기술
- Playwright
- shot-scraper
- Datasette
활용 사례
- 웹 애플리케이션의 기능을 자동으로 녹화해 데모 비디오를 생성하는 워크플로
- 코딩 에이전트가 수행한 작업의 실행 결과를 증명용 비디오로 기록하는 시나리오
언급된 리소스
AI 요약 · 북마크 · 개인 피드 설정 — 무료
출처 · 인용 안내
인용 시 "요약 출처: AI Trends (aitrends.kr)"를 표기하고, 사실 확인은 원문 보기 기준으로 진행해 주세요. 자세한 기준은 운영 정책을 참고해 주세요.
