Token导航 LogoToken导航TokenDH.com
研究检索权限需确认clawhub未标认证来源可访问clear审计提醒

organise-videos整理视频

Agent Skill

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

总安装

8,554

周安装

360

GitHub Stars

公开资料未说明

下载量

2,995
OpenClaw

安装说明

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

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

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

命令行安装

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

ClawHubOpenClaw
openclaw skills install organise-videos

简介

通过清理非视频文件、删除短视频/不良视频以及使用 AI 视觉分析将视频分类到编号的子文件夹中来组织视频文件夹。

SKILL.md

name
organise-videos
description
Organize a video folder by cleaning non-video files, removing short/bad videos, and classifying videos into numbered subfolders using AI vision analysis.

Video Folder Organizer

Intelligently organize a video folder: clean up non-video files, remove bad footage, analyze content with AI, and sort into categorized subfolders.

Usage

User wants to organize a video folder: $ARGUMENTS

If the user has not provided a folder path, ask them to provide one.

Language note: Detect the language the user is writing in and respond in that language throughout the entire session. Category folder names should also be in the user's language.


Step 1: Scan the Folder

Scan the folder for all files (non-recursive at root level first):

# List all files with sizes
ls -la "$FOLDER"

# Find video files (common extensions)
find "$FOLDER" -maxdepth 1 -type f \( \
  -iname "*.mp4" -o -iname "*.mov" -o -iname "*.avi" -o -iname "*.mkv" \
  -o -iname "*.m4v" -o -iname "*.wmv" -o -iname "*.flv" -o -iname "*.webm" \
  -o -iname "*.mts" -o -iname "*.m2ts" -o -iname "*.mpg" -o -iname "*.mpeg" \
  -o -iname "*.3gp" -o -iname "*.hevc" -o -iname "*.ts" \
\)

# Find non-video files
find "$FOLDER" -maxdepth 1 -type f ! \( \
  -iname "*.mp4" -o -iname "*.mov" -o -iname "*.avi" -o -iname "*.mkv" \
  -o -iname "*.m4v" -o -iname "*.wmv" -o -iname "*.flv" -o -iname "*.webm" \
  -o -iname "*.mts" -o -iname "*.m2ts" -o -iname "*.mpg" -o -iname "*.mpeg" \
  -o -iname "*.3gp" -o -iname "*.hevc" -o -iname "*.ts" \
\)

Report to user:

  • Total files found
  • Number of video files
  • Number of non-video files (list them)

Step 2: Handle Non-Video Files

Use AskUserQuestion to ask what to do with non-video files (only if any exist):

Question: "Found N non-video file(s). How would you like to handle them?" Options:

  • "Move to _misc subfolder (Recommended)" — move non-video files into $FOLDER/_misc/
  • "Delete all non-video files" — permanently delete them
  • "Leave them as-is" — do nothing

If user chooses to move:

mkdir -p "$FOLDER/_misc"
mv [non-video files] "$FOLDER/_misc/"

If user chooses to delete:

rm [non-video files]

Step 3: Remove Short Videos

Use AskUserQuestion to ask about short video threshold:

Question: "Would you like to remove very short videos?" Options:

  • "Yes, remove videos shorter than 1 second (default)"
  • "Yes, let me specify a duration"
  • "No, keep all videos"

If user wants to specify duration, ask them to type the threshold in seconds.

Use ffprobe to check each video's duration:

ffprobe -v quiet -show_entries format=duration -of csv=p=0 "$VIDEO_FILE"

List all videos shorter than the threshold, show their filenames and durations, then confirm deletion:

rm "$SHORT_VIDEO"

Step 4: Extract Frames and Analyze Videos with AI Vision

For each remaining video file, extract representative frames using ffmpeg:

# Create temp directory for frames
mkdir -p /tmp/video_frames

# Extract 4 evenly-spaced frames from each video
# (at 10%, 30%, 60%, 90% of duration)
DURATION=$(ffprobe -v quiet -show_entries format=duration -of csv=p=0 "$VIDEO")
ffmpeg -ss $(echo "$DURATION * 0.10" | bc) -i "$VIDEO" -frames:v 1 /tmp/video_frames/"${BASENAME}_01.jpg" -y -loglevel quiet
ffmpeg -ss $(echo "$DURATION * 0.30" | bc) -i "$VIDEO" -frames:v 1 /tmp/video_frames/"${BASENAME}_02.jpg" -y -loglevel quiet
ffmpeg -ss $(echo "$DURATION * 0.60" | bc) -i "$VIDEO" -frames:v 1 /tmp/video_frames/"${BASENAME}_03.jpg" -y -loglevel quiet
ffmpeg -ss $(echo "$DURATION * 0.90" | bc) -i "$VIDEO" -frames:v 1 /tmp/video_frames/"${BASENAME}_04.jpg" -y -loglevel quiet

