mcpField
C
cut-mistakes

cut-mistakes

github.com/nateherkaiクリエイティブ・メディア2.3k191 回インストール2 週間前に更新
リポジトリ

cut-mistakes について

cut-mistakes は、動画編集で吃音や語句の重複、言い直し、失敗した再録を見つけるスキルです。候補を文脈付きで提示し、人が確認して承認したカットだけを適用します。

主な機能

  1. 01吃音や語句の重複を検出
  2. 02言い直しや再録を特定
  3. 03文脈付きで候補を確認
  4. 04承認済みカットを適用し字幕を再タイミング

活用シーン

  1. 01録画の言いよどみを整理
  2. 02編集前に重複表現を確認
  3. 03cut-silences後の編集を続行

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nateherkai/herk-edit-kit --skill cut-mistakes

インストール後、Claude Code で/cut-mistakesを入力して読み込まれたか確認します。

同梱ファイルscripts/apply-cuts.mjsscripts/find-cut-candidates.mjs

詳細

ミスと繰り返しをカットする(Pipeline Agent 2)

自動編集の第2ステップで、cut-silencesの実行後に行います。人間の編集者が2回目の編集でカットする部分、つまり、どもり(「the the」「I- I-」)、直後に繰り返された単語、言い直し(途中でやめたフレーズを最初から言い直すもの)、録り直し(セリフを録り直したもの。失敗したテイクを削除し、きれいなテイクを残します)を取り除きます。

何をミスとみなすかは、機械的なルールではなく判断が必要です。強調のための繰り返し(「never, never」)や修辞的な繰り返し(「the first piece is, is this…」)は、機械的にはどもりと同じように見えます。そのため、このエージェントはデフォルトでレビューを必須とします。候補を前後の文脈とともに提示し、エージェントとユーザーが判断してから、承認されたカットのみを反映します。

使用する場面

  • 「ミスをカットして」「どもりや繰り返しを削除して」「言い間違いを直して」「ベストテイクを残して」「言い直しをカットして」
  • マスター編集ワークフローの第2段階として、cut-silencesの出力に対して実行する場合。

3つのステップ

1. 候補を検出する(機械的な処理)
node .agents/skills/cut-mistakes/scripts/find-cut-candidates.mjs \
  <silence-transcript.json> --out-dir video-projects/<slug>/assets

通常はAgent 1の<stem>.silence-transcript.jsonを入力するため、カット位置はすでに無音を除去したタイムライン上になります。次のファイルが出力されます。

  • <stem>.cut-candidates.json — 構造化された候補(種類、信頼度、提案するcut範囲、removes/keepsのテキスト、文脈、推奨)
  • <stem>.cut-candidates.md — 読みやすい提案

候補の種類:stutter(単語の直後の繰り返し)、retake(ジャッカード類似度による重複またはほぼ重複する区間)、false_start(短いフレーズを途中でやめ、最初から言い直すもの)。

2. レビューする(必須の確認ステップ)

各候補を文脈の中で確認し、残すかカットするかを判断します。機械的な検出では、意図的な強調・修辞表現と実際の言い間違いを区別できません。そのため、recommendを盲目的に信頼せず、removesとcontextを読んでください。よくある誤検出:強調のための繰り返し(「it's never, never hands-off」)、コピュラの後に続く疑問文(「the piece is, is this…」)、列挙。

推奨内容を項目ごとに添えて候補をユーザーに提示し、承認を得ます。承認されたカットをファイルに書き込みます。

{ "cuts": [ { "start": 100.93, "end": 101.06, "reason": "I- false start" }, ... ] }

(入力のトランスクリプト/動画のタイムライン上での秒数をstart/endに指定します。候補の範囲は広げてもかまいません。たとえば録り直しの場合、失敗したテイクの開始位置から、きれいなテイクの再開位置までをカットできます。)

3. 承認されたカットを適用する
node .agents/skills/cut-mistakes/scripts/apply-cuts.mjs \
  <silence-transcript.json> --cuts approved-cuts.json \
  --video video-projects/<slug>/assets/edited-silenced.mp4 \
  --output video-projects/<slug>/assets/edited-clean.mp4 --apply

EDL、タイミングを調整した<stem>.mistakes-transcript.json(モーショングラフィックスエージェントおよびvalidate-beat-sync.mjsに渡します)、判断ログを出力します。さらに、--applyを指定すると、カット済みの動画も出力します(ffmpegによるトリミングと連結。音声と映像は同期します)。ドライランにするには--applyを省略してください。

結果のレビュー

共有レビュー用ツールを使ってカットを目視確認し、境界を抜き取りチェックします。

node scripts/build-edl-review.mjs <stem>.mistakes-edl.json \
  --original video-projects/<slug>/assets/edited-silenced.mp4 \
  --edited   video-projects/<slug>/assets/edited-clean.mp4 \
  --output   video-projects/<slug>/assets/mistakes-review.html
npx serve . -p 8080 -n

注意事項

  • とても滑らかな話し方の場合、実際にカットする箇所がほとんど、またはまったくないこともあります。それも妥当な結果です。ノルマを満たすために自然な話し方をカットしないでください。
  • 2つの発話語の間のカットは、つなぎ目が不自然になりやすいです。どもりや言い直しでは通常きれいにつながりますが、音声をより滑らかにするため、後から20~30msのフェードを追加できます。
  • mistakes-transcript.jsonとクリーンな動画を**Agent 3(モーショングラフィックス/階層型カード)**に渡します。

コメント