Auto Clipper
by @austindixson
Automatically create clips and videos from media files in a specified folder. Uses Agent Swarm for intelligent task delegation and supports cron-based schedu...
clawhub install auto-clipperπ About This Skill
name: auto-clipper displayName: AutoClipper description: Automatically create clips and videos from media files in a specified folder. Uses Agent Swarm for intelligent task delegation and supports cron-based scheduling. version: 1.0.0
AutoClipper
Description
Automatically create clips and videos from media files in a specified folder. Uses Agent Swarm for intelligent task delegation and supports cron-based scheduling.
AutoClipper
Automatic Video Clip & Highlight Generator for OpenClaw.
v1.0.0 β Design draft. Automatically scan a folder for media files, create clips/highlights using ffmpeg, and organize output. Cron-ready for scheduled automation.
Installation
# Add to crontab (crontab -e)
Run every hour at minute 0
0 * * * * /Users/ghost/.openclaw/workspace/skills/auto-clipper/scripts/run.shOr run daily at 9 AM
0 9 * * * /Users/ghost/.openclaw/workspace/skills/auto-clipper/scripts/run.sh --output daily
Usage
# Run once (scan and process)
python3 scripts/auto_clipper.py runDry run (show what would be processed)
python3 scripts/auto_clipper.py run --dry-runForce reprocess all files
python3 scripts/auto_clipper.py run --forceStart continuous watcher (not cron-based)
python3 scripts/auto_clipper.py watchShow status
python3 scripts/auto_clipper.py status
Purpose
AutoClipper enables OpenClaw agents to automatically:
Architecture
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β AutoClipper Skill β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β 1. Watch Folder (configurable input path) β
β β β
β 2. Media Scanner (find new files, filter by extension) β
β β β
β 3. Agent Swarm delegation (analyze β clip strategy) β
β β β
β 4. Clip Engine (ffmpeg operations) β
β β β
β 5. Output Organizer (save to output folder, optional SNS) β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Components
1. Watch Folder Scanner
.mp4, .mov, .mkv, .avi, .webmwatchFolder, fileExtensions, processedLog2. Media Analyzer (via Agent Swarm)
[{start, end, label, priority}]3. Clip Engine (ffmpeg)
4. Output Manager
output/YYYY-MM-DD/{original}-{timestamp}-{index}.mp45. Cron Scheduler
0 * * * * (hourly), 0 9 * * * (daily at 9am)Configuration (config.json)
{
"watchFolder": "~/Downloads/Recordings",
"outputFolder": "~/Videos/Clips",
"fileExtensions": [".mp4", ".mov", ".mkv"],
"processedLog": "logs/processed.json",
"clipSettings": {
"defaultDuration": 60,
"minClipDuration": 10,
"maxClipDuration": 300,
"outputCodec": "h264",
"outputFormat": "mp4"
},
"intentRouter": {
"enabled": true,
"model": "openrouter/minimax/minimax-m2.5"
},
"cron": {
"schedule": "0 * * * *",
"enabled": false
},
"notifications": {
"enabled": false,
"channel": "discord"
}
}
Tools Needed
| Tool | Purpose | Required | |------|---------|----------| | ffmpeg | Video transcoding, trimming, clipping | Yes | | ffprobe | Media metadata extraction (duration, codec) | Yes | | Agent Swarm | Analyze media and determine clip strategy | Yes | | OpenClaw message | Send notifications when clips are ready | Optional | | OpenClaw nodes | Screen recording capture (live input) | Optional | | file system | Watch folder, output management | Yes |
Agent Swarm integration
When AutoClipper finds new media, it delegates analysis:
User task: "Analyze video and suggest clip timestamps for meeting highlights"
β router.spawn() β sessions_spawn(task, model)
β Returns: [{start: "00:05:30", end: "00:07:45", label: "action item discussion"}, ...]
Prompt template for media analysis:
Analyze this video file: {filename}
Duration: {duration_seconds} seconds
Extract: Key moments worth clipping as short highlights (30-90 seconds each)
Output: JSON array of {start_timestamp, end_timestamp, description}
Directory Structure
auto-clipper/
βββ SKILL.md # This file
βββ _meta.json # Skill metadata
βββ config.json # Configuration
βββ README.md # Setup instructions
βββ scripts/
β βββ auto_clipper.py # Main entry point
β βββ scanner.py # Watch folder scanner
β βββ clipper.py # ffmpeg wrapper
β βββ analyzer.py # Agent Swarm integration
β βββ run.sh # Cron launcher
βββ logs/
βββ processed.json # Track processed files
Keywords
Skill Name Ideas
1. AutoClipper β (chosen) 2. ClipForge 3. MediaMason 4. VideoHarvest 5. HighlightHub 6. ClipStream 7. MediaSnip 8. AutoTrim
Implementation Phases
Phase 1: Core (MVP)
Phase 2: Intelligence
Phase 3: Automation
Phase 4: Advanced
Notes
-c copy for fast trimming (no re-encode)π‘ Examples
# Run once (scan and process)
python3 scripts/auto_clipper.py runDry run (show what would be processed)
python3 scripts/auto_clipper.py run --dry-runForce reprocess all files
python3 scripts/auto_clipper.py run --forceStart continuous watcher (not cron-based)
python3 scripts/auto_clipper.py watchShow status
python3 scripts/auto_clipper.py status
π Tips & Best Practices
-c copy for fast trimming (no re-encode)