muapi-youtube-shorts skill
Auto-generate viral 9:16 YouTube Shorts (or TikTok / Reels clips) from a long-form video. Thin platform-aware wrapper around the AI Clipping skill — picks sensible defaults for short-form social platforms (9:16, 30–60s sweet spot) and delegates the actual highlight extraction + crop to muapi.ai's `/ai-clipping` endpoint.
Is the muapi-youtube-shorts skill safe?
Clean: nothing in its files matched our rules. We read 2 files in the folder on 2026-09-28.
No findings.
Install the muapi-youtube-shorts skill
A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.
git clone --depth 1 https://github.com/SamurAIGPT/Generative-Media-Skills.git /tmp/Generative-Media-Skills mkdir -p ~/.claude/skills cp -r /tmp/Generative-Media-Skills/library/social/youtube-shorts ~/.claude/skills/muapi-youtube-shorts
In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub
The instructions your agent would load
SKILL.md as published, without the frontmatter. Read it on GitHub
YouTube Shorts Generator
Long video → ranked vertical short clips, tuned for short-form social.
This skill is a platform-aware preset over the AI Clipping primitive. It picks the right aspect ratio and clip count for the target platform and delegates highlight extraction, dedupe, and face-tracked auto-crop to muapi.ai's managed /ai-clipping endpoint.
Reference implementation: https://github.com/SamurAIGPT/AI-Youtube-Shorts-Generator Underlying API: https://muapi.ai/playground/ai-clipping
When to Use This vs. AI Clipping
Agent Execution Protocol
Step 1 — Collect Inputs
If the user gave only a URL, run with platform defaults — don't block.
Step 2 — Verify Prerequisites
- muapi-cli installed and authed (muapi auth configure)
- MUAPIAPIKEY available
That's it. Transcription, highlight ranking, dedupe, and cropping all run server-side — no ffmpeg, no Python, no Whisper, no LLM keys needed locally.
Step 3 — Run the Pipeline
bash library/social/youtube-shorts/scripts/run-youtube-shorts.sh \
--source "<YOUTUBE_URL>" \
--platform shorts \
--num-clips 5 \
--viewThe script:
- Resolves the source (uploads local files to muapi CDN if needed).
- Picks platform defaults if --aspect-ratio / --num-clips aren't passed.
- Calls muapi edit clipping (the /ai-clipping endpoint) with the chosen params.
- Polls until done, prints a ranked summary, optionally downloads / opens clips.
What Happens Server-Side
The /ai-clipping endpoint runs the full pipeline:
- Transcribes the audio.
- Ranks highlights through a virality framework — hook moments, emotional peaks, opinion bombs, revelation moments, conflict, quotable lines, story peaks, practical value.
- Dedupes overlapping candidates by score.
- Top-N selects and face-tracks vertical crops.
Each clip ships with score (0–100), opening hook line, and a one-sentence "why it works" reason.
Platform Defaults
Override any default with --aspect-ratio / --num-clips.
Quick Invocation Patterns
Single video, defaults:
bash run-youtube-shorts.sh --source "https://youtube.com/watch?v=VIDEO_ID"TikTok preset — 5 clips, view in player:
bash run-youtube-shorts.sh --source "<URL>" --platform tiktok --viewSquare Instagram feed clips:
bash run-youtube-shorts.sh --source "<URL>" --platform feed --num-clips 3Batch — urls.txt with one URL per line:
xargs -a urls.txt -I{} bash run-youtube-shorts.sh --source "{}"Async submit (returns requestid, poll later):**
REQUEST_ID=$(bash run-youtube-shorts.sh --source "<URL>" --async --output-json - | jq -r '.request_id')
muapi predict wait "$REQUEST_ID" --download ./outputsOutput Schema
{
"source_video_url": "...",
"shorts": [
{
"title": "The one mistake that cost me $50K",
"start_time": 124.3,
"end_time": 187.6,
"score": 92,
"hook_sentence": "Nobody talks about this, but it killed my first startup...",
"virality_reason": "Opens with a number + regret, peaks on a contrarian lesson",
"clip_url": "https://.../short_1.mp4"
}
]
}When reporting back, surface for each clip: rank, score, time range, title, hook, and clip URL.
Common Mistakes to Avoid
- Wrong aspect ratio for the platform — Shorts / TikTok / Reels are 9:16. The platform preset handles this; only override if you know why.
- Padding to hit --num-clips — if the API returns fewer survivors, return what you have. Don't ship low-score filler.
- Re-running on a 404'd clip URL — re-fetch the same request_id with muapi predict wait rather than re-clipping.
Failure Modes
- API key missing or rejected — surface the error; don't fabricate a key.
- Job timed out — bump --poll-timeout and retry.
- Source URL not reachable — upload the file via muapi upload file and pass the returned URL.
- Fewer clips returned than requested — source had fewer rankable highlights. Return what came back with a note.
Done Criteria
The skill is done when:
- result.shorts has up to numclips entries, each with a working clipurl.
- The user has been shown the ranked list (score, time range, title, hook, URL).
- If --output-json was set, the file exists and parses.
More skills from SamurAIGPT/Generative-Media-Skills
- Amuapi-3d-logo-animationTransform a 2D logo into a premium 3D version and animate it with professional cinematic effects.
- Amuapi-action-figure-generatorConvert a photo of a person into a custom 3D action figure, complete with collectible toy packaging.
- Amuapi-ad-creativeGenerate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.
- Amuapi-ad-creativeGenerate a high-converting ad creative set — hero image, ad copy variations, and platform-optimized crops for Meta, Google Display, and LinkedIn.
- Amuapi-ai-clippingTurn a long video into N viral-ready short clips with a single managed API call. Wraps muapi.ai's `/ai-clipping` endpoint, which handles transcription, highlight ranking through a virality framework (hook / emotional peak / opinion bomb / revelation / conflict / quotable / story peak / practical value), overlap dedupe, and vertical face-tracking auto-crop server-side. No local Whisper, no local LLM, no GPU.
- Amuapi-ai-clippingTurn a long video into N viral-ready short clips with a single managed API call. Wraps muapi.ai's `/ai-clipping` endpoint, which handles transcription, highlight ranking through a virality framework (hook / emotional peak / opinion bomb / revelation / conflict / quotable / story peak / practical value), overlap dedupe, and vertical face-tracking auto-crop server-side. No local Whisper, no local LLM, no GPU.
- Amuapi-ai-fight-sceneGenerate a high-cut-density action / fight scene by first composing a 16-cell storyboard image, then driving Seedance 2.0 image-to-video off that storyboard. Stacks GPT-Image-2 (character sheet + storyboard), Nano-Banana-2 (environment concept), and Seedance 2.0 i2v.
- Amuapi-amazon-product-listingGenerate a complete Amazon product listing image set — hero image, lifestyle shot, infographic with features, and comparison/detail closeups optimized for Amazon standards.
- Amuapi-animal-video-generatorCreate a hilarious and ultra-realistic video of an anthropomorphic animal acting like a human vlogger in a real-world setting.
- Amuapi-award-ceremony-videoGenerate a 15-second cinematic awards-ceremony video — a host announces a winner from the stage, a spotlight finds them in the crowd, they walk up to the podium, receive the award, and the LED display reveals their name and "THE BEST ACTOR".
- Amuapi-blog-headerCreate a professional, eye-catching blog post header image sized for web (1200×628) with optional title composition guidance.
- Amuapi-brand-kitGenerate a cohesive brand visual kit — logo concept, color palette moodboard, and typography pairing suggestions.