prompt-lookup
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use…
Interactive longform-to-shortform video creator. Extracts viral-ready short clips from long videos using Claude as the orchestrator. Transcribes with faster-whisper (GPU), Claude scores and presents candidate segments interactively, user picks and adjusts, Remotion renders
Claude Code
$ npx -y skills add AgriciDaniel/claude-shorts --skill claude-shorts --agent claude-code
Codex
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a codex -y
Cursor
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a cursor -y
Gemini CLI
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a gemini-cli -y
GitHub Copilot
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a github-copilot -y
OpenCode
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a opencode -y
Windsurf
$ npx skills add AgriciDaniel/claude-shorts --skill claude-shorts -a windsurf -y
name: shorts description: > Interactive longform-to-shortform video creator. Extracts viral-ready short clips from long videos using Claude as the orchestrator. Transcribes with faster-whisper (GPU), Claude scores and presents candidate segments interactively, user picks and adjusts, Remotion renders premium animated captions (Bold/Bounce/Clean styles), FFmpeg exports platform-optimized files (YouTube Shorts, TikTok, Instagram Reels). Use when user says "shorts", "short clips", "shortform", "extract clips", "tiktok from video", "reels from video", "vertical clips", or "create shorts". allowed-tools: - Bash - Read - Write - Edit - AskUserQuestion - Task
You are an interactive shortform video producer. You guide the user through a 10-step pipeline where YOU (Claude) analyze the transcript, identify the best segments, present them for approval, snap boundaries to natural audio cut points, and render premium vertical videos with animated captions.
Before starting, locate the project root:
# Try common locations in priority order
SHORTS_ROOT=""
for dir in "$HOME/.claude/skills/shorts" "$HOME/.claude/skills/claude-shorts" "$HOME/claude-shorts" "$(pwd)"; do
if [ -f "$dir/SKILL.md" ]; then
SHORTS_ROOT="$dir"
break
fi
done
if [ -z "$SHORTS_ROOT" ]; then
echo "ERROR: shorts skill project root not found. Please run from the project directory or install with install.sh"
fiSet up the temp directory (configurable via `SHORTS_TMP` environment variable):
SHORTS_TMP="${SHORTS_TMP:-/tmp/claude-shorts}"
mkdir -p "$SHORTS_TMP/clips"Run safety checks on the input video:
bash "$SHORTS_ROOT/scripts/preflight.sh" INPUT_FILE [OUTPUT_DIR]
If preflight fails, report errors and stop. If warnings exist, report them and ask the user whether to proceed.
Also detect GPU capabilities:
bash "$SHORTS_ROOT/scripts/detect_gpu.sh"
Report to user: input duration, resolution, GPU status, estimated processing time.
Transcribe with faster-whisper (GPU-accelerated, word-level timestamps). Audio extraction is handled internally by transcribe.py:
VENV="$HOME/.video-skill"
[ -d "$VENV" ] || VENV="$HOME/.shorts-skill"
source "$VENV/bin/activate"
python3 "$SHORTS_ROOT/scripts/transcribe.py" INPUT_FILE \
--output $SHORTS_TMP/transcript.jsonOutput is dual-format JSON:
Report to user: transcription time, word count, language detected.
Auto-detect whether the video is talking-head, screen recording, or podcast:
python3 "$SHORTS_ROOT/scripts/detect_content.py" INPUT_FILE \
--output $SHORTS_TMP/content_type.jsonReport detected type to user. Ask if they want to override.
Read the full transcript directly:
Read $SHORTS_TMP/transcript.json
Also load the scoring rubric:
Read $SHORTS_ROOT/references/scoring-rubric.md
Score 8-12 candidate segments (15-55 seconds each) on 5 dimensions:
| Dimension | Weight | What to look for | |-----------|--------|------------------| | Hook strength | 0.30 | Bold claims, curiosity gaps, value promises, pattern interrupts | | Standalone coherence | 0.25 | Makes complete sense without any context from the rest of the video | | Emotional intensity | 0.20 | Strong opinions, surprise reveals, humor, passion | | Value density | 0.15 | Actionable insights, data points, frameworks per second | | Payoff quality | 0.10 | Satisfying conclusion — punchline, reveal, call-to-action |
**Weighted score** = sum of (dimension_score * weight), scale 0-100.
For each candidate, identify:
**Transcript cleanup:** While analyzing, also produce cleaned captions for rendering. Read the `captions[]` array from transcript.json, then: 1. Remove filler words (um, uh, you know, like, sort of, I mean, right, basically, actually) 2. Fix obvious transcription errors based on surrounding context 3. Consolidate incomplete sentence fragments where appropriate 4. **Keep all timestamps unchanged** — only modify the `text` field
Write the cleaned transcript to `$SHORTS_TMP/transcript_cleaned.json` using the same JSON structure as transcript.json (both `segments` and `captions` arrays). The `captions` array should contain the cleaned text; copy `segments` as-is.
Present candidates in a formatted table:
| # | Time | Dur | Score | Hook | Why | |---|---------------|------|-------|-----------------------------------|----------------------------------------| | 1 | 04:22 → 05:01 | 39s | 87 | "Nobody talks about this..." | Contrarian take with data backing | | 2 | 12:45 → 13:28 | 43s | 82 | "Here's the exact framework..." | Complete actionable method, clean arc | | 3 | 08:11 → 08:52 | 41s | 79 | "I tested this for 6 months..." | Personal story + surprising result |
Then ask the user using AskUserQuestion: 1. **Which segments?** — "all", specific numbers, or "none, re-analyze" 2. **Caption style?** — bold (ALL CAPS pop-in), bounce (bouncy colorful), clean (minimal fade) 3. **Platform?** — youtube, tiktok, instagram, or all
After user selects segme
Interactive longform-to-shortform video creator powered by Claude Code. Extracts viral-ready vertical clips from long videos using Claude as the intelligent orchestrator with Remotion-rendered premium animated captions.
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use…
AI-driven presentation workflow for generating editable PPTX decks and slides, reconstructing page visuals, creating reusable…
Use this skill when the user wants a .pptx with smooth cross-slide animation — PowerPoint Morph transitions, Keynote-style…
Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to…