Communitygithub.com

video-workflow

Manages video processing tasks for the current project, orchestrating transcription, insight extraction, long-video clipping, speech deduplication, subtitle resegmentation, copy quality diagnosis, and user-specified ChatCut editing. Suitable for multi-step video processing or ambiguous editing requests; single, defined tasks should use the corresponding Skill directly.

What is video-workflow?

This skill serves as a central orchestrator for complex video processing workflows within an AI agent environment (such as Claude Code, Cursor, or Codex). It is designed for projects with multiple, interrelated video editing tasks where the final output is unclear or requires several processing stages. Instead of handling specific operations directly, it analyzes the user's goal, selects the appropriate sub-skills (like transcription, clipping, or deduplication), orders them correctly, and ensures outputs from one stage are properly passed to the next. It adheres to a shared configuration (`video-shared`), uses a local `video-cli` for deterministic actions, and integrates with the official ChatCut skill when needed. By intelligently chaining these capabilities, it prevents conflicts, reuses common resources like transcripts, and delivers a final, cohesive result, making it ideal for workflows like turning a long recording into a polished short video or cleaning up a podcast for publication.

Works with✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/heshaofu2/video-workflow-suite/tree/HEAD/video-workflow

Ask in your favorite AI

Open a new chat with this agent skill pre-loaded.

Documentation

Responsibility and Location

Responsible for understanding the goal, selecting capabilities, arranging the order, bridging outputs, and summarizing the delivery. First, read video-shared: it maintains shared rules; deterministic operations are uniformly executed by the local video-cli; domain Skills maintain business judgment; this entry point handles only cross-domain orchestration.

The local entry point, shared layer, and domain capabilities are stored entirely under the current project's .agents/skills/ directory, referenced as adjacent directories. ChatCut continues to use its official companion Skill.

Selecting Capabilities

Based on the current goal, only read the required Skill, then read the reference materials it requires. The following paths are relative to this entry point directory:

User GoalSibling CapabilityPrimary Deliverable
Transcribe video or audio to text, supplement speaker labelsvideo-to-textTimestamped transcript, JSON, and subtitles
Sort topics, insights, quotes, controversies, and action items from existing textinsight-extractorInsight summary with source localization
Clip short segments from long video by topic, speaker, or time rangevideo-clipperSegment list and rough-cut clips
Remove re-recordings, repeated narrations, and unfinished sentences; retain complete expressionsspeech-video-dedupDedup candidates, review preview, or cleaned full video
Resegment existing subtitles semantically into short sentencessubtitle-resegmentNew short-sentence SRT
Evaluate opening appeal, content progression, and engagement triggersclip-quality-monitorCopy diagnosis with original text evidence
Explicitly use ChatCut or continue its engineeringChatCut official talking-head-guide and its associated SkillsIn-project editing, subtitles, or user-requested packaging

The ChatCut native Desktop companion entry is typically at ~/.agents/skills/chatcut-talking-head-guide/SKILL.md; prioritize the official version already provided in the current session.

Clarifying Task Scope

  • Reuse existing tools, projects, material paths, segments, or confirmed editing methods. Do not change the user's choice simply because a tool is available.
  • "Just transcribe", "Just evaluate", "Find duplicates" should only perform the corresponding work, not expand into a full finished product.
  • For requests like "Help me edit" with insufficient goals, first confirm whether to retain the full narrative and clean it, or extract a short video from a long video. If materials are missing, first check the user's path and project context, then ask for necessary information.
  • If a local capability is missing, first look in the current working directory; do not switch to a global copy with the same name, do not automatically download or reinstall. For ChatCut official dependencies, look from its plugin or Desktop companion sources.

Orchestrating Combined Tasks

Clipping a Short Video from a Long Video

Execute video-to-text → insight-extractor → video-clipper as needed. Skip already satisfied steps if transcripts, summaries, or clear time ranges exist. Segment integrity checks and confirmation are the responsibility of video-clipper.

Rough cutting and silence removal do not replace semantic deduplication. Only continue with speech-video-dedup when the user requests "Also clean each clip"; do not add precision editing without request.

Deduplicating a Full Voiceover or Course

Use speech-video-dedup to check the entire film and cut points. Call video-to-text uniformly for transcription when needed; reuse and backend selection follow the shared transcription contract; deduplication does not maintain a second recognition pipeline. Do not compress a full course into a short video unless requested by the user.

Subtitles and Quality Diagnosis

When subtitles are needed, first determine the final edit, then obtain the corresponding SRT and necessary word-level timestamps from the final timeline, then call subtitle-resegment. For an original transcript, must map and convert according to the actual edit or re-transcribe the final video; do not apply directly.

clip-quality-monitor can assist with segment selection evaluation or provide post-edit copy diagnosis; it only gives suggestions based on text, does not verify actual playback, audio-visual, or platform effects.

Specifying ChatCut

When the user chooses ChatCut, use its official workflow to achieve the goal; do not cut externally first and then import arbitrarily. When text analysis is needed, use sibling insight extraction or quality diagnosis capabilities.

When Desktop or local project is explicitly specified, use Desktop tools; when cloud project is explicitly specified, use the corresponding connection. If both are available and project affiliation is unclear, first check project context; if still uncertain, ask. First determine the speech timeline, then produce the user-requested subtitles, music, and visual packaging.

Output Handoff

  • Determine an output directory for this task for all stages to use. Directory rules, transcription reuse, and time baseline unification reference the shared layer; do not rebuild workspaces at each stage.
  • Pass source file identity, transcription coverage range, and actual edit mapping across stages to avoid mistaking timestamps from one stage for another.
  • Follow each capability's original clip protection, confirmation, and export rules; retain confirmed segments and cut points from this task.

Delivery

Provide the requested openable output and path, explain which capabilities were used and what scope was processed. Report on segment integrity, cut point and visual checks, technical checks, and copy diagnosis according to actual completion level; one passing does not mean the rest are verified.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

Related Skills