Token导航 LogoToken导航TokenDH.com
研究检索敏感数据github未标认证来源可访问许可证需确认审计提醒

edit-video编辑视频

Agent Skill

用于辅助视频生成、动画合成、脚本化剪辑或 Remotion 等视频项目开发。它适合让 Agent 组织镜头、生成素材说明、维护合成代码或排查渲染问题。使用时需要确认分辨率、时长、素材路径和导出格式;涉及外部素材、人物肖像或商业发布时,应先核对版权授权和内容审核要求。

总安装

238

周安装

10

GitHub Stars

公开资料未说明

下载量

83
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:edit-video(编辑视频)
来源仓库:https://github.com/silvabyte/skills
仓库路径:skills/edit-video
安装命令:
npx skills add https://github.com/silvabyte/skills --skill edit-video
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/silvabyte/skills --skill edit-video

简介

用于视频转录、剪辑规划与渲染全流程管理。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中处理 Remotion 项目或动画合成。
  • 需安装 bun、ffmpeg 并配置环境变量,支持多阶段编辑任务。
  • 涉及外部素材时应核对版权,商业发布前需完成内容审核。
  • edit-video 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Edit Video

Conversational video editing in three phases: transcribe, plan the edit, render.

Prerequisites

  • bun — TypeScript runtime
  • ffmpeg / ffprobe — video processing (must be on PATH)

Environment variables (optional, have defaults):

VariablePurposeDefault
AUDETIC_API_URLAudetic transcription service URLhttps://audio.audetic.link

Commands

All paths are relative to this skill's directory. Run with bun run.

CommandPurpose
scripts/transcribe.ts <video>Transcribe a single video file — produces JSON + markdown transcript + analysis alongside the file
scripts/transcribe.ts <directory>Transcribe all video files in a directory — produces merged JSON + markdown transcript + analysis in the directory
scripts/preview.ts <edl.json>Validate and preview an EDL before rendering
scripts/render.ts <edl.json>Render final video from EDL using ffmpeg stream copy
scripts/adjust.ts <edl.json> --segment N --start/--end <value>Adjust timestamps or remove segments in an existing EDL
scripts/caption.ts <video> <transcript.json>Burn Shorts-style captions into video (optional --edl, --output)

Workflow — Single File

1. Transcribe

bun run scripts/transcribe.ts <video-file>

Compresses audio to MP3, uploads to the audetic transcription service, and produces three files alongside the video:

  • .json — transcription result (used by tools)
  • -transcript.md — readable transcript table
  • -analysis.md — transcript with signal flags (gaps, speech rate)

2. Plan the Edit

Read both the transcript and the analysis. The analysis provides mechanical signals:

FlagMeaning
gap:XsSilence of X seconds before this segment
slowFewer than 0.5 words/second (typing, long pauses, dead air)
silenceZero words detected in segment
WPS columnWords per second (higher = denser speech)

See references/signal-interpretation.md for detailed signal guidance.

Use these signals combined with your understanding of the content to decide what to keep/cut. The tool detects silence and pacing; you judge what's filler vs. substance.

When the edit plan is decided, write an EDL (Edit Decision List) JSON file:

{
  "output": "/absolute/path/to/output.mp4",
  "segments": [
    { "source": "/absolute/path/to/video.mp4", "start": "00:00:00.000", "end": "00:02:15.500", "label": "Introduction" },
    { "source": "/absolute/path/to/video.mp4", "start": "00:05:30.000", "end": "00:12:45.200", "label": "Main discussion" }
  ]
}
  • Each segment requires a source field with the absolute path to its source video
  • Timestamps must be HH:MM:SS.mmm format (ffmpeg-native)
  • Segments are in playback order — rearranging segments reorders the output
  • label is optional, helps communicate what each segment is
  • Only included segments appear in the output; everything else is cut

See references/edl-schema.md for the full schema reference.

3. Preview

bun run scripts/preview.ts <edl.json>

Always preview before rendering. Shows segment breakdown, kept/cut percentages, and validates the EDL.

3a. Adjust (Iterative Editing)

After previewing, use adjust.ts for targeted tweaks instead of rewriting the EDL:

# Trim 0.5s off the end of segment 1
bun run scripts/adjust.ts <edl.json> --segment 1 --end -0.5s

# Move the start of segment 2 earlier by 1 second
bun run scripts/adjust.ts <edl.json> --segment 2 --start -1s

# Extend the end of segment 3 by 2 seconds
bun run scripts/adjust.ts <edl.json> --segment 3 --end +2s

# Set end of segment 1 to an exact timestamp
bun run scripts/adjust.ts <edl.json> --segment 1 --end 00:05:30.000

# Remove segment 2 entirely
bun run scripts/adjust.ts <edl.json> --remove 2

Segment numbers are 1-based, matching the preview output. Relative deltas use +Xs/-Xs (supports decimals). Absolute values use HH:MM:SS.mmm format. The tool validates the result and prints an updated summary.

Repeat preview + adjust as needed until the edit is right, then render.

4. Render

bun run scripts/render.ts <edl.json>

Uses ffmpeg stream copy (fast, cuts at nearest keyframe). Produces the final video.

5. Caption (Optional)

bun run scripts/caption.ts <edited-video.mp4> <transcript.json> --edl <edl.json>

Burns bold, centered captions (Hormozi style) into the video. Use --edl to remap transcript times to the edited video's timeline. Requires a full re-encode.

See references/caption-style.md for style defaults and customization.

Workflow — Multiple Clips (Directory)

Use this when the user has multiple short clips that should be edited into a single video.

1. Transcribe All Clips

bun run scripts/transcribe.ts <directory>

