Close the learning loop from real YouTube performance. Reads the newest YouTube Studio "Table data.csv" export, attributes each video's views/CTR/retention to topic + named-entity tokens, and rewrites the AUTO-managed block of schedule-drip's topics.scorelist (GO winners / HOLD dead niches) plus appends proven-winner…
Mix a trendy looped background track under a finished short, attenuated well below the speaker (-18dB). Picks a random song from ./songs/ /, or recurses across every mood folder when category is "ALL SONGS" (the default). Avoids repeating the last 5 picks via ./songs/.recent. Runs after loudnorm so the bed never…
Snap each picked segment's [t0, t1] to a sentence boundary so shorts begin and end on full thoughts instead of mid-sentence. Claude reads ±extend seconds of context per span and picks clean sentence-completing endpoints from whisper transcript-line boundaries. Runs after verify-coherence, before cut-clip.
Composite both persistent brand PNGs — the top "Original video: " credit chyron (y≈4%) and the bottom @C0BALTCUT watermark (y≈97.5%) — onto a finished short in ONE ffmpeg pass. The credit appears only in the FINAL CREDITTAIL seconds (default 3.0s) — it fades in at dur-tail and holds to the end so it lands on the…
Deferred end-of-run B-roll cache eviction. For ONLY the B-roll source videoids this run ingested (from each brollplan.json's ingestedvideoids), runs mcptube remove AND deletes the local work/ /broll/.mp4 cache. Never touches the podcast source, unrelated library videos, or brollplan.json (placement metadata persists…
Hard-cut full-frame B-roll cutaways onto a 1080x1920 clip per brollplan.json. During each [t0,t1] the entire frame is replaced by the cutaway (instant in/out, no crossfade/zoom); 16:9 source is scale-to-cover + SUBJECT-cropped to 1080x1920 with no bars — the slack-axis offset is chosen subject-first (MediaPipe face ->…
Claude picks CONTEXTUAL/scene-level anchors from a clip transcript (literal objects, establishing shots, evocative concept footage matched to the story's tone — not just keyword nouns) and sources full-bleed B-roll cutaways via keyless yt-dlp YouTube search + mcptube frame-sampling + Claude vision verify. The verify…
Burn karaoke-style word-timed subtitles into a video. Takes a transcript JSON with word timestamps and a video, emits a new video with subtitles rendered in. Renders text as a PNG overlay sequence (the local ffmpeg build has no libass/drawtext).
Group a clip's word-timed transcript into phrase-sized caption chunks via Claude. Replaces the rolling 4-word window in burn-subtitles. Each chunk is one self-contained phrase that swaps in as a whole unit.
Trim a video to a [t0, t1] time range using ffmpeg. Stream-copies where possible to avoid re-encoding. Use as the cheap building block for cutting source video into per-short slices.
Apply a trim-filler keeps.json to a clip's video. Reads the kept time ranges and re-encodes the clip with ffmpeg select/aselect so kept ranges are concatenated and removed spans (filler, trail-offs, digressions) disappear. Output aligns with the trimmed transcript trim-filler wrote, so downstream subtitle / caption /…
Name the CENTRAL SUBJECT (spine) of a long-form source so selection can tell on-theme moments from clip-shaped tangents. Claude reads the topic chapter list (topics.json) + source duration and emits thesis.json = {subject, thesissentence, keythreads[]} — the one durable source-level "what is this video about" artifact…
An agentic, vision-driven final QA/repair pass — a Claude "director" WATCHES the finished short (a contact sheet of frames sampled across the whole clip + the transcript + the sidecar plans) and decides, in natural language, what is broken ANYWHERE (cold open, dead/rambling tail, a tonally-wrong b-roll match, a…
Composite a closing CTA banner ("FOLLOW FOR MORE" + @C0BALTCUT) over the last 2.5s of a finished short so it lands on an intentional beat instead of dead-stopping on a dangling word. Timeline-preserving (audio copied, duration identical), deterministic, non-fatal. ENDCARD=0 skips.
Reframe a horizontal (16:9) clip to 9:16 (1080x1920) by punching in to FILL the frame — never letterbox, no blur bars. Detects scene cuts and computes ONE static crop box per shot. Clusters face signatures across all shots to find the dominant speaker (storyteller); on multi-face shots it picks the speaker by…
The pre-fanout LEARNING GATE. start.sh finishes SPAN 0 alone (through the normal edit/captions/completion chain) before any lane launches, then this skill records a shot-scraper video demo of a generated per-span REVIEW PAGE (the 9:16 player + the grade/tier + the retention signals with the failing one flagged), has a…
Deterministic, grade.json-routed repair of a short's cold open (the first 2s swipe gate). Reads a clip's grade.json fixroutes and runs gated ops in order — brollopentruncate (drop any b-roll cutaway overlapping [0,FIXCOOPENGUARDSEC] and re-composite so frame 1 is the speaker), shot0repunch (re-run fill-vertical face…
Generate a per-clip third-person engagement-driven title card text. Claude reads the clip's transcript, the source ingest.json metadata, and (optionally) pick-segments' per-span judgment (topic, rationale, suggested title) so it reads the speaker's register — sincere vs ironic vs joking — before titling. Emits a…
Per-clip upload-readiness grade (0-99) read off a FINISHED .mp4 plus its persisted sidecar plans — the first skill that inspects a delivered pixel-level artifact, the on-disk proxy for YouTube's VVSA swipe gate. Deterministic retention-proxy floor (frame1isface, letterboxbars, creditlitatopen, firstvisualchange…
Download a source video from a YouTube/URL into ./work/ /source.mp4 using yt-dlp, and emit ingest.json with metadata (title, duration, fps, url, sourceid). First step of the shorts pipeline.
Manufacture "multi-cam" hard cuts on static talking-head stretches by alternating a base framing with tighter punch-in reframings of the SAME speaker, each cut snapped to a word start so it lands on speech. Deterministic, no Claude. Timeline-preserving — audio is copied untouched and total duration is identical, so…
Overlay the branded like/subscribe CTA animation — channel gem avatar + @C0BALTCUT handle + subscribe/like/bell click choreography — for 4 seconds WITHIN THE FIRST THIRD of a finished short (start clamped to end by the 1/3 mark, floored after the 2.5s title card; early placement so viewers who bail never miss it). The…
Normalize audio loudness to broadcast levels using ffmpeg's two-pass loudnorm filter. Measures the input, then applies normalization with the measured parameters. Use as a final-stage audio leveling step.
Sanitize a generated title into a filesystem-safe filename for the final saved short. Reads the title text emitted by generate-title and prints a kebab-case .mp4 filename. Pure string op — no Claude call.
★not rated 2 1mo agoA47 tokens
At most 3 mods per repository are shown here, and a mod shipped inside a plugin is left to that plugin's page — the rest are on their repository pages: