Communitygithub.com

Bildschirmaufnahmen & Demos

Erstelle saubere Produkt- und Web-App-Demos – skriptgesteuerte Browser-Aufnahmen mit Playwright, Cursor- und Zoom-Optimierung, Geschwindigkeitsanpassungen, Kürzung von Leerlaufzeiten und Synchronisation mit Erzählungen. Verwende dies, wenn du eine Vorführung, Anleitung, UI-Demo oder ein Veröffentlichungsvideo einer Web-App oder eine wiederholbare Aufnahme benötigst.

Was ist Bildschirmaufnahmen & Demos?

Diese Fähigkeit ermöglicht es, vollständig automatisierte und wiederholbare Bildschirmaufnahmen für Produktdemos, Tutorials und UI-Vorführungen zu erstellen. Der Hauptfokus liegt auf der Nutzung von Playwright (Python), um Browser-Demos zu scripten, wobei Werkzeuge wie Cursor-Effekte, Zoom, Timing und Post-Produktion mit ffmpeg optimiert werden. Die Dokumentation betont die Erstellung deterministischer, glatter Aufnahmen mit realistischen Demo-Daten, sorgfältigem Tempo und versteckten sensiblen Informationen. Nach der Aufnahme hilft die Anleitung bei der Nachbearbeitung, wie dem Schneiden von Leerlaufzeiten, der Geschwindigkeitsanpassung und dem Hinzufügen von Zoom-Effekten, sodass jedes Video mit einer Erzählung oder einem Drehbuch synchronisiert werden kann. Die Fähigkeit ist für Entwickler und technische Redakteure gedacht, die mit AI-Agenten wie Claude Code, Cursor oder Codex arbeiten, und bietet eine robuste, scriptbasierte Alternative zu manuellen Aufnahmen, die sich bei UI-Änderungen leicht aktualisieren lässt.

Funktioniert mit~Claude Code~Codex CLI✓Cursor
npx skills add https://github.com/iamaanahmad/agents-video-editing-skills/tree/HEAD/skills/screen-recording-demos

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Was macht Bildschirmaufnahmen & Demos?

Eine skriptgesteuerte Aufnahme ist wiederholbar. Wenn sich die UI ändert, führst du das Skript erneut aus, anstatt von Hand neu aufzunehmen.

Auswahl der Methode

SituationMethode
Web-App, die im Browser geöffnet werden kannPlaywright-scripted Recording
Desktop-App oder Vollbild-WorkflowBetriebssystem-Recorder (OBS Studio, Windows Game Bar, macOS Screenshot)
App-Quellcode verfügbar und ein poliertes, ruckelfreies Ergebnis gewünschtBildschirme als statische Komponenten in Remotion neu erstellen (siehe remotion-programmatic-video)
CLITerminal-Recorder (asciinema, VHS) oder eine animierte Terminal-Komponente

Playwright-Aufnahme (Python)

pip install playwright && playwright install chromium
from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch()
    ctx = browser.new_context(
        viewport={"width": 1920, "height": 1080},
        record_video_dir="recordings/",
        record_video_size={"width": 1920, "height": 1080},
    )
    page = ctx.new_page()
    page.goto("https://example.com")
    page.wait_for_load_state("networkidle")
    page.wait_for_timeout(800)                       # Viewer lesen lassen
    page.get_by_role("button", name="Sign in").click()
    page.get_by_label("Email").type("[email protected]", delay=60)   # sichtbares Tippen
    page.wait_for_timeout(1200)
    ctx.close()                                      # Video wird beim Schließen finalisiert
    browser.close()

Ausgabe ist WebM. Konvertieren:

ffmpeg -i recordings/xyz.webm -c:v libx264 -crf 18 -pix_fmt yuv420p -r 30 out/demo.mp4

