A screen recorder that edits while it records. It cuts the take into clips at speech pauses and renders the video from one plain file that describes the edit.
Recording took minutes. Cutting took the afternoon.
Editing took the timeA five minute screencast meant an hour of removing pauses and failed takes by hand, before any real editing started.
The pauses already mark the cutsI stop talking when a take ends. Those pauses mark where the clips are, so the recorder can cut while I record.
An edit an agent can readThe whole edit is one plain file. An agent can inspect it, change it and look at a frame of the result, and I can undo any step.
What it does.
Record once, get clips
Record through OBS and ciak splits the take at every speech pause, then adds the transcript. A failed take is one click to reject and one to bring back.
A framing for each clip
Camera in a corner, full face, screen only, or stacked for a vertical Short. Add zooms and captions per clip. The preview shows the exact cut without rendering first.
AI edits you accept
The agent cleans the transcript, finds failed takes and suggests trims. Each proposal shows what it removes and the seconds it saves. Nothing applies until you accept it.
Also in thereRetake or insert a take anywhereRemotion overlaysVoiceover blocksExtract a ShortMCP for agents
One recording, one manifest.
OBS records a single file with the screen on top and the camera below. Everything after that is a change to a small JSON manifest, and ciak renders the final video from it.
Detect
Silence detection runs on the file while it is still being written, so clips appear as you record. On stop, whisper.cpp adds word timestamps, on your machine.
Edit
Rejecting a clip, trimming, a layout or a zoom are all entries in the manifest. The preview draws from the same manifest the renderer uses, and every accepted edit leaves a checkpoint.
Render
ffmpeg builds the master from the manifest and Remotion adds the overlays. It makes the smaller web versions from the master.
Architecture
ciak
Who uses ciak and which tools it drives. No technology yet.
Pick a flow, then step through it.
juridev
Explorer
apps
ciakserver and editor
ciak-clicommand line
ciak-overlaysRemotion overlays
packages
ciak-coreOBS, detection
ciak-ffmpeg-renderlayout and render
shared
local-transcriptionwhisper.cpp
video-manifestsession.json schema
Project graph
Arrows are the imports between projects, read from the Nx project graph.
The same system at five levels, after the C4 model. Solid boxes are parts of ciak, dashed ones are outside it.