Also detect bad footage quality:

# Check for all-black frames: compute mean brightness of frame
ffmpeg -i "$VIDEO" -ss $(echo "$DURATION * 0.5" | bc) -frames:v 1 -vf "blackdetect=d=0.1:pix_th=0.10" -f null - 2>&1

# Check for excessive shakiness using scene detection / motion vectors
ffmpeg -i "$VIDEO" -vf "select='gt(scene,0.4)',setpts=N/TB" -frames:v 5 /tmp/video_frames/"${BASENAME}_shake_%02d.jpg" -y -loglevel quiet 2>&1

Use the Read tool to load the extracted frame images, then analyze ALL videos together in one AI analysis pass:

Analyze each video's frames and produce for each video:

  1. Category: A short label in the user's language describing the content (e.g., highway driving, city street, nature scenery, indoor footage, interview, sports, aerial, food, live event)
  2. Quality issues:

- all_black: frames are mostly black (>80% black pixels) - shaky: excessive camera movement/shake visible - blurry: extremely out of focus - none: no issues

After analyzing all videos, present a summary table to the user:

Filename            Duration  Category         Quality
video001.mp4        00:32     highway driving  none
video002.mp4        01:15     city street      shaky
video003.mp4        00:08     nature scenery   all black
...

Step 5: Handle Bad Quality Videos

If any videos were flagged with quality issues (all_black, shaky, blurry):

Use AskUserQuestion:

Question: "The following videos have quality issues: [list filenames and issue types]. How would you like to handle them?" Options:

  • "Delete all problematic videos"
  • "Move to _rejected subfolder"
  • "Keep them, do nothing"
  • "Decide one by one"

If "Decide one by one", for each bad video use AskUserQuestion with options: Delete / Move to _rejected / Keep

Execute the chosen action for each video.


Step 6: Classify Videos into Numbered Subfolders

Based on the AI analysis categories, propose a folder structure:

  1. Collect all unique categories from the analysis
  2. Sort categories by number of videos (most videos first)
  3. Assign two-digit numbers: 01_, 02_, etc.

Show the proposed structure to the user (folder names in the user's language):

Proposed folder structure:
01_highway_driving  (12 videos)
02_city_street      (8 videos)
03_nature_scenery   (5 videos)
04_indoor           (3 videos)

Use AskUserQuestion:

Question: "Does the proposed folder structure look good?" Options:

  • "Looks good, proceed"
  • "I need to rename some categories"
  • "I need to merge some categories"

If user wants adjustments, ask them to specify changes (use Other input), then update the plan.

Execute the file moves:

mkdir -p "$FOLDER/01_highway_driving"
mv "$VIDEO" "$FOLDER/01_highway_driving/"

After moving all files, confirm completion and show the final structure:

find "$FOLDER" -type d | sort

Step 7: Refine a Category (Optional)

Use AskUserQuestion:

Question: "Would you like to further organize any category folder?" Options:

  • "No, all done"
  • "Yes, let me choose a category"

If user wants to refine, ask which category folder they want to work on (list the created folders as options).

Then ask:

Question: "How would you like to organize this folder?" Options:

  • "Group by time of day (morning / afternoon / evening)"
  • "Group by quality (picks / normal)"
  • "Group by length (short / long)"
  • "Let me describe how"

Execute the requested sub-organization using the same AI analysis data already collected, or re-analyze if needed.

After completing, loop back to Step 7 to ask if any other category needs refinement.


Technical Notes

Prerequisites

  • ffmpeg and ffprobe must be installed (brew install ffmpeg)
  • Use which ffmpeg to verify before starting

Performance Tips

  • Process frames extraction in batches to avoid overwhelming the system
  • For large folders (>50 videos), inform the user this may take a few minutes
  • Clean up temp frames after analysis: rm -rf /tmp/video_frames

Error Handling

  • If a video file is corrupted and ffprobe fails, mark it as "unreadable" and ask user separately
  • If ffmpeg frame extraction fails, skip that video's frames and note in analysis

Folder Safety

  • Never delete files without explicit user confirmation
  • Always show what will be deleted/moved before executing
  • If unsure, prefer moving to a subfolder over permanent deletion

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

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

04

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

补充不同宿主或平台的使用分布数据

能力 5

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

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

平台分布

OpenClaw

96.89%
按下载量换算2,902

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

权限需确认

当前来源未能明确判断权限范围,默认进入异常复核队列。

安装前确认

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

来源信息

继续浏览同类 Skills