Skip to content
Gapreel

Screen recorder for AI agents  /  macOS

Keep the actions.
Log the waits.

Gapreel records what your agent does on screen and skips the idle time. Each wait is logged with its reason, key moments become marks, and the whole run can be read back, shared, or kept as evidence.

Coming soon See pricing

30-day free trial of everything  /  macOS 14 or later  /  No sign-in needed

Screen frames kept during actions Gap: a logged wait and its reason Mark: a checkpoint worth finding later

How Gapreel cuts idle time

Only the action gets recorded.

An agent run is mostly waiting. Gapreel saves each action as video, logs every wait on the timeline with its reason, and pins key moments as marks. The full run keeps its total time, while the short export plays only the action.

  1. 01Open signup page0.0 to 1.8 s
  2. GapWaiting for page to finish loading2.5 s logged
  3. 02Fill in email and password4.3 to 6.9 s
  4. 03Submit the form6.9 to 7.6 s
  5. MarkAccount created confirmation shownat 7.6 s

Full run 7.6 s  /  Actions only 5.1 s

Action

The agent marks each step with rec_action_begin and rec_action_end. Gapreel also catches steps through framework hooks, or screen changes as a last resort, and keeps about 3 seconds before each step.

Gap

Any time outside an action, saved with its reason, such as waiting between steps or a pause the agent names with rec_pause. Nothing is dropped silently: one export cuts the waits, another keeps them.

Mark

A mark saves an important moment, such as “upload confirmed” or “2FA code accepted”. Your agent adds one with rec_mark. Marks help you check what happened and can become chapters in a demo.

Agent control

Your agent controls the recording.

Your agent controls Gapreel through MCP tools or the TypeScript and Python SDKs. It starts the recording, marks each step and the moments that matter, then exports the result.

One recording, step by step

action
Idle between actions
Pause reason
action
  1. rec_startOpens the recording.
  2. rec_action_beginStarts a step. Video is kept from here.
  3. rec_action_endEnds the step.
  4. rec_markSaves a checkpoint.
  5. rec_pausePauses and logs the agent's reason.
  6. rec_resumeEnds the pause.
  7. rec_action_beginStarts the next step.
  8. rec_action_endEnds it.
  9. rec_stopEnds the recording.
  10. rec_exportExports an action-only or full-length video.
  11. rec_contextReads the run back as data the agent can reuse.

Works with

  • 01Claude CodeMCP
  • 02CursorMCP
  • 03browser-useSDK
  • 04PlaywrightSDK
  • 05StagehandSDK
  • 06Desktop computer-use agentsMCP or SDK

Three ways to record

  • Agent browserA browser your agent framework launchesFramework
  • Your browserYour logged-in Chrome or Edge, through the Gapreel extensionExtension
  • Mac screenYour Mac screen, a window, or a region, for desktop agentsNative

What your agent can read

Agents read the run back.

rec_context hands the run back as data instead of raw video, so an agent can check what it did without watching the whole recording.

Contact sheettl_demo_0001  /  timestamped
Screenshots before and after each action in the run above

What the agent gets

  1. 1Ordered actionsnames and times
  2. 2Before and after screenshotsper action
  3. 3Click pointsper action
  4. 4Text read from the screenon-device
  5. 5Markswith importance levels
  6. 6The gap listwith reasons
  7. 7Console and network errorsper action
  8. 8One contact-sheet image, with timestampsPNG

Tamper-evident audit

A hash chain you can check.

Every timeline line carries the hash of the one before it. Edit, reorder, or delete one and the chain breaks from that point on, unless the whole chain is rewritten. Each bundle records one root hash over the chain, the marks and every export. Bundles are not signed yet; signing is coming.

timeline.jsonl  /  try it
    Checking the chainchecked live in this page

    Masking, before anything leaves the Mac

    • AlwaysSecrets: private keys, JWTs, AWS keys, API and bearer tokens
    • DefaultEmails and IP addresses, while “mask fields by default” is on
    • YoursYour own masking and exclusion rules

    Labels, OCR text, diagnostics, and transcripts are masked, and URL query values are always removed. The bundle records how much each rule masked, never the values.

    ShareFull length, default

    A watchable recording to send to someone. Secrets and personal data on screen are blurred.

    DemoShare plus polish

    Smooth zoom toward each click, chapters from marks, a label on each action, and optional captions.

    EvidenceAction-only, default

    The original pixels, unzoomed and unblurred, kept for audit. Originals are encrypted when offloaded.

    Screenshots and clipboard

    For your own screen, too.

    Gapreel also takes screenshots and keeps a history of what you copy, so your everyday captures are in one app.

    01Screenshot editor
    02Pin screenshots
    03Scrolling capture
    04Copy text from images
    05Clipboard history

    Storage and import

    Local first. Your own cloud storage if you want it.

    Recordings stay on your Mac by default. Cloud storage is optional, and existing full-length recordings from cloud browsers can be imported and cut down to the action the same way.

    Where recordings live

    • MacOn this MacDefault
    • S3Your own S3, R2 or B2 bucketOptional
    • SyncA synced folderOptional

    Import existing recordings

    • 01Import any MP4, MOV or WebM recording

    Pricing

    Try everything for 30 days. Buy it once.

    After the trial

    Free

    Keeps recording, with a 5-minute cap per recording. Pro features lock:

    • Agent MCP and hooks
    • OCR
    • Scrolling capture
    • Action-only export
    • Long recordings
    • Screenshot editor
    • Advanced masking

    One time

    Gapreel Lifetime

    $29at launchregular price $39, one time

    One payment, no subscription.

    • Lifetime updates
    • One person, on up to three Macs
    Coming soon