From 83d176e1c319ea732facdb16734cfdb79e341f46 Mon Sep 17 00:00:00 2001 From: Miao Yang Date: Tue, 3 Nov 2026 02:09:54 +0800 Subject: [PATCH] fix(cli): cutout retries dedupe on request_id, uploads carry their real type; style-remix is public The background-removal route dedupes on the body's request_id and ignores the Idempotency-Key header, so a retry after a lost answer started a second job: runJob now also sends the key in the body for such a route. Uploads typed every non-MP4 file as audio, so WebM and MOV inputs were refused: they now take their type from the extension. Fails without the fix: the new cutout test in generate.test.ts sees audio/mpeg for WebM and MOV. style-remix drops metadata.internal and is listed with the other published skills. Co-Authored-By: Claude Opus 5.5 --- AGENTS.md | 3 +- CLAUDE.md | 5 +- README.md | 5 +- docs/guides/skills.mdx | 1 + packages/cli/src/cloud/offload.ts | 19 +++++-- .../cli/src/commands/media-use/generate.ts | 5 +- packages/cli/src/heygen/generate.test.ts | 52 +++++++++++++++++-- packages/cli/src/heygen/generate.ts | 14 ++++- packages/cli/src/heygen/v3.test.ts | 32 ++++++++++++ packages/cli/src/heygen/v3.ts | 7 ++- packages/cli/src/templates/_shared/AGENTS.md | 1 + packages/cli/src/templates/_shared/CLAUDE.md | 1 + packages/cli/src/utils/skillsManifest.ts | 3 +- scripts/test-skills-fresh.sh | 2 +- skills-manifest.json | 2 +- skills/style-remix/SKILL.md | 2 - 16 files changed, 131 insertions(+), 23 deletions(-) diff --git a/AGENTS.md b/AGENTS.md index d9aadd0691..19189d2284 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -8,7 +8,7 @@ This repo ships AI agent skills via [vercel-labs/skills](https://github.com/verc ```bash npx hyperframes skills update # default: installs/refreshes the core set plus anything already installed -npx hyperframes skills # all 8 published skills at once +npx hyperframes skills # all 9 published skills at once npx skills add heygen-com/hyperframes # interactive picker (terminal only; repo-internal skills are excluded by default) ``` @@ -22,6 +22,7 @@ Make any video by asking for it; the `/hyperframes` skill carries the contract a - `/slideshow` — a presentation, pitch deck or interactive deck. Output is a navigable deck, not a rendered MP4. - `/remotion-to-hyperframes` — bring existing video code or footage into HyperFrames (Remotion first; also Motion Canvas, Lottie, Three.js, canvas, or renders from other tools) and verify it frame by frame against the original. - `/reverse-any-video` — rebuild any video file as an editable HyperFrames project (motion graphics, talking heads, live action or AI-generated footage) and check the render against the original frame by frame. A HyperFrames Pro feature. +- `/style-remix` — make a new episode on your topic in one of five proven styles (Collage Explainer, Finance Explainer, Animated Science Explainer, 3D Brand Explainer, 3D True Crime). A HyperFrames Pro feature. ## Issue and PR triage diff --git a/CLAUDE.md b/CLAUDE.md index 8c4daf2f09..170fa263e3 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,11 +4,11 @@ Open-source video rendering framework: write HTML, render video. ## Skills -This repo ships 8 AI agent skills via [vercel-labs/skills](https://github.com/vercel-labs/skills). Install them before writing compositions — they encode framework-specific patterns that generic docs don't cover. **Default to the core set** (`/hyperframes`, `/hyperframes-cli`, `/hyperframes-registry`, `/media-use`); `/slideshow`, `/remotion-to-hyperframes`, `/reverse-any-video` and `/figma` install on demand. Install all 8 only when the user explicitly asks for the full set. +This repo ships 9 AI agent skills via [vercel-labs/skills](https://github.com/vercel-labs/skills). Install them before writing compositions — they encode framework-specific patterns that generic docs don't cover. **Default to the core set** (`/hyperframes`, `/hyperframes-cli`, `/hyperframes-registry`, `/media-use`); `/slideshow`, `/remotion-to-hyperframes`, `/reverse-any-video` and `/figma` install on demand. Install all 8 only when the user explicitly asks for the full set. ```bash npx hyperframes skills update # default: installs/refreshes the core set plus anything already installed -npx hyperframes skills # all 8 published skills at once — only on explicit request +npx hyperframes skills # all 9 published skills at once — only on explicit request npx skills add heygen-com/hyperframes # interactive picker; internal skills require INSTALL_INTERNAL_SKILLS=1 for discovery npx skills add heygen-com/hyperframes --all # excludes internal skills unless INSTALL_INTERNAL_SKILLS=1 npx skills add heygen-com/hyperframes --skill # a named match installs regardless of metadata.internal (bare name, no leading slash) @@ -28,6 +28,7 @@ Make any video by asking for it; the `/hyperframes` skill carries the render con - `/slideshow` — a presentation, pitch deck or interactive deck with discrete slides, fragment reveals, branching, hotspot navigation and presenter mode with speaker notes; also converts an existing page into a deck. Output is a navigable deck, not a rendered MP4. - `/remotion-to-hyperframes` — bring existing video code or footage into HyperFrames (Remotion first; also Motion Canvas, Lottie, Three.js, canvas, or renders from other tools) and verify it frame by frame against the original. - `/reverse-any-video` — rebuild any video file as an editable HyperFrames project (motion graphics, talking heads, live action or AI-generated footage) and check the render against the original frame by frame. A HyperFrames Pro feature. +- `/style-remix` — make a new episode on your topic in one of five proven styles (Collage Explainer, Finance Explainer, Animated Science Explainer, 3D Brand Explainer, 3D True Crime). A HyperFrames Pro feature. ## Skill catalog maintenance diff --git a/README.md b/README.md index 924a44569c..b6f4f46431 100644 --- a/README.md +++ b/README.md @@ -64,7 +64,7 @@ For standalone skills (including OpenCode), use: npx skills add heygen-com/hyperframes ``` -> The picker opens with nothing pre-selected — the **Core Skills** group is all you need; `/slideshow`, `/remotion-to-hyperframes`, `/reverse-any-video` and `/figma` install on demand. Agents and non-interactive runs should use `npx hyperframes skills update` instead — it installs exactly the core set, whereas `skills add --all` installs all 8 published skills. The six repo-internal skills under `.claude/skills` / `.agents/skills` are excluded by default. For the full published set use `npx hyperframes skills`. +> The picker opens with nothing pre-selected — the **Core Skills** group is all you need; `/slideshow`, `/remotion-to-hyperframes`, `/reverse-any-video`, `/style-remix` and `/figma` install on demand. Agents and non-interactive runs should use `npx hyperframes skills update` instead — it installs exactly the core set, whereas `skills add --all` installs all 9 published skills. The six repo-internal skills under `.claude/skills` / `.agents/skills` are excluded by default. For the full published set use `npx hyperframes skills`. > > `skills add` resolves the skills.sh registry blob, which can lag `main` by hours. `npx hyperframes skills update` installs from the current `main`, so reach for it when you need the newest copy of a skill. @@ -81,7 +81,7 @@ The skills teach agents the HyperFrames production loop: plan the video, write v ## Skills -HyperFrames ships 8 skills. Make any video by asking for it; the `/hyperframes` skill carries the contract and the references (film, captions, overlays, motion, look). Read it first. +HyperFrames ships 9 skills. Make any video by asking for it; the `/hyperframes` skill carries the contract and the references (film, captions, overlays, motion, look). Read it first. For standalone installation, default to the **core set** (`/hyperframes`, `/hyperframes-cli`, `/hyperframes-registry`, `/media-use`). `npx hyperframes skills update` installs exactly that from anywhere; the interactive picker (`npx skills add heygen-com/hyperframes`) lists it as the "Core Skills" group, nothing pre-selected. The picker is interactive-only — a non-interactive or agent run without `--skill` installs all 8. Use `npx skills add heygen-com/hyperframes --all` to install the complete published set deliberately (skips the picker), or `npx skills add heygen-com/hyperframes --skill ` for just one (bare name, no leading `/`). @@ -120,6 +120,7 @@ This writes `dist/hyperframes-plugin.zip` with a `hyperframes/` root folder and | `/slideshow` | A presentation, pitch deck or interactive deck — discrete slides, fragment reveals, branching, hotspot navigation, presenter mode with speaker notes. Output is a navigable deck, not a rendered MP4. | | `/remotion-to-hyperframes` | Bringing existing video code or footage into HyperFrames (Remotion first; also Motion Canvas, Lottie, Three.js, canvas, other tools' renders), verified frame by frame. | | `/reverse-any-video` | Rebuilding any video file as an editable HyperFrames project (motion graphics, talking heads, live action, AI-generated footage), checked frame by frame against the original. HyperFrames Pro. | +| `/style-remix` | Making a new episode on your topic in one of five proven styles: Collage Explainer, Finance Explainer, Animated Science Explainer, 3D Brand Explainer, 3D True Crime. HyperFrames Pro. | For visual design handoff workflows, see the [Claude Design guide](https://hyperframes.heygen.com/guides/claude-design) and [Open Design guide](https://hyperframes.heygen.com/guides/open-design). diff --git a/docs/guides/skills.mdx b/docs/guides/skills.mdx index 9d3b6aa1a7..40498fe61d 100644 --- a/docs/guides/skills.mdx +++ b/docs/guides/skills.mdx @@ -126,6 +126,7 @@ Make any video by asking for it; the `/hyperframes` skill carries the contract a | `/slideshow` | A presentation, pitch deck or interactive deck. Output is a navigable deck, not a rendered MP4. | | `/remotion-to-hyperframes` | Bringing existing video code or footage into HyperFrames (Remotion first; also Motion Canvas, Lottie, Three.js, canvas, other tools' renders), verified frame by frame. | | `/reverse-any-video` | Rebuilding any video file as an editable HyperFrames project (motion graphics, talking heads, live action, AI-generated footage), checked frame by frame against the original. HyperFrames Pro. | +| `/style-remix` | Making a new episode on your topic in one of five proven styles: Collage Explainer, Finance Explainer, Animated Science Explainer, 3D Brand Explainer, 3D True Crime. HyperFrames Pro. | You can name a skill directly, but you do not need to memorize the names to start. diff --git a/packages/cli/src/cloud/offload.ts b/packages/cli/src/cloud/offload.ts index 2a2cf28d63..e45305701e 100644 --- a/packages/cli/src/cloud/offload.ts +++ b/packages/cli/src/cloud/offload.ts @@ -531,7 +531,6 @@ interface FilePlan { segments?: PlayedSegment[]; } -// fallow-ignore-next-line complexity async function planFile( ctx: OffloadContext, path: string, @@ -893,7 +892,7 @@ function rewriteCssEntry(absDir: string, entryPath: string, css: string, urlFor: const TEMPLATE_SCENE_RE = /(]*>)([\s\S]*?)(<\/template>)/gi; -// fallow-ignore-next-line complexity +/** An entry's HTML with each