Roadmap

What we have shipped, in the order we shipped it.

  1. 0.28.0

    Jun 17, 2026

    Highlights

    • Verbatim live transcription with ElevenLabs Scribe. Add your key in Settings ▸ AI and pick Scribe V2 as the live engine: each time you pause (and on stop) it transcribes what you just said and stitches it together, so the transcript you see on pause is the final one — no separate re-run afterward. It keeps the way you actually talked (fumbles, half-takes, exact proper nouns) instead of cleaning them away, which is what the retake and cut tools need. Stored only in your macOS Keychain (this device), never written to disk or a project file.
    • Zooms never jump at a cut anymore. If a clip ends mid-zoom, the zoom carries its exact size and position into the next clip and holds — a punch can't snap back to wide across an edit. When there's room and it makes sense it eases back out; when there isn't, it holds rather than doing a too-fast snap. This is now first class in the cli as a warning.
    • Zoom moves now earn their speed from the moment. Instead of one fixed duration, each push-in, pan, and pull-out runs as fast or as slow as the script and the on-screen action justify (a 1.0s floor so nothing feels punchy, up to ~4s for a long, deliberate move), and they aim at the actual element on screen rather than the average of your clicks.

    Improvements

    • Zoom edges reach cleanly now: a zoom toward the frame edge travels all the way to its mark and the easing lands it, with no rubber-band or "wall" feel at the end of the move.
    • Edits are gated on zoom continuity: validation now blocks (not just warns about) any zoom that jumps across a cut, so a broken-feeling zoom can't slip into a render. Intentional resets are still allowed.

    Interface

    • A cleaner, more unified look across the whole app. Studio, Recordings, Timelines, and Settings now share thin integrated tabs and a full-bleed layout with a hairline gutter, so the window feels like one surface instead of stacked boxes.
    • Render now lives in the title bar. The button sits in the top corner of the native window instead of floating inside a panel, so it is always in the same place.
    • Every panel — including the preview area and the History and Effects lists — now shares the same dark surface, with squared-off corners and scrollbars and a single consistent set of toolbar icons. The colored accent bar on the active sidebar item is gone for a calmer, more neutral frame.

    Cleanup

    • Removed the broken get-pending-jobs command, the obsolete context-cut-agent-kit npm scaffold (replaced by install-skill), and stale onboarding docs (the old npx context-cut-agent init flow, .context-cut/ paths, and a validate-zoom-plan command that never shipped).
  2. 0.26.0

    Jun 15, 2026

    Highlights

    • Zooms move the way they should now
    • Zoom edge rails are gentler
    • Recordings can now capture much richer on-screen context now
  3. 0.25.4

    Jun 12, 2026

    Improvements

    • Word endings keep their natural breath room: plosive releases (the k in "joke") and trailing decays now ride down to the noise floor instead of being sliced at the drop-off, with speech-aware guards so retake splices never absorb removed takes.
    • Keypress completion now bridges the key-down and key-up clicks ("...and hit enter" keeps the full press), and only sounds that land immediately after the phrase qualify — a retake's first word can no longer masquerade as an action sound.
    • The edit-example replay loop is live: scripts/replay-edit-example.sh re-cuts a graded bundle with the current cutter and diffs every join against the human-approved final (cc-edit-eval gained --plan for live candidates). Current score vs the reference edit: 31/31 joins, 41ms mean delta.
    • The mascot freezes when the app goes inactive, so a backgrounded app stops spending energy animating him.
  4. 0.25.3

    Jun 12, 2026

    Improvements

    • The mascot's entrances and exits are properly animated: a small hop in with a rigged landing (knees compress, arms swing down, rebound, settle, blink) and a real jump out (crouch anticipation, spring, gravity drop). Switching timelines plays the full hand-off — the current one leaps away, the next drops in.
    • Eye expression changes pass through a quick blink instead of snapping between states.
    • His marathon coffee mug is now actually in his hand — handle in his grip, riding his arm — instead of floating beside him.
    • The status caption tucks up next to him.

    Fixes

    • Rapid timeline switches no longer make the entrance and exit animations fight each other or leave an empty perch.
  5. 0.25.2

    Jun 12, 2026

    Fixes

    • The mascot's status words now live in their own fixed strip: they type in after he lands and backspace out before he leaves, never move him, and never resize anything. He sits centered with the caption starting at the far left.
    • His entrance is a proper rigged fall — arms up the whole way down (including when woken from a nap).
    • Opening or leaving a timeline no longer announces "finished"; the celebration only plays for work that actually happened while you were watching.
  6. 0.25.1

    Jun 12, 2026

    Improvements

    • The mascot lost his pop-out card and now lives directly on the sidebar: he falls in and lands when you open the timeline page, picks himself up, and jumps down off the sidebar when you switch away. (Honors reduce-motion.)
  7. 0.25.0

    Jun 12, 2026

    Improvements

    • Agent cuts adapt to each recording. The cutter now measures how far a recording's word timing drifts from its audible speech and sizes its search windows accordingly — so words that run past their transcript timing no longer get clipped, and quiet word openings are kept without grabbing earlier noise.
    • Action sounds that complete a sentence are kept: "...and hit enter" now keeps the actual keystroke through its decay instead of cutting mid-click.
    • Cuts that land inside continuous speech now come back with both honest fixes attached — finish the clause, or drop the whole clause — so a reviewing agent or human picks one instead of guessing.
    • The little mascot now shows what agents are actually doing, the whole time they're doing it: commands light him up for their full duration (long jobs get the coffee mug), he thinks between commands in a session, celebrates finishes (with a bigger celebration for big batches), looks confused when a cut is blocked, flustered after repeated failures, and salutes your manual edits. All driven automatically by the tools — agents can't pose for the camera. Four new animations (relieved, frazzled, juggling, salute) plus left/right glances.
    • New replay harness for graded edits: every reviewed edit can be exported as a bundle and replayed against future cutter versions, so your past corrections automatically judge new changes.
    • The agent skill now carries the editorial grammar distilled from graded edits: complete thoughts only, asymmetric tightness, retake handling, and what always gets cut.

    Fixes

    • Trimming a clip's start with ripple-trim no longer leaves a black gap in the timeline.
    • The boundary audit can no longer "restore a word's attack" by reaching into the previous word.
    • The timelines list no longer rescans on unrelated file changes inside timeline folders.
  8. 0.24.0

    Jun 11, 2026

    Improvements

    • Page switching and the timeline editor feel snappier. Opening a timeline no longer re-reads the entire timeline library and no longer loads the same timeline twice; the recency re-sort happens in the background after the switch.
    • The recordings and import views now refresh their folder lists in the background, so returning to the app or opening the import dialog shows instantly instead of waiting on a disk scan.
    • Thumbnails for recordings and media tiles generate off the interface thread, a few at a time, instead of all at once — scrolling a page of recordings no longer stutters while previews fill in.
    • Idle housekeeping is much quieter: the free-disk-space check runs less often when not recording and only repaints when the number meaningfully changes, and cache-generation progress updates are batched instead of flooding the interface.
    • Opening a timeline (from the app or an agent) no longer rewrites its metadata file every time, which also stops a feedback loop of file-change events between the editor and command-line tools.

    Fixes

    • Fixed media tiles in the timeline bin and clip views decoding video frames on the interface thread, which could cause visible hitches when those views appeared.
  9. 0.23.0

    Jun 11, 2026

    Improvements

    • Agent edits cut on the audio itself. The cc-cli cutter now places every cut at the sound: the outgoing edge lands where a word's energy trails off (the decay knee), and the incoming edge lands right where the next word begins — using word timing only to find the word and the audio level to set the exact frame, so breaths and room tone come out without ever clipping a word. Agents can pass approximate ranges and get back exactly where each cut landed.
    • Mid-sentence retakes (where two takes are spliced inside continuous speech, with no natural pause to cut on) are flagged for human review with the best energy-based guess, instead of being cut blindly.
    • Per-video editing taste is now captured up front. A new style interview (join tightness, breaths, dead-air threshold, action pauses, head/tail, zooms) is saved with the timeline and drives the cutter and audits, so the same recording cuts to your preferences every time. New cc-cli edit-style get|set.
    • Agents land a full batch of cuts in one pass and read a report of what was adjusted, instead of dozens of trial-and-error attempts. Cut-safety problems come back as structured data (which join, why, the suggested fix) rather than prose.
    • Transcripts read through cuts now report word times on the frame-accurate alignment clock, fixing a systematic ~0.3–0.5s drift between the transcript and the audio that made some cuts read rough. New --raw-transcript-times opt-out.
    • New cc-cli export-edit-example captures a finished edit (timeline, sidecars, notes) as a self-contained example for review and improving the editor over time.

    Fixes

    • Cuts can no longer silently decouple video from audio. Slicing a clip now keeps linked audio/video pointing at each other, and trim/move/delete verify A/V stays in sync. New cc-cli repair-links re-pairs any timeline whose links went stale from earlier versions.
    • The agent skill self-heals: installs that were left in a half-updated state now update cleanly on the next run.
  10. 0.22.2

    Jun 10, 2026

    Fixes

    • Studio paused review now loads reliably while a recording is in progress: muted audio sources (e.g. system audio with no signal) no longer leave an empty track on the in-progress master file, which made the live recording unreadable until stop. Muted sources append silence instead, so the review player can open the file at any time.
    • If a review source file still fails to open, the player sidelines it after a few attempts and falls through to the next candidate (master → final file → proxies) instead of retrying the same broken file until it gives up.
    • Background word-alignment work (MFA/ffmpeg) now runs at background CPU priority so it no longer competes with timeline playback and UI on performance cores.
  11. 0.22.1

    Jun 10, 2026

    Fixes

    • Fixed a crash when opening the Timelines page in released builds: the mascot panel located its resources through a SwiftPM accessor that only worked on the build machine. Resources are now resolved from the app bundle directly, and a missing resource degrades gracefully instead of crashing.
    • The studio paused review no longer gets stuck on "Preparing review…" if the in-progress recording file is momentarily unreadable (mid-fragment write) when the review opens — the player now retries until the file is playable.
  12. 0.22.0

    Jun 10, 2026

    Improvements

    • Studio paused review: pausing a recording now opens an instantly playable review of everything captured so far — a Metal-rendered player with audio, a lightweight timeline strip with transcript words, a draggable playhead, zoom handles, and range selection. Mark ranges with notes while paused; they save as a studio-notes sidecar ({stem}.studio-notes.json) that editing agents read as rough editorial hints. Spacebar toggles playback.
    • Final recording transcripts are now generated with the production speech model instead of the quick-pass model, so timeline words are far more complete — especially at clip starts and after pauses.
    • The timeline word lane shows a quiet "aligning words…" placeholder while transcription/alignment is still running, instead of an empty strip that reads as silence.
    • Word alignment sidecars regenerate automatically with the improved alignment pipeline (wider search beam, number spelling, fallback fill), filling in previously missing word spans.
    • Every clip in a timeline now queues word alignment in the background, not just the active clip.
    • Live transcription anchors words to the recorder's media clock (filling gaps with silence), so live words land exactly where they belong on the timeline — including after pauses and in long sessions.
    • The recording pipeline holds up better under heavy system load: recording queues run at elevated QoS so other apps can't starve them, and optional proxy frame encoding is shed automatically when the frame budget is tight (with a diagnostics counter).
    • A pixel mascot panel on the open timeline shows live agent/CLI activity — who is editing and what they're doing (reading, thinking, cutting, building, shipping) — with a typed status ticker.
    • CLI/agent edits now appear in the app push-based instead of polling: the open timeline and the Timelines page listen for file-system events (FSEvents), so external cuts reload the clip canvas within a fraction of a second — including while the editor is idle, which previously required stopping playback to pick up changes.
    • The CLI now auto-detects who invoked it (Cursor, Claude Code, Codex, the app itself, or a human shell) from environment fingerprints and process ancestry. Activity entries default their author to the detected agent — Cursor agents include a per-conversation suffix so two simultaneous agents are distinguishable — and every entry carries agent / agent_via / agent_detail provenance metadata even when a custom --author is passed.
    • cc-cli get-transcript and analyze-edit-context now report an alignment status (ready / generating / pending / no_transcript) with a check-back hint, and the transcript command waits at most ~15s on an in-flight alignment instead of blocking until it finishes.
    • New cc-cli install-skill command generates the complete agent skill from the binary itself — what Context Cut is, the full editing workflow, and an exact release-synced command map — and installs it to any known host (--agent claude|codex|cursor) or folder. Production and dev builds write separate skills (context-cut-cli vs context-cut-cli-dev, the dev one explicitly marked as the dev version of the app), each with a bundled update-skill.sh that refreshes only from its own channel and preserves locally edited skill files unless forced.
    • Agent onboarding is now skill-only: the init-agent per-project scaffold (26 documents) is removed in favor of the single generated skill.
    • Settings > AI gains an Agent Skill menu that installs/updates the skill via the app's own bundled cc-cli — listing only detected hosts, with "Install on All" and a custom-folder option.

    Fixes

    • CLI mutations now follow linked clips everywhere: split, move, trim, ripple-trim, delete, and ripple-delete apply to all linked A/V companions and remap link metadata across new clip IDs, so cuts can no longer decouple video from audio.
    • Timeline playback keeps audio and video locked with closed-loop drift correction (gentle rate nudges for small errors, precise re-seeks for large ones), and external CLI mutations invalidate playback audio so the app never keeps playing a stale mix.
    • Cut safety audits clamp their ranges to the post-mutation timeline duration, fixing a crash when applying large batch cuts, plus an operator-precedence fix in cut intent validation.
    • Batch and live transcription no longer fail an entire recording when the speech model emits an empty segment or invalid timestamps; bad items are repaired or dropped instead.
    • Live transcription buffers more audio (24s) before dropping chunks when the model briefly falls behind, so fewer words go missing from live transcripts.
  13. 0.21.12

    Jun 09, 2026

    Improvements

    • Heavily edited timelines stay snappy: making cuts, hovering, and dragging no longer slow down as the number of clips grows.
    • Audio waveforms draw faster when zoomed out on long timelines.
    • The Timelines page now scrolls through the full list, orders timelines by when they were created, and shows timelines created by agents or the CLI within a couple of seconds without reopening the app.

    Fixes

    • Long studio recordings keep audio and video in sync instead of drifting apart over time.
    • Microphone audio in recordings now plays back through both speakers instead of only one side.
  14. 0.21.11

    Jun 05, 2026

    Improvements

    • Timeline Auto Clip is now available from the clip context menu for selected audio or linked video/audio clips, with controls for padding, minimum silence length, continuous long-run removal, noise removal, and optional ripple-delete.
    • Dense edited timelines now do less idle redraw work, especially when Auto Clip creates a high number of cuts.
    • Timeline zooming and viewport dragging are smoother because expensive transcript/audio detail overlays are deferred during zoom interaction and scoped around the active/playhead region at high clip counts.

    Fixes

    • Dense timeline hover/click hit-testing now prefilters by track row instead of scanning every visible clip across every pointer event.
    • Recordings breadcrumb navigation no longer forces a full recordings rescan when returning to the overview.
    • Settings, recordings thumbnails, cache progress polling, and timeline preview lookup paths do less main-thread work during common page switches and playback interactions.
  15. 0.21.10

    May 22, 2026

    Improvements

    • Timeline media-bin drags now feel more immediate, with drag payloads prewarmed and active drag sessions used as a fallback so ghost previews appear while hovering the timeline.
    • Linked clip drags are bounded to the intended video/audio companion instead of pulling unrelated clips that happen to share older group metadata.
    • Audio cache loading is deferred to reduce timeline-open stutter while preserving transcript/audio detail for zoomed-in work.

    Fixes

    • Dragging linked clips now keeps paired V/A movement tighter without moving everything else on the timeline.
    • Delete and ripple-delete now expand through linked clip metadata, so clicking either the audio or video side of a linked pair deletes both sides together.
    • Media-bin drops now recover when pasteboard payload loading completes late, avoiding failed or delayed drops on the timeline.
  16. 0.21.9

    May 20, 2026

    Improvements

    • Timeline Import now opens an in-app Context Cut picker first, with Recent and Projects views for importing Context Cut recordings/projects in bulk.
    • Import from My Device remains available from the modal for outside files like standalone audio, video, or project folders.

    Fixes

    • Dragging media from the bin onto the timeline now previews only the tracks that actually exist in the file.
    • Video+audio sources show paired Vn/An ghost previews, while audio-only and video-only sources target only eligible audio or video tracks.
  17. 0.21.8

    May 19, 2026

    Improvements

    • Studio display sources can now be dragged, resized, reset, and edge-cropped directly on the canvas.
    • Display/camera canvas manipulation is clearer, with black source backing, thicker resize outlines, and crop-specific affordances.
    • Camera mask corner radius now supports values up to 300 for rounder camera treatments.

    Fixes

    • Camera recording uses a stable capture preset and no longer forces risky active camera formats.
    • No-audio MP4 recordings now start reliably when using the VideoToolbox passthrough path.
    • Camera recording auto bitrate is raised while staying inside writer-safe limits.
  18. 0.21.7

    May 19, 2026

    Fixes

    • Settings controls are cleaner and more consistent, with Project and storage threshold badges matching the Output dropdown style.
    • The Recordings page no longer opens clipped under the top viewport edge.
    • Timeline tabs now match the compact Settings tab bar style while keeping close buttons and the + New Timeline action.
    • Switching active timelines no longer reorders the open timeline tabs.
  19. 0.21.6

    May 18, 2026

    Fixes

    • Sidebar navigation now uses the same muted inactive color as the version status area, with full-row clickable targets and pointer hover feedback.
    • Page switching, Settings, and sidebar collapse/reopen now avoid heavier first-frame work so the app feels more immediate.
    • Timelines with only a few tracks now keep the track rows aligned with the 00:00:00:00 playhead/ruler origin.
  20. 0.21.5

    May 18, 2026

    Fixes

    • Desktop sign-in now fails immediately for emails that do not have app access instead of showing a one-time-code field that can never complete.
    • Successful sign-in clears stale code state, saves the valid license, and keeps update installs from looping on an expired or rejected auth attempt.
    • The app now handles the server's direct not_found desktop auth response without treating it as a transport failure.
© Context Cut · Built for Apple Silicon