# Cut Mistakes

Agent 2 of the video editing pipeline.

- Repository: https://github.com/nateherkai/herk-edit-kit (2482 stars)
- Category: AI and agents
- License: see repository
- Last updated: 2026-10-14
- Runs scripts: yes, review before use

## Install

Claude Code: `npx skills add nateherkai/herk-edit-kit --skill cut-mistakes -g -a claude-code -y`
Codex: `npx skills add nateherkai/herk-edit-kit --skill cut-mistakes -g -a codex -y`
Cursor: `npx skills add nateherkai/herk-edit-kit --skill cut-mistakes -g -a cursor -y`
Gemini CLI: `npx skills add nateherkai/herk-edit-kit --skill cut-mistakes -g -a gemini-cli -y`

## Description

Agent 2 of the video editing pipeline. Finds and removes spoken mistakes, stutters, repeated words, false starts, and retakes (re-recorded lines), from a talking-head recording. Use after cut-silences, when asked to cut mistakes, remove stutters / repeats / filler restarts, clean up flubs, or keep the best take. Works review-gated: it proposes every cut with context and a reason for approval, then renders only the approved cuts via ffmpeg. Requires a word-level transcript.

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Cut Mistakes & Repeats (Pipeline Agent 2)

Second step of the automated edit, run after **cut-silences**. It removes the things a human editor cuts on a second pass: stutters ("the the", "I- I-"), immediately repeated words, false starts (an abandoned phrase that restarts), and retakes (a line re-recorded, keep the clean take, drop the botched one).

Deciding what counts as a mistake is **judgment, not a formula**, emphatic repetition ("never, never") and rhetorical doubling ("the first piece is, is this…") look identical to a stutter mechanically. So this agent is **review-gated by default**: it surfaces candidates with full context; the agent (and the user) decide; only approved cuts are rendered.

## When to use

- "cut the mistakes", "remove stutters / repeats", "clean up the flubs", "keep the best take", "cut false starts"
- As the second stage of the master edit workflow, on cut-silences' output.

## The three-part flow

### 1. Find candidates (mechanical)

```bash
node .agents/skills/cut-mistakes/scripts/find-cut-candidates.mjs \
  <silence-transcript.json> --out-dir video-projects/<slug>/assets
```

Input is normally Agent 1's `<stem>.silence-transcript.json`, so cuts land on the already-silenced timeline. Writes:

- `<stem>.cut-candidates.json`, structured candidates (type, confidence, proposed `cut` range, `removes`/`keeps` text, context, recommendation)
- `<stem>.cut-candidates.md`, readable proposal

Candidate types: `stutter` (immediate word repeat), `retake` (duplicate/near-duplicate segment via Jaccard similarity), `false_start` (short abandoned phrase that restarts).

### 2. Review (the gate, REQUIRED)

Read each candidate **in context** and decide keep-or-cut. The mechanical detector cannot tell intentional emphasis/rhetoric from a real flub, so do not trust `recommend` blindly, read `removes` + `context`. Common false positives: emphatic repetition ("it's never, never hands-off"), copula-then-question ("the piece is, is this…"), listing.

The rest: https://github.com/nateherkai/herk-edit-kit/blob/HEAD/.agents/skills/cut-mistakes/SKILL.md
