Communitygithub.com

oliverhees/hermes-motion-pack

Ingests the user's own footage (clips, gameplay, events, vlogs, screen recordings) for a highlight video — makes proxies, detects scene cuts, scores every second by motion, loudness and speech, transcribes, and writes SHOTLIST.json with the best candidate moments. Use when the user hands over video files/folders, says "aus meinem Material", "Footage", "beste Momente", "Highlights rausziehen", "schneid mir das zusammen", or before mp-highlight when real footage is the basis.

hermes-motion-pack とは?

hermes-motion-pack is a Claude Code agent skill that ingests the user's own footage (clips, gameplay, events, vlogs, screen recordings) for a highlight video — makes proxies, detects scene cuts, scores every second by motion, loudness and speech, transcribes, and writes SHOTLIST.json with the best candidate moments. Use when the user hands over video files/folders, says "aus meinem Material", "Footage", "beste Momente", "Highlights rausziehen", "schneid mir das zusammen", or before mp-highlight when real footage is the basis.

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/oliverhees/hermes-motion-pack/tree/HEAD/skills/mp-footage

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

mp-footage — find the moments

Goal: turn hours of material into a ranked SHOTLIST.json the editor (mp-highlight) can cut from. Never watch everything frame by frame; let the scripts rank, then look only at the candidates.

Steps

  1. Inventory: bash <skill-dir>/scripts/inventory.sh <folder> → footage/INVENTORY.json (duration, fps, resolution, audio) and 720p proxies in footage/proxy/ (edit on proxies, render from originals).
  2. Scan: python3 <skill-dir>/scripts/scan.py footage/proxy/<file>.mp4 --out footage/scan_<name>.json --intent action|emotion|recap → scene cuts + per-second scores (motion, loudness, speech-likelihood) + top moments.
  3. Transcribe if speech matters: npx hyperframes transcribe <file> (or whisper if installed) → footage/<name>.words.json. Quotes with timestamps become title candidates.
  4. Candidates: merge scans into SHOTLIST.json (template below). Rank by the brief's intent (action → motion+loudness; emotion → speech+faces; recap → variety across time). Target 3× the material the final cut needs.
  5. Look at candidates: bash <skill-dir>/scripts/peek.sh <file> <t1> <t2> ... → one 12-frame strip per candidate. Keep the ones that read instantly, drop the rest. Ask the user only when two candidates are equal.
  6. Hand off to mp-highlight with SHOTLIST.json.

SHOTLIST.json

{ "source": "footage/", "intent": "action", "target_duration_s": 30,
  "shots": [
    { "id": "A01", "file": "gameplay_01.mp4", "in": 83.4, "out": 86.1, "score": 0.91,
      "why": "peak motion + crowd loudness", "tags": ["action","wide"], "quote": null, "crop_x": 0.5 },
    { "id": "A02", "file": "vlog_03.mp4", "in": 412.0, "out": 414.6, "score": 0.84,
      "why": "laugh + close-up", "tags": ["emotion","close"], "quote": "das war verrückt", "crop_x": 0.62 }
  ] }

Rules

  • Shots are 0.6–3.0 s for action, 2–5 s for emotion, never longer than 6 s in a highlight.
  • Keep a 0.3 s handle on both sides for the editor.
  • Variety: alternate wide/close, loud/quiet, fast/slow. Flag it in tags.
  • Vertical delivery from horizontal footage → note the subject position per shot (crop_x 0–1) so the editor reframes instead of centre-cropping.
  • Never upload the user's footage anywhere; everything stays local.

references/scoring.md explains the scores and how to tune thresholds per material type.

Files in this skill

  • references/scoring.md
  • scripts/inventory.sh
  • scripts/peek.sh
  • scripts/scan.py

Individual skills in this repo

This repo contains 10 individual skills — each has its own dedicated page.

oliverhees/hermes-motion-pack

Studio-grade motion graphics and cinematic highlight videos built as code with HyperFrames (HTML + GSAP → MP4) plus ffmpeg edits of real or AI footage. ALWAYS use for any video, spot, reel, teaser, trailer, intro, logo sting, kinetic typography, product film, social clip, highlight/recap/aftermovie/montage, "mach mir ein Video", "Motion Graphics", "Werbespot", "Reel", "Cinematic", "Animation" — even if the user does not say HyperFrames. Interviews the user first, then chains mp-brief → mp-style → mp-storyboard → (mp-footage | mp-genclip) → mp-build / mp-highlight → mp-audio → mp-critique → mp-ship with approval gates.

