← All modules
tools

Video Generator

Live

Automated browser video recording driven by natural-language prompts.

event.type === "video" modules/video
Overview

What Video Generator does

Video Generator turns a natural-language prompt into a recorded browser session. The recorder uses Playwright to drive a headed Chromium, takes step-by-step screenshots, and stitches them into an MP4 or WebM you can drop into a release note or a bug report. The Claude Haiku translator handles prompt → workflow conversion; the executor handles workflow → video.

Per-step progress streams over Server-Sent Events to the dashboard, so a video render is observable in real time. Headless mode and output format (MP4/WebM) are toggleable. The module emits a `video` event on render-complete carrying the artifact URL, duration, and the resolved workflow.

Wire payload

Same shape, three syntaxes

The wire protocol is plain HTTP, plain JSON, HMAC-SHA256. The TypeScript tab uses the SDK; the cURL tab is the raw HTTP equivalent; the Python tab shows the preview SDK shape.

import { createCuittyClient } from "@cuitty/sdk";

const cuitty = createCuittyClient({
  portalUrl: "https://app.cuitty.com",
  projectId: process.env.CUITTY_PROJECT_ID!,
  apiKey: process.env.CUITTY_API_KEY!,
});
cuitty.start();

await cuitty.emit({
  type: "video",
  timestamp: new Date().toISOString(),
  data: {
    prompt: "Sign up, click Settings, toggle dark mode",
    targetUrl: "https://app.cuitty.com",
    durationMs: 18_400,
    artifactUrl: "https://cdn.cuitty.com/videos/abc123.mp4",
    format: "mp4",
    headless: false,
  },
});

Related modules