Finds all video files (*.mp4, *.mkv, *.mov, *.webm, *.ts), transcribes each one, and produces merged output in the directory:

  • transcript.json — merged transcript with source field on each segment
  • transcript.md — merged readable table with Source column
  • analysis.md — merged analysis with Source column (gap detection resets at clip boundaries)

2. Plan the Edit

Same process as single-file, but the transcript and analysis include a Source column showing which clip each segment came from. Write an EDL with per-segment source paths:

{
  "output": "/absolute/path/to/combined.mp4",
  "segments": [
    { "source": "/absolute/path/to/clip001.mp4", "start": "00:00:02.000", "end": "00:00:12.000", "label": "Opening" },
    { "source": "/absolute/path/to/clip003.mp4", "start": "00:00:00.000", "end": "00:00:08.500", "label": "Key moment" },
    { "source": "/absolute/path/to/clip007.mp4", "start": "00:00:01.000", "end": "00:00:14.000", "label": "Closing" }
  ]
}

3. Preview + Render

Same as single-file workflow. Preview lists all sources with durations and shows source filename per segment.

4. Caption (Optional)

Same as single-file — run caption.ts with --edl on the rendered output.

Narrative Editing

Use narrative editing when the user provides a goal beyond "trim the filler" — a theme, tone, target duration, or audience.

See references/narrative-patterns.md for the full pattern catalog.

Thinking process:

  1. Read transcript + analysis. Identify distinct *moments* / content beats.
  2. Decide which moments serve the stated narrative goal.
  3. Determine the best *order* — chronological is one option, but also consider: Hook-first, Escalation, Question-answer, Bookend.
  4. Label each segment with its narrative role.
  5. Sum segment durations to verify against target.

Labels as narrative roles: Use the label field to document function (e.g., "HOOK: the punchline", "SETUP: context", "PAYOFF: resolution").

Narrative notes: Use the optional narrative_notes field in the EDL to document editorial reasoning.

Example:

{
  "output": "/path/to/output.mp4",
  "narrative_notes": "Goal: 60s punchy clip. Led with the reaction for hook, then backed into the setup.",
  "segments": [
    { "source": "/path/to/video.mp4", "start": "00:05:30.000", "end": "00:05:55.000", "label": "HOOK: surprised reaction" },
    { "source": "/path/to/video.mp4", "start": "00:01:00.000", "end": "00:02:15.500", "label": "SETUP: reading the tweet" },
    { "source": "/path/to/video.mp4", "start": "00:06:00.000", "end": "00:06:30.000", "label": "PAYOFF: final take" }
  ]
}

Output File Naming

Single-file mode

The outputPaths function in scripts/lib/config.ts generates standard paths relative to the video:

OutputPattern
Transcript JSON<name>.json
Transcript MD<name>-transcript.md
Analysis MD<name>-analysis.md
EDL<name>-edl.json
Edited video<name>-edited.mp4
Captioned video<name>-captioned.mp4

Directory mode

The directoryOutputPaths function generates paths inside the directory:

OutputPattern
Transcript JSONtranscript.json
Transcript MDtranscript.md
Analysis MDanalysis.md

Session Flow

Single file

  1. User provides a video file path
  2. Run transcribe.ts on it
  3. Read the -analysis.md and -transcript.md files
  4. Discuss with user what to keep/cut (or accept a narrative goal)
  5. Write the EDL JSON file (each segment has source pointing to the video)
  6. Run preview.ts to validate — review with user 6a. If adjustments needed, run adjust.ts for targeted tweaks (repeat preview + adjust as needed)
  7. Run render.ts to produce the final video
  8. (Optional) Run caption.ts with --edl if user wants Shorts-style captions
  9. Report output path and final duration

Multiple clips

  1. User provides a directory of clips
  2. Run transcribe.ts on the directory
  3. Read the merged analysis.md and transcript.md in the directory
  4. Discuss with user which clips/segments to include
  5. Write the EDL JSON file (each segment has source pointing to its clip)
  6. Run preview.ts to validate — review with user 6a. If adjustments needed, run adjust.ts for targeted tweaks (repeat preview + adjust as needed)
  7. Run render.ts to produce the combined video
  8. (Optional) Run caption.ts with --edl if user wants Shorts-style captions
  9. Report output path and final duration

Tips

  • Keyframe imprecision: Stream copy cuts at the nearest keyframe, so cuts may be off by up to ~0.5s. This is the tradeoff for fast rendering without re-encoding.
  • Large videos: Transcription time scales with video length. For videos over 30 minutes, warn the user it may take a while.
  • Always preview first: Never render without previewing. The preview catches validation errors and lets the user confirm before committing.
  • Duration targeting: When given a target duration, sum the Dur column values from the analysis for selected segments. Iterate until the EDL fits.
  • Reinterpret signals: Gaps aren't just cut candidates — they mark topic boundaries. Slow segments aren't always boring — a pause before a realization can be dramatic.
  • Mixed codecs: When combining clips from different sources, the preview tool warns about mixed file extensions. Clips from the same device/app are usually safe.
  • Caption re-encoding: Burning captions requires a full video encode (not stream copy), so it takes longer than rendering. Mention this to the user before starting.
  • Iterative adjustments: After the initial EDL is created, use adjust.ts for minor tweaks like trimming or extending segments. It handles timestamp arithmetic so you don't need to rewrite the EDL for small changes.
  • Offer captions: When the user mentions Shorts, Reels, TikTok, or short-form content, offer to add Shorts-style captions after rendering.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.17%
按下载量换算30

Claude

30.79%
按下载量换算26

Cursor

20.58%
按下载量换算17

Gemini CLI

10.22%
按下载量换算8

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

可疑

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills