Releases: heygen-com/hyperframes
v0.6.100
HyperFrames v0.6.100
Released on 2026-06-15.
Wires the SDK session into Studio (stage 7 steps 1-3b), adding shadow dispatch parity mode, persist-path reload, selection API, and HTTP persist adapter. Also adds motion verification and text occlusion detection to inspect.
Features
- Studio: Stage 7 step 3b — SDK shadow dispatch parity mode (69aa595f, #1450)
- Sdk,studio: Stage 7 step 3a — persistPath + SDK session reload-on-change (5fe87cc3, #1449)
- Studio: Stage 7 step 1 — wire SDK session into Studio (92e2c8ce, #1443)
- Sdk: Stage 7 step 2 — setSelection API (30ce1f35, #1442)
- Sdk: Stage 7 step 1 — http persist adapter (c19898e7, #1441)
- CLI: Declarative motion verification in inspect (#1437) (9175eced, #1459)
- CLI: Flag text occluded by opaque elements in inspect (1e548279, #1435)
Fixes
- CLI: Restore
hyperframes capture <url>; move video download to--videoflag (f8d9f512) - Core: Stop transport re-seek from clobbering Studio drag drafts (1ab7dcfe, #1464)
Docs & Examples
Full changelog
v0.6.99
HyperFrames v0.6.99
Released on 2026-06-15.
Introduces the HyperFrames SDK (session API, undo/redo, adapters, sub-composition scoped IDs), per-property-group keyframes with gesture recording and beat-snapping, batch rendering with variables, and the acorn-based GSAP parser.
Features
- Sdk: Stage 6 — sub-composition scoped ids (F9) (b158870d, #1434)
- Sdk: Stage 5 — export adapter factories from package root (f10f3425, #1432)
- Sdk: Stage 4 — canUndo/canRedo, removeElement GSAP cascade, override-set cleanup (9627e03f, #1431)
- Sdk: Can() returns CanResult; T4 dispatch-boundary tests (5ecaac1f, #1426)
- Sdk: File-backed fs adapter + setTiming GSAP sync; sdk-playground workspace (577a6898, #1458)
- CLI: Capture-video on-demand fetcher + capture pipeline robustness (6a024a36)
- Sdk,core: Phase 3b — 8 gsap/label ops + setClassStyle (6dcbb553, #1379)
- Core: Parse-parity suite for acorn parser (T6d) (8b56e558, #1370)
- Core: Acorn GSAP write path — magic-string offset-splice (T6c) (0fbda8ac, #1369)
- Core: Acorn GSAP read path with T6b differential corpus tests (be4a28ae, #1368)
- Studio: Scale GSAP positions on clip resize + shift on drag + diamond fixes (11b050de, #1448)
- CLI: Flag overlapping text blocks in inspect (abaf6717, #1436)
- Studio: Drag keyframes with live beat snapping (e6da47d8, #1439)
- Studio,cli: Music beat detection with timeline guides + headless beats CLI (d9f69f61, #1424)
- Skills: Video-creation workflow suite — routable workflows (211e0adb, #1349)
- CLI: Batch rendering — one output per variables row with manifest (e5a78ef6, #1336)
- CLI: Add --at-transitions to inspect for sampling at tween boundaries (6364281b, #1386)
- Lint: Add gsap_studio_edit_blocked rule for manual timeline + GSAP element targeting (511665b9, #1345)
- Sdk: Session API, optional history + persist-queue, adapters — Phase 3a complete (7010edac, #1325)
- Sdk: Scaffold @hyperframes/sdk — engine layer (model, RFC 6902 patches, mutate, apply-patches) (22bb6737, #1324)
- Core: Expose hf-ids as subpath export for @hyperframes/sdk (2c64f996, #1323)
Fixes
- Sdk: Fs adapter flush() tracks in-flight writes; add to T13 contract suite (0a30011a, #1425)
- Studio: Delete only the active element's selected keyframes (f1a50e03, #1453)
- Core,player,studio: Bound trimmed audio playback to the clip window (a95e49db, #1430)
- Studio: Route rotation field edits through the animation like X/Y/W/H (5c8b6373, #1427)
- Studio: Break all 7 circular dependency cycles and fix rules-of-hooks violation (a241f259, #1422)
- Player: Replace or clear the audio-src proxy instead of stacking (fbc3cdf2, #1409)
- Studio: Disable the rotation field when the element can't be rotated (3c560706, #1412)
- Render: Make WebGL video textures deterministic in headless render (d580f2a1, #1403)
- Player: Clean up controls on destroy (a0375051, #1407)
- Studio: Surface gesture recording controls (5b6c62e1, #1390)
- Core: Block symlink-based path escape in studio-api isSafePath (953bab31, #1397)
- Studio: Reject unsafe keyframe values (3bcab3dc, #1389)
- Studio: Save retries, mutation queue circuit breaker, save_failure diagnostics (5f12e692, #1366)
- Sdk: Bridge preview selection into session state (84a56986, #1362)
- Core: Exclude dot-directories and node_modules from studio composition discovery and lint (b952dc9c, #1385)
- Studio: Journal source writebacks (aec3c3b5, #1388)
- CLI: Validate project directory before starting preview (2ec00629, #1394)
- Runtime: Respect hidden ancestor clips in Studio preview (#1387) (7fa36961, #1395)
- Address review feedback from #1333 and #1335 (28e2ab9d, #1343)
- Studio: Stabilize manual drag targets (1ea0ed55, #1393)
- Studio: Remove motion tab from right panel ([d0a7f7d](d0a7f7d...
v0.6.98
Keyframe-aware timeline editing: clip resize proportionally scales GSAP animation positions and durations, clip drag shifts positions, and diamond rendering stays stable at clip boundaries. Music beat detection with timeline guides and headless CLI command.
v0.6.97
Batch rendering, WebGL determinism, studio resilience, and security hardening.
v0.6.96
What's Changed
Other Changes
- fix(core): honor root data-duration when GSAP timeline ends short by @vanceingalls in #1378
- fix(release): include sdk in fixed-version bump by @kiyeonjeon21 in #1363
- fix(studio): remove motion tab from right panel by @miguel-heygen in #1391
- fix(studio): stabilize manual drag targets by @miguel-heygen in #1393
- fix: address review feedback from #1333 and #1335 by @mvanhorn in #1343
- fix(cli): respect registry compatibility metadata by @kiyeonjeon21 in #1251
- fix(cli): resolve and install transitive registry dependencies by @jrusso1020 in #1396
- fix(runtime): respect hidden ancestor clips in Studio preview (#1387) by @manupareekk in #1395
- fix(cli): validate project directory before starting preview by @manupareekk in #1394
- fix(studio): journal source writebacks by @miguel-heygen in #1388
- fix(core): exclude dot-directories and node_modules from studio composition discovery and lint by @leorivastech in #1385
- fix(sdk): bridge preview selection into session state by @kiyeonjeon21 in #1362
- fix(studio): save retries, mutation queue circuit breaker, save_failure diagnostics by @miguel-heygen in #1366
- test(core): fix contradictory composition-discovery file-tree test (#1385) by @jrusso1020 in #1399
- test(core): align file-tree test with backup-only hiding (#1366) by @jrusso1020 in #1400
- fix(studio): reject unsafe keyframe values by @miguel-heygen in #1389
- fix(core): block symlink-based path escape in studio-api isSafePath by @jrusso1020 in #1397
- fix(studio): surface gesture recording controls by @miguel-heygen in #1390
New Contributors
- @manupareekk made their first contribution in #1395
- @leorivastech made their first contribution in #1385
Full Changelog: v0.6.95...v0.6.96
v0.6.95
What's Changed
Other Changes
- fix(producer): pass resolved engine config through every encode path by @miguel-heygen in #1371
- fix(engine): real back-pressure in StreamingEncoder.writeFrame by @miguel-heygen in #1372
- fix(engine): respect cgroup memory limits in low-memory detection by @miguel-heygen in #1373
Full Changelog: v0.6.94...v0.6.95
v0.6.93
Full Changelog: v0.6.92...v0.6.93
v0.6.92
What's Changed
Other Changes
- fix(studio): accept razor splits at the canvas clamp boundary by @calcarazgre646 in #1340
- feat(core): expose hf-ids as subpath export for @hyperframes/sdk by @vanceingalls in #1323
- feat(sdk): scaffold @hyperframes/sdk — engine layer (model, RFC 6902 patches, mutate, apply-patches) by @vanceingalls in #1324
- feat(sdk): session API, optional history + persist-queue, adapters — Phase 3a complete by @vanceingalls in #1325
- feat(lint): add gsap_studio_edit_blocked rule for manual timeline + GSAP element targeting by @vanceingalls in #1345
- fix(studio,core): persist manual position edits for GSAP-owned elements by @vanceingalls in #1346
- fix(studio): watch external project dirs so preview ETag invalidates by @vanceingalls in #1347
- fix(sdk,core): css tokenizer, override-set replay, setattribute safety, persist errors by @vanceingalls in #1350
- fix(core): actionable error for empty sub-composition HTML in compile by @miguel-heygen in #1364
- fix(core): per-property-group keyframe foundations by @miguel-heygen in #1354
- fix(core): split-into-property-groups and replace-with-keyframes mutations by @miguel-heygen in #1355
- fix(studio): per-property-group intercept routing + drag/resize fixes by @miguel-heygen in #1356
- fix(studio): keyframe cache propertyGroup tagging + timeline UI by @miguel-heygen in #1357
- fix(studio): property panel group-aware keyframe routing by @miguel-heygen in #1358
- fix(studio): gesture recording replaces existing position keyframes by @miguel-heygen in #1359
- feat(studio): off-screen element indicators + unclipped overlay by @miguel-heygen in #1360
Full Changelog: v0.6.91...v0.6.92
v0.6.91
HyperFrames v0.6.91
Released on 2026-06-11.
Razor/blade tool for splitting timeline clips with GSAP-aware keyframe preservation, plus GSAP drag intercept is now behind a feature flag (off by default) to fix buggy drag behavior on animated elements.
Features
- Studio: Razor/blade tool UI for timeline clip splitting (ef186139, #1331)
- Core: GSAP-aware split engine for timeline clip splitting (45d4a71e, #1330)
Fixes
Internal
Full changelog
v0.6.90
HyperFrames v0.6.90
Released on 2026-06-11.
GIF support: render to GIF with two-pass palette encoding, and animated GIF inputs now play frame-synced via VP9 transcode. Plus new agent detection for Windsurf, Cline, Gemini CLI, and Crush.
Features
- Producer,core: Play animated GIF inputs frame-synced via prep-time VP9 transcode (edd85473, #1335)
- Cli,producer: Add gif output format with two-pass palette encode (e6b8d66c, #1333)
- CLI: Detect Windsurf, Cline, Gemini CLI, and Crush agents (e0ecd4d2, #1328)
- Producer: Optional targetChunkFrames to bound per-chunk frames (9b18fadc, #1332)
- Producer: Stage wall-clock split in chunk perf telemetry (69eac249, #1327)
- CLI: Detect Gemini managed-agent sandbox in detectAgentRuntime (0766eb81, #1294)