oliverhees/hermes-motion-pack

Step 5 of motion-pack. Produces the audio layer — voice-over via ElevenLabs (API key only from the ELEVENLABS_API_KEY environment variable), music bed, SFX on hits, sidechain ducking and two-pass loudness normalisation (voice -16 LUFS, music 12 LU under, mix -14 LUFS, true peak -1 dBTP). Use after mp-build, or when the user mentions "Stimme", "Voice-over", "Musik", "Sound", "LUFS", "zu leise", "zu laut", "ElevenLabs".

oliverhees/hermes-motion-pack

Step 1 of motion-pack. Runs a short, tap-friendly interview (max 2 rounds × 3 questions) and writes BRIEF.md for a motion graphics video — goal, audience, hook, format, length, must-show, sources, audio wishes. Use whenever a video is requested and no BRIEF.md exists yet, or the user says "Briefing", "interview me", "was brauchst du von mir".

oliverhees/hermes-motion-pack

Step 4 of motion-pack. Builds the HyperFrames project from STORYBOARD.md and STYLE.md — one HTML scene per beat with GSAP choreography, deterministic timing, real assets, then lint → draft render. Use after mp-storyboard, or when the user says "bau das", "build", "render", "Szene ändern", "HyperFrames", "GSAP", "animiere".

oliverhees/hermes-motion-pack

Step 6 of motion-pack. Makes the agent look at its own render — contact sheet, phone-size sheet, 12-frame strips around fast moments, loop-seam check, determinism check — then scores 8 criteria 1–10 as a harsh motion director, lists the 3 biggest problems with timestamps, and loops back to mp-build until every score is ≥ 8. Use after any render, or when the user says "sieht mid aus", "check das Video", "Kritik", "QC", "warum wirkt das billig".

oliverhees/hermes-motion-pack

Generates AI video clips (Seedance, Veo, Kling via the kie.ai MCP server) and AI still frames (gpt-image, nano-banana) as the basis for cinematic highlight videos and trailers — shot-by-shot prompts from the storyboard, consistent look via reference frames and seeds, download, registration in SHOTLIST.json. Use when the user has no footage but wants cinematic shots, says "generier mir Clips", "KI-Video", "Seedance", "Veo", "B-Roll erzeugen", or when mp-highlight needs shots that do not exist.

oliverhees/hermes-motion-pack

Cuts cinematic highlight videos, trailers/teasers and event recaps from real footage (mp-footage), AI clips (mp-genclip) or pure code — beat-synced edit plan, speed ramps, cinematic grade (teal-amber, bleach, film grain, letterbox), kinetic titles, glitch and light-leak overlays, data overlays, all composited in HyperFrames on top of an ffmpeg base cut. Use for "Highlight-Video", "Cinematic", "Trailer", "Recap", "Aftermovie", "Best-of", "Montage", "auf den Beat schneiden", "episch".

oliverhees/hermes-motion-pack

Step 7 of motion-pack. Final render in every requested format (16:9, 9:16, 1:1, 4:5, GIF/WebM), writes DELIVERY.md (files, specs, loudness, sources, unverified claims, next steps), optionally packages the finished pipeline as a reusable skill so the next video is one sentence. Use when critique is green, or the user says "export", "final", "liefern", "alle Formate", "fertig machen".

oliverhees/hermes-motion-pack

Step 3 of motion-pack. Writes STORYBOARD.md — beats with timestamps, a state list per beat (what is on screen, where, what changes), voice lines, SFX hits and transitions — from BRIEF.md and STYLE.md. Use after mp-style, or when the user asks for "Storyboard", "Beats", "Ablauf", "Szenen", "timing".

oliverhees/hermes-motion-pack

Step 2 of motion-pack. Turns BRIEF.md into STYLE.md — a reference-driven design doc with palette, typography, motion language, sound character and a forbidden list. Offers 8 built-in style presets (clean-product, editorial-brutal, neo-glass, kinetic-type, hand-drawn, cinematic-dark, data-minimal, retro-print). Use when a video needs a look, the user says "Style", "Look", "Design", "wie soll es aussehen", or after mp-brief.

関連スキル