Skip to content
Content
Skill

/livestream-to-clips

Cut an imported livestream recording of any genre into evidence-backed, platform-ready clips by combining transcript, visual, audio, interaction, and domain-specific signals. Use for commerce, gaming, talk, interview, education, entertainment, sports, music, IRL, creative, news,

From plugin
openchatcut
1.8k31 skills1 MCP
Install
$ npx -y skills add 0xsline/OpenChatCut --skill livestream-to-clips --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/livestream-to-clips

Context preview

The summary Claude sees to decide when to auto-load this skill.

Cut an imported livestream recording of any genre into evidence-backed, platform-ready clips by combining transcript, visual, audio, interaction, and domain-specific signals. Use for commerce, gaming, talk, interview, education, entertainment, sports, music, IRL, creative, news,

SKILL.md

livestream-to-clips.SKILL.md
name: livestream-to-clips
description: Cut an imported livestream recording of any genre into evidence-backed, platform-ready clips by combining transcript, visual, audio, interaction, and domain-specific signals. Use for commerce, gaming, talk, interview, education, entertainment, sports, music, IRL, creative, news, or mixed livestream recordings.

Livestream to Clips

Use this workflow when the source is an imported livestream recording and the user wants clips, highlights, cutdowns, reels, or multiple publishable timelines. A livestream may change genre during one recording, so classify each section rather than assigning one label to the whole source.

This workflow is OpenChatCut-native. Use project media, transcript, representative source frames, timeline tools, captions, and export tools already available in the editor. Treat audience chat, reactions, score data, product records, or stream markers as optional evidence when the project contains them.

Required References

Load only the files needed for the current step:

  • Read [references/profile-matrix.md](references/profile-matrix.md) before classifying sections or applying genre rules.
  • Read [references/multimodal-selection.md](references/multimodal-selection.md) before comparing candidates or processing a long recording.
  • Read [references/qa-and-evaluation.md](references/qa-and-evaluation.md) before final verification or benchmark reporting.

Workflow

1. Establish the editing contract

Read the project before editing. Identify the dominant livestream asset, duration, aspect ratio, language, speakers, transcript readiness, audio tracks, existing visual descriptions, and current timeline.

Determine only constraints that change the result: target platform, objective, clip count, duration range, aspect ratio, captions, packaging style, and whether the user wants contiguous source clips or an editorial remix. If the user asked for direct creation and supplied enough context, proceed without another approval step.

2. Build a stream map before selecting clips

For a long source, inspect it hierarchically instead of sending the entire transcript or dense frame sequence through one decision pass:

1. Read the transcript in bounded ranges and produce a coarse stream map. 2. Split on topic, activity, speaker, product, round, scene, performance, or format changes. 3. Assign a profile and confidence to each section. Use `mixed` when adjacent profiles overlap. 4. Record important entities and state: people, products, teams, scores, locations, tasks, claims, prices, and outcomes. 5. Preserve source timestamps so every later decision remains traceable.

Do not rank clips yet. First make sure the map covers the beginning, middle, and end of the recording and does not overrepresent transcript-rich sections while ignoring visual or musical events.

3. Discover events with all available evidence

Generate event candidates from independent signals:

  • **Speech:** question, answer, claim, story, instruction, joke, conflict, reveal, offer, call to action, or conclusion.
  • **Visual:** action, product demonstration, score change, reveal, scene novelty, facial reaction, screen result, or completed work.
  • **Audio:** laughter, cheering, shout, impact, game cue, musical build/drop, silence contrast, or emotion change.
  • **Interaction:** chat/message burst, repeated emote or phrase, donation, poll, viewer request, or streamer response.
  • **Metadata:** chapters, markers, score/telemetry, product identifiers, or known agenda items.

Interaction and metadata are supporting signals, not mandatory inputs. Never invent absent chat, telemetry, product, or score evidence.

Treat music intelligence as an enhancement: call `analyze_music` with `optional: true`. If it reports `available: false`, continue with `detect_beats`, waveform/audio cues, and visual timing rather than blocking the clip.

4. Turn each event into a complete candidate arc

Expand the event to the smallest source range that preserves its meaning and payoff. Use the profile-specific arc from `profile-matrix.md`. Common shapes include:

  • setup → trigger → peak → reaction → outcome;
  • question → answer → evidence/example → conclusion;
  • product → need → demonstration/proof → offer/CTA;
  • goal → explanation/steps → visible result;
  • musical phrase/build → chorus/drop → resolution.

Resolve boundaries on clean word, phrase, action, shot, beat, or state-transition points. Include pre-roll when the event is confusing without setup and post-roll when the reaction or result carries the value.

5. Create an evidence ledger

Before heavy editing, record a compact candidate ledger. For every candidate include:

{
  "sourceRange": [0, 0],
  "profile": "talk",
  "profileConfidence": 0,
  "event": "",
  "arc": { "setup": [], "peak": [], "payoff": [] },
  "evidence": { "speech": [], "visual": [], "audio": [], "interaction": [], "metadata": [] },
  "missingEvidence": [],
  "openingHook": "",
  "standaloneReason": "",
  "riskFlags": [],
  "targetDuration": 0,
  "packaging": ""
}

Inspect representative source frames for serious candidates. Use one `view_asset_frames` call per candidate range with at most six samples covering the opening, peak, payoff, and one meaningful visual transition. Reuse that contact sheet; repeat only after extraction failure or a changed source range. A transcript-only candidate is provisional until visual evidence confirms that the range is usable, unless the source is intentionally audio-first.

6. Reject, score, and diversify

Apply hard rejection gates before ranking. Reject or flag candidates with changed meaning, missing payoff, mismatched product/score/person, unresolved factual numbers, severe black/frozen/obscured frames, broken audio, unsafe disclosure, or boundaries that cut essential context.

Score the remaining candidates using the profile weights in `multimodal-selection.md`. Missing optional evidence is marked `unava

Read more
Ships withopenchatcut

Open-source, local-first conversational AI video editor with a professional multi-track timeline, Agent Skills, MCP integration, and Remotion rendering.

Get the whole plugin
Stats
1,749
Stars
260
Forks
Active
Maintenance
TypeScript
Language
AGPL-3.0
License
3d ago
Last commit
2mo ago
Created

Repo: 0xsline/OpenChatCut

Other skills on openchatcut.