Retakes and checkpoints
End every scene with a checkpoint, and a mistake or a UI change costs you one scene instead of the whole demo. Here is how checkpoints, retakes and attempts work, by hand and over MCP.
A long demo usually fails near the end: a typo in scene 6, a toast that covers the result, a button that moved in last week's release. In most recorders that means starting over. In DemoTake you retake scene 6, and scenes 1 to 5 keep their footage and their edits.
- A typo in the last minute means starting over
- Every edit has to be redone
- Each attempt risks a new mistake earlier on
- Record scene 6 again, nothing else
- Other scenes keep footage and edits
- Earlier attempts stay available
Checkpoints
A checkpoint ends the running scene at a stable state: the dashboard after signing in, the new project in the list. It is also the point a later scene can be retried from, because it records what the app looked like when the scene ended.
Create one with Checkpoint in the control bar, Take › Create Checkpoint (⌘D), or Checkpoint Scene in the menu bar icon. DemoTake then:
- ends the scene's recording at that moment;
- saves a snapshot of the stable state (detected secrets are blurred), which appears as the scene's thumbnail in the scene strip;
- starts the next pending scene, so you can keep going without touching DemoTake.
When there is no pending scene after it, DemoTake waits between scenes with the preview still live: "Between scenes. Pick a scene below the stage, or stop the take." Press Stop (⌘.) to save the take.
- 1Sign in✓ Dashboard visibleRecorded
- 2Add to cart✓ Cart shows 2 itemsRecorded
- 3Pay with test card● 0:05
- 4Order confirmationPending
Retake one scene
Retaking replaces what one scene shows in the cut. Everything else stays where it is.
In the editor, select the scene and click Re-record in the inspector (or choose Re-record Scene from its menu). DemoTake opens the take's recording screen.
Put the app back where the scene starts. The checkpoint of the scene before it describes that state and shows a snapshot. Signed out? Sign back in. Created a project? Delete it first.
While recording runs, right-click the scene in the scene strip and choose Re-record This Scene, or select it between scenes and click Record “Pay with test card”. Finish with a checkpoint as usual.
If restoring the state takes a moment, press Pause (⌘P). Paused time is not recorded.
Attempts
Every recording of a scene is kept as an attempt. The newest attempt is used in the cut; older ones stay in the take as history. When you select a scene in the editor, the inspector shows its length and number of attempts next to Recorded.
Liked the first one better? Right-click the scene in the scene strip and choose Use Attempt › Attempt 1. The same menu has Rename…, Exclude from Cut (leave the scene out without deleting it) and Delete Scene.
What a retake keeps
| Kept | Replaced |
|---|---|
| Other scenes' footage, events and edits | The retaken scene's footage and events in the cut |
| Earlier attempts of the retaken scene, as history | |
| The take's goal, scenes, outputs and project rules | |
| Exports you already rendered (render again to include the retake) |
Times inside a scene are measured from the start of that scene, so a retake that runs longer or shorter never shifts anything in the scenes around it.
Pending scenes
Scenes you haven't recorded yet are pending. Stopping a take keeps them pending, so you can record half a demo today and the rest tomorrow. When a take has both recorded and pending scenes, the record button reads Record Next Scene. Add a scene at any time with the + at the end of the scene strip.
Retakes over MCP
Agents do the same with three tools. take_checkpoint ends the running scene and describes the stable state. take_retry_scene marks a scene failed and prepares a fresh attempt; only that scene is re-recorded. Then the agent restores the starting state and calls take_start_scene again.
{ "tool": "take_checkpoint", "arguments": { "take_id": "take_…", "description": "Cart shows 2 items" } }
{ "tool": "take_retry_scene", "arguments": { "take_id": "take_…", "scene": "Pay with test card", "reason": "Typo in the card number" } }
{ "tool": "take_start_scene", "arguments": { "take_id": "take_…", "scene": "Pay with test card" } }A scene can be named by its id, its exact title or its number ("3"). If fixing the app state takes a while, capture_pause keeps it off the recording.
In a demo spec, each scene can have setup steps that run off camera. DemoTake runs them before every attempt, so a retry starts from the right state without anyone stepping in.
Next
- Choosing a window
- Footage review to shorten long scenes instead of retaking them
- Demo specs and CI to re-record only the scenes whose UI changed