Rebases the skill on the HyperFrames ecosystem (#34, milestones M0–M6). The finding behind it: roughly 70–85% of the phase prose had drifted into a hand-maintained shadow copy of the upstream manual, while the ecosystem had shipped real owners for nearly all of it. This release deletes the shadow copy and keeps the layer that has no upstream equivalent — the consent doctrine, revision fingerprints, capture determinism, and reviewed captions.
▶ Watch the 90-second v0.2.0 promo — produced end-to-end by this release itself, with a human granting all six phase approvals. The MP4 is attached below. It is a separate project from example/, not a render of it.
No generated project is stranded: nothing is gated on the storyboard's shape, and a project created before this release still resumes.
Upgrading
npx skills add nebrass/hve-video-director --globalNo migration is required. v0.1.0 and its published asset are unchanged — this is a new version, not an amended one.
Added
- The reasoning layer (M1) —
reasoning/andgrammar/are first-class skill directories.reasoning/scene-analysis.mdowns the twelve per-frame questions, the closed set of director keys, and the single-sourced cognitive-load budgets;reasoning/capability-catalog.mdowns the capability-tag vocabulary and turns derived tags into a runtime. compat/ecosystem.md— the compatibility thin waist (ADR-007). The only file permitted to hold intra-skill paths for ecosystem skills, so an upstream relayout is a one-row edit. Enforced both ways bytest_compat_pointers.py.- Frame packets (M5) — a builder receives one ephemeral packet per frame and returns exactly one scene file. Regenerated every run, never committed.
- A numeric seam gate (M3) — transition quality was enforced by prose DON'Ts; Phase 4 now writes a seam ledger, stamps it (
SEAM_STAMP) and verifies it (SEAM_VERIFIER). Dissolves cannot be ledger rows, and Phase 4 reports the unverified boundary count either way. - The official storyboard shape (M4) — buys the upstream parser, Studio contact-sheet review, and the structured frame-comments channel; this skill's keys ride along as preserved extras.
- ADR-001…ADR-008, plus the design review that produced them.
Changed
- Phase-5 audio generation is delegated to the
media-useengine (M2). Delegation stops at generation: the exact-track music confirmation, the caption review contract, the verified mix recipes and render approval remain this skill's governance (ADR-001). npx hyperframes checkis the required final gate;validate/inspect/layoutare deprecated aliases.example/is regenerated — a 60s promo the skill made about itself (product_surface: none, 8 frames, 4 verified z-seams, Three.js on exactly one frame). Its.hve/brief-state.jsonis the consent record that makes the claim checkable.BRIEF_FORMATwas deliberately not adopted — its run-shape contract skips questions the request already answers, which contradicts the consent doctrine.
Removed
- The local acquisition fallbacks (M6).
generate_voiceover.pyloses its ElevenLabs half, but the file survives:--assemble-onlyis the section assembler both audio paths still use.
Fixed
- Sparse keyframes in normalized terminal clips (#35) —
aggemits change-only frames, so x264 could leave keyframes 8.33s apart and the renderer produced a black or frozen clip whilelint,checkand the seam gate all passed green. The GOP is now pinned to the output fps everywhere it is set, andstitch_clip.pyderives it from--fpsso the two cannot desync.
Full changelog: v0.1.0...v0.2.0