Aufwerten des Aussehens

  • Demo-Daten: Verwende einen vorab eingerichteten Demo-Account mit realistischen, nicht sensiblen Daten. Niemals echte Kundendaten, Token oder E-Mails aufnehmen.
  • Fenster: Feste 1920x1080 Viewport, Lesezeichenleisten und Benachrichtigungen ausblenden, leichter Zoom (110 bis 125 Prozent), damit Text auf dem Smartphone lesbar ist.
  • Tempo: Nach jeder Aktion 0,5 bis 1 Sekunde pausieren. Tippen mit Verzögerung. Keine sofortigen Sprünge.
  • Cursor: Playwright zeichnet keinen Cursor. Einen kleinen DOM-Cursor einfügen oder nachträglich (Remotion oder ein Overlay) hinzufügen.
  • Determinismus: Auf expect(locator).to_be_visible() warten anstatt auf feste Wartezeiten, dann bewusste Pausen für Zuschauer einfügen.
  • Geheimnisse: Felder im Seiten-Skript vor der Aufnahme unscharf stellen oder maskieren (page.add_style_tag).

Post-Produktion

# Leerlaufzeit schneiden: 12 s bis 41 s behalten
ffmpeg -ss 12 -i demo.mp4 -t 29 -c:v libx264 -crf 18 out/trimmed.mp4

# Langweilige Wartezeiten beschleunigen (z. B. 4x von 20 s bis 30 s) erfordert einen Split; am einfachsten: schneiden, beschleunigen, wieder zusammenfügen
# In einen Bereich zoomen: zuschneiden und skalieren (x:y:w:h in Quell-Pixeln)
ffmpeg -i demo.mp4 -vf "crop=960:540:480:270,scale=1920:1080" out/zoom.mp4

Für flüssige, animierte Zoom-/Pan-Bewegungen, die dem Cursor folgen, Remotion verwenden (interpolate auf scale und translate).

Synchronisation mit Erzählung

  1. Zuerst das Drehbuch schreiben (video-planning), Sprachaufnahme erstellen (voiceover-tts).
  2. Bildschirm aufnehmen und dann die Geschwindigkeit pro Szene anpassen, sodass jede Aktion auf ihren Satz fällt. Berechne speed = recorded_seconds / narration_seconds.
  3. Die ffmpeg-essentials Geschwindigkeitsrezepte verwenden oder die Zeitlinie innerhalb der Komposition anpassen.

Checkliste

  • Keine persönlichen Daten, API-Schlüssel oder internen URLs sichtbar.
  • Text bei 1080p skaliert auf einen Smartphone-Bildschirm lesbar.
  • Keine Lade-Spinner länger als 1 Sekunde übrig.
  • Audio vom Rechner stummgeschaltet, sofern nicht gewünscht.

Individual skills in this repo

This repo contains 6 individual skills — each has its own dedicated page.

iamaanahmad/captions-subtitles

Create, edit, translate and burn in captions and subtitles - transcribe speech with Whisper, write SRT/VTT/ASS files, style them, and hard-burn word-highlight captions for Shorts, Reels and TikTok. Use for any captioning, subtitle, transcript or accessibility request.

iamaanahmad/ffmpeg-essentials

Core FFmpeg and ffprobe recipes for trimming, joining, converting, resizing, compressing, speed changes, fades, audio extraction and GIF conversion. Use for any direct media transformation task, or when a video will not play, has odd dimensions, or is out of sync.

iamaanahmad/motion-design-craft

Motion design rules for programmatic and edited video - durations, easing, springs, staggering, read time for on-screen text, beat grids, transitions and visual hierarchy, plus the defaults that make a video look AI-generated. Use when animating scenes, choosing timings, or reviewing a video that feels off.

iamaanahmad/moviepy-python-video

Compose and edit video in pure Python with moviepy 2.x - overlay text, lower thirds and captions on footage, cut and join clips, add audio, build short single-file build.py videos without Node. Use when the user wants Python-based video editing or deterministic text over AI-generated video.

iamaanahmad/remotion-programmatic-video

Build videos as React code with Remotion - compositions, sequences, springs, interpolation, audio sync, data-driven props, studio preview and rendering to MP4. Use for explainers, product demos, release notes, data charts, branded templates, or any video that should be reproducible from code.

iamaanahmad/voiceover-tts

Generate and time narration with text-to-speech (ElevenLabs, OpenAI TTS, Kokoro, Piper) or prepare a recorded voice - script prep, per-scene audio files, pacing, pronunciation, cleanup and loudness. Use when the user needs a voiceover, narration, dubbing, or voice cloning guidance.

Verwandte Skills