Skip to content

Overview

ScreenCI makes product videos for the whole SaaS team. Anyone, not just the person with the screen recorder, describes the video they want in one sentence, pastes one prompt into a coding agent (Claude Code, Cursor, Codex, or any other), and gets back a narrated, auto-zoomed walkthrough of the real app. Marketing and support then edit narration, voices, and languages in the browser. Engineers keep the videos in the repository, where each one is a Playwright E2E test that CI re-records on every release, so a video never goes stale and a broken flow fails the run before customers see it.

How it works

Record on your machine (or in CI), refine in the browser, export in the service, and deliver from a stable URL.

01

Capture

The ScreenCI CLI runs on your machine or in CI, capturing the product flow and uploading the raw recording plus timing data.

02

Render

ScreenCI renders that raw recording in the cloud, syncing narration, zooms, and animations to the timing data.

Only the raw recording, its timing data, and the screenci/ folder's scripts leave your machine. Never your app's source code, browser session, or credentials.

03

Deliver

Download the finished video and subtitles yourself, or publish them to a CDN-backed static URL that always serves the latest approved version.

  • Record. A prompt from the web app has the agent run screenci preview on its machine: it drives your app with Playwright, captures the flow, uploads the live preview, and the browser tab that made the prompt opens the video.
  • Refine. In the web editor anyone on the team changes narration, voices, overlays, cuts, timings, languages, and render options. Every change applies to the preview and to later exports right away.
  • Export and deliver. When the preview looks right, click Export (or run screenci export) to render the finished videos, then serve them from a public URL that always points at the version you selected. CI records free previews on every push by default, and can switch to export to publish on each release (see Repository and CI).

Three ways in

All three hand the work to a coding agent. Pick the one that matches where you are standing.

  • From the web app, for everyone. Click Add project or Add video, type one sentence, paste the prompt into your agent, and the tab opens the video when the recording lands. No repository, no setup on your side.
  • In a repository, for engineers. Paste the integration prompt into the agent inside the product’s repository. It scaffolds ScreenCI, authors a video for the flow you describe, and records it. Videos made from the web app get there too, see Repository and CI.
  • By hand. Write the .screenci.ts scripts yourself with the Playwright APIs you already know.

The agent learns what it needs to know about your product as it goes: the site URL from the first prompt or recording, whether the site needs a sign-in from the first signed-in recording, and your notes from under the project’s name on its page (see AI context). Set the look and voice new videos start from under Branding.

Videos as E2E tests

Under the hood every video is a .screenci.ts file driven by Playwright, so you never depend on the agent to reproduce a recording. Once the scripts are in your repository, each video is an E2E test your own CI reruns on every release: when the flow breaks, the run fails; when the UI changes, the video re-renders. Repository and CI is the plain-language walkthrough; Video Script Basics and CI Setup are the reference.

What leaves your machine

The CLI runs everything that touches your app locally, so what leaves the machine is the raw screen recording plus its timing data, never your app’s source code. Recordings also upload the text files of the screenci/ folder (the config and the video scripts, never .env, lockfiles, or media) so the web app can show them and hand them to the next agent; set uploadSources: false to keep them local. Signing in to your product happens in a browser you drive yourself, and ScreenCI never receives what you type (Signing In). The full list is under Configuration, and the CLI is open source.

Community

Need support, hit a bug, or want to share what you recorded? Join the ScreenCI community on Discord to get help, report issues, and talk to other users.