Przejdź do treści
Biblioteka skilli
Programowanie · Konwersja i formaty

browser-recording

/browser-recording

Nagrywa sesje przeglądarki przez Playwright i konwertuje wideo na GIF, na potrzeby samouczków i dem interfejsu webowego.

Licencja
MIT
Ostatnia zmiana repozytorium
01.10.2026

Ocena i bezpieczeństwo

100/ 100Klasa: dobry
Format25 / 25
Frontmatter z nazwą i opisem, poprawna nazwa, opis do 1024 znaków, nazwa zgodna z folderem.
Odkrywalność25 / 25
Opis mówi, kiedy użyć skilla, ma sensowną długość i jest w 3. osobie.
Treść35 / 35
Co najmniej 150 słów i do 500 linii, nagłówki, listy kroków, przykłady albo kod.
Higiena15 / 15
Bez zaślepek typu TODO, bez ścieżek Windows, z licencją.
Ryzykobrak sygnałów w skanie
Pliki w paczce
3
Skrypty
0
Komentarze HTML
0
Adresy URL w SKILL.md
1
Przestarzałość

Brak sygnałów. Repozytorium zmienione 01.10.2026, bez odwołań do wycofanych modeli i API.

Licencja

MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.

Co robi i kiedy

Nagrywa sesje przeglądarki przez Playwright i konwertuje wideo na GIF, na potrzeby samouczków i dem interfejsu webowego.

Oryginalny opis (EN)

Records browser sessions via Playwright and converts video to GIF. Use when creating web UI tutorials or demos showing browser interactions.

Jak działa

  1. When To Use
  2. When NOT To Use
  3. Overview
  4. Required TodoWrite Items
  5. Process
  6. Example Playwright Spec
  7. Playwright Configuration
  8. Exit Criteria
  9. Error Handling
  10. Output Locations
Sekcje z nagłówków SKILL.md, w oryginale · 173 linii, 696 słów
Podgląd SKILL.md
---
name: browser-recording
description: Records browser sessions via Playwright and converts video to GIF. Use when creating web UI tutorials or demos showing browser interactions.
alwaysApply: false
category: media-generation
tags:
- playwright
- browser
- recording
- video
- web
- tutorial
tools: []
complexity: medium
model_hint: standard
estimated_tokens: 500
progressive_loading: true
modules:
- modules/spec-execution.md
- modules/video-capture.md
dependencies:
- scry:gif-generation
---

# Browser Recording Skill

Record browser sessions using Playwright to create video captures of web UI interactions for tutorials and documentation.


## When To Use

- Recording browser sessions with Playwright
- Creating web application demo recordings

## When NOT To Use

- Terminal-only workflows - use scry:vhs-recording instead
- Static screenshots - use standard screenshot tools

## Overview

This skill uses Playwright's built-in video recording to capture browser interactions. The workflow:

1. Validate Playwright installation
2. Execute a Playwright spec with video recording enabled
3. Retrieve the recorded video (WebM format)
4. Convert to GIF using the gif-generation skill

> **💡 Note**: Claude Code 2.0.72+ includes native Chrome integration for interactive browser control. This skill (Playwright) is designed for **automated recording workflows, CI/CD, and cross-browser support**. For interactive debugging and live testing, consider using native Chrome integration. Both approaches complement each other - develop interactively with Chrome, then automate with Playwright specs.

## Required TodoWrite Items

When invoking this skill, create todos for:

```
- [ ] Validate Playwright is installed and configured
- [ ] Check spec file exists at specified path
- [ ] Execute Playwright spec with video recording
- [ ] Locate and verify video output
- [ ] Convert video to GIF using gif-generation skill
```
**Verification:** Run the command with `--help` flag to verify availability.

## Process

### Step 1: Validate Playwright Installation

Check that Playwright is available:

```bash
npx playwright --version
```
**Verification:** Run the command with `--help` flag to verify availability.

If not installed, the user should run:
```bash
npm install -D @playwright/test
npx playwright install chromium
```
**Verification:** Run `pytest -v` to verify tests pass.

### Step 2: Check Spec File

Verify the Playwright spec file exists. Spec files should:
- Be located in a `specs/` or `tests/` directory
- Have `.spec.ts` or `.spec.js` extension
- Include video configuration (see spec-execution module)

### Step 3: Execute Recording

Run the spec with video enabled:

```bash
npx playwright test <spec-file> --config=playwright.config.ts
```
**Verification:** Run `pytest -v` to verify tests pass.

The config must enable video recording. See the spec-execution module for configuration details.

### Step 4: Convert to GIF

After recording completes, use the gif-generation skill to convert the WebM video to an optimized GIF:

```
**Verification:** Run the command with `--help` flag to verify availability.
Invoke scry:gif-generation with:
- input: <path-to-webm>
- output: <desired-gif-path>
- fps: 10 (recommended for tutorials)
- width: 800 (adjust based on content)
```
**Verification:** Run the command with `--help` flag to verify availability.

## Example Playwright Spec

```typescript
import { test, expect } from '@playwright/test';

test('demo workflow', async ({ page }) => {
  // Navigate to the application
  await page.goto('http://localhost:3000');

  // Wait for page to be ready
  await page.waitForLoadState('networkidle');

  // Perform demo actions
  await page.click('button[data-testid="start"]');
  await page.waitForTimeout(500); // Allow animation to complete

  await page.fill('input[name="query"]', 'example search');
  await page.waitForTimeout(300);

  await page.click('button[type="submit"]');
  await page.waitForSelector('.results');

  // Final pause to show results
  await page.waitForTimeout(1000);
});
```
**Verification:** Run `pytest -v` to verify tests pass.

## Playwright Configuration

Create or update `playwright.config.ts`:

```typescript
import { defineConfig } from '@playwright/test';

export default defineConfig({
  use: {
    video: {
      mode: 'on',
      size: { width: 1280, height: 720 }
    },
    viewport: { width: 1280, height: 720 },
    launchOptions: {
      slowMo: 100 // Slow down actions for visibility
    }
  },
  outputDir: './test-results',
});
```
**Verification:** Run `pytest -v` to verify tests pass.

## Exit Criteria

- Playwright spec executed successfully (exit code 0)
- Video file exists in output directory
- Video has non-zero file size
- GIF conversion completed (if requested)

## Error Handling

| Error | Resolution |
|-------|------------|
| Playwright not installed | Run `npm install -D @playwright/test` |
| Browser not installed | Run `npx playwright install chromium` |
| Spec file not found | Verify path and file extension |
| Video not created | Check Playwright config has video enabled |
| Empty video file | validate spec actions complete before test ends |

## Output Locations

Default output paths:
- Videos: `./test-results/<test-name>/video.webm`
- Screenshots: `./test-results/<test-name>/screenshot.png`

## Module Reference

- See `modules/spec-execution.md` for detailed Playwright execution options
- See `modules/video-capture.md` for video format and quality settings

## See Also

- scry:gif-generation: Convert video to optimized GIF
Pliki w paczce (3)
  • SKILL.md 5 KB
  • modules/spec-execution.md 4 KB
  • modules/video-capture.md 4 KB

Wersje

RepozytoriumWynikLicencja
Ta strona · athola/claude-night-market100MIT
kirodotdev/kirocrew100Apache-2.0

Migawka bazy z 28.10.2026 · wersja paczki 1892bfe5afba (skrót SHA-256 całej paczki)

Pobrania w ostatnich 30 dniach: 0 · ranking

Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.

Podobne skille

  • 100playwright-recording
    Nagrywa interakcje w przeglądarce jako wideo przez Playwright, na potrzeby filmów demo, przejść po aplikacji i przepływów UI do filmów Remotion.
  • 100record-browser-gif
    Nagrywa demonstracje działania przeglądarki lub interfejsu webowego jako zoptymalizowane GIF-y z deterministycznym kodowaniem i publikuje je w gałęzi assets, by dołączyć do pull requesta.
  • 100record-browser-gif
    Nagrywa demonstracje interakcji w przeglądarce jako zoptymalizowane GIF-y i dołącza je do pull requestu przez gh, a w razie potrzeby przez osobną gałąź z zasobami.
  • 100record-gif
    Nagrywa animowane GIF-y z animacji stron internetowych przy użyciu zrzutów Playwright i ffmpeg, na potrzeby demonstracji i podglądów funkcji.
  • 100record-e2e-gif
    Nagrywa testy e2e w Playwright jako osobny GIF dla każdego przypadku testowego i zwraca tabelę markdown do opisu pull requestu.
  • 100pr-demo
    Tworzy animowane dema w formie GIF do pull requestów i dokumentacji: nagrywa terminal w asciinema i konwertuje do GIF lub SVG pod osadzenie na GitHubie.

Uwagi i zgłoszenia

Wiadomość trafi do Bartosza Sokolińskiego. Adres e-mail jest potrzebny tylko do odpowiedzi. Szczegóły w polityce prywatności.