Skip to main content
skill CX Codex GP ChatGPT official · OpenAI

hyperframes-cli · openai — Codex skill: what it does, how to install

This skill runs HyperFrames projects from setup to video output, with checks for composition layout, browser preview, transcription, and speech generation.

Install into Codex · Skills CLI (Vercel) All methods and platforms ↓
npx skills add openai/plugins --skill hyperframes-cli -a codex
Open on GitHub

What hyperframes-cli does

hyperframes-cli exposes HyperFrames through npx hyperframes. It can scaffold a project, copy media, transcribe audio with Whisper, and install AI coding skills. Its workflow checks index.html and files in compositions/, then scans rendered layouts for overflow, clipping, and elements leaving the canvas.

The CLI also serves the Studio preview, renders MP4 or WebM files, imports subtitle formats, and creates narration with TTS. Commands such as doctor, browser, and info inspect Chrome, FFmpeg, Node, and memory. Node.js >= 22 and FFmpeg are required; rendering fails when FFmpeg is missing.

What it helps with

  • scaffold a HyperFrames project from a template
  • lint compositions before rendering
  • detect text clipped by layout containers
  • preview a composition in Studio
  • render MP4 or WebM output with narration

Example prompts for the agent

  • Create my-video from the warm-grain template with npx hyperframes init my-video --example warm-grain.
  • Run npx hyperframes lint and npx hyperframes inspect to check the current composition before previewing it.
  • Render a high-quality file to final.mp4 with npx hyperframes render --output final.mp4 --quality high.

How to install hyperframes-cli

1Skills CLI (Vercel)

npx skills add openai/plugins --skill hyperframes-cli -a codex

2Manually: put the files in place

.agents/skills/hyperframes-cli/SKILL.md

For all projects use ~/.agents/skills/

Step by step, with commands for each platform: Codex skills: how to install, where they live, how to call them

Questions about hyperframes-cli

How do I install hyperframes-cli in Codex?

Run npx skills add openai/plugins --skill hyperframes-cli, then run npx skills add openai/plugins --skill hyperframes-cli -a codex. The installed skill file is .agents/skills/hyperframes-cli/SKILL.md.

What does hyperframes-cli do?

It covers the HyperFrames project workflow: scaffolding, composition checks, layout inspection, Studio preview, and video rendering. It also handles transcription, TTS, and environment diagnostics.

What does hyperframes-cli require?

The skill requires Node.js >= 22 and FFmpeg. Its doctor command also checks Chrome and available memory.

Source text

SKILL.md · Apache-2.0
---
name: hyperframes-cli
description: HyperFrames CLI tool — hyperframes init, lint, inspect, preview, render, transcribe, tts, doctor, browser, info, upgrade, compositions, docs, benchmark. Use when scaffolding a project, linting, validating, inspecting visual layout in compositions, previewing in the studio, rendering to video, transcribing audio, generating TTS, or troubleshooting the HyperFrames environment.
---

# HyperFrames CLI

Everything runs through `npx hyperframes`. Requires Node.js >= 22 and FFmpeg.

## Workflow

1. **Scaffold** — `npx hyperframes init my-video`
2. **Write** — author HTML composition (see the `hyperframes` skill)
3. **Lint** — `npx hyperframes lint`
4. **Visual inspect** — `npx hyperframes inspect`
5. **Preview** — `npx hyperframes preview`
6. **Render** — `npx hyperframes render`

Lint and inspect before preview. `lint` catches missing `data-composition-id`, overlapping tracks, and unregistered timelines. `inspect` opens the rendered composition in headless Chrome, seeks through the timeline, and reports text spilling out of bubbles/containers or off the canvas.

## Scaffolding

```bash
npx hyperframes init my-video                        # interactive wizard
npx hyperframes init my-video --example warm-grain   # pick an example
npx hyperframes init my-video --video clip.mp4        # with video file
npx hyperframes init my-video --audio track.mp3       # with audio file
npx hyperframes init my-video --non-interactive       # skip prompts (CI/agents)
```

Templates: `blank`, `warm-grain`, `play-mode`, `swiss-grid`, `vignelli`, `decision-tree`, `kinetic-type`, `product-promo`, `nyt-graph`.

`init` creates the right file structure, copies media, transcribes audio with Whisper, and installs AI coding skills. Use it instead of creating files by hand.

## Linting

```bash
npx hyperframes lint                  # current directory
npx hyperframes lint ./my-project     # specific project
npx hyperframes lint --verbose        # info-level findings
npx hyperframes lint --json           # machine-readable
```

Lints `index.html` and all files in `compositions/`. Reports errors (must fix), warnings (should fix), and info (with `--verbose`).

## Visual Inspect

```bash
npx hyperframes inspect                 # inspect rendered layout over the timeline
npx hyperframes inspect ./my-project    # specific project
npx hyperframes inspect --json          # agent-readable findings
npx hyperframes inspect --samples 15    # denser timeline sweep
npx hyperframes inspect --at 1.5,4,7.25 # explicit hero-frame timestamps
```

Use this after `lint` and `validate`, especially for compositions with speech bubbles, cards, captions, or tight typography. It reports:

- Text extending outside the nearest visual container or bubble
- Text clipped by its own fixed-width/fixed-height box
- Text extending outside the composition canvas
- Children escaping clipping containers

Errors should be fixed before rendering. Warnings are surfaced for agent review; add `--strict` to fail on warnings too. Repeated static issues are collapsed by default so JSON output stays compact for LLM context windows. If overflow is intentional for an entrance/exit animation, mark the element or ancestor with `data-layout-allow-overflow`. If a decorative element should never be audited, mark it with `data-layout-ignore`.

`npx hyperframes layout` remains available as a compatibility alias for the same visual inspection pass.

## Previewing

```bash
npx hyperframes preview                   # serve current directory
npx hyperframes preview --port 4567       # custom port (default 3002)
```

Hot-reloads on file changes. Opens the studio in your browser automatically.

When handing a project back to the user, use the Studio project URL, not the
source `index.html` path:

```text
http://localhost:<port>/#project/<project-name>
```

Use the actual port from the preview output and the project directory name. For
example, after `npx hyperframes preview --port 3017` in `codex-openai-video`,
report `http://localhost:3017/#project/codex-openai-video`.

Treat `index.html` as source-code context only. It is fine to link it as an
implementation file, but do not label it as the project or preview surface.

## Rendering

```bash
npx hyperframes render                                # standard MP4
npx hyperframes render --output final.mp4             # named output
npx hyperframes render --quality draft                # fast iteration
npx hyperframes render --fps 60 --quality high        # final delivery
npx hyperframes render --format webm                  # transparent WebM
npx hyperframes render --docker                       # byte-identical
```

| Flag           | Options               | Default                    | Notes                       |
| -------------- | --------------------- | -------------------------- | --------------------------- |
| `--output`     | path                  | renders/name_timestamp.mp4 | Output path                 |
| `--fps`        | 24, 30, 60            | 30                         | 60fps doubles render time   |
| `--quality`    | draft, standard, high | standard                   | draft for iterating         |
| `--format`     | mp4, webm             | mp4                        | WebM supports transparency  |
| `--workers`    | 1-8 or auto           | auto                       | Each spawns Chrome          |
| `--docker`     | flag                  | off                        | Reproducible output         |
| `--gpu`        | flag                  | off                        | GPU-accelerated encoding    |
| `--strict`     | flag                  | off                        | Fail on lint errors         |
| `--strict-all` | flag                  | off                        | Fail on errors AND warnings |

**Quality guidance:** `draft` while iterating, `standard` for review, `high` for final delivery.

## Transcription

```bash
npx hyperframes transcribe audio.mp3
npx hyperframes transcribe video.mp4 --model medium.en --language en
npx hyperframes transcribe subtitles.srt   # import existing
npx hyperframes transcribe subtitles.vtt
npx hyperframes transcribe openai-response.json
```

## Text-to-Speech

```bash
npx hyperframes tts "Text here" --voice af_nova --output narration.wav
npx hyperframes tts script.txt --voice bf_emma
npx hyperframes tts --list  # show all voices
```

## Troubleshooting

```bash
npx hyperframes doctor       # check environment (Chrome, FFmpeg, Node, memory)
npx hyperframes browser      # manage bundled Chrome
npx hyperframes info         # version and environment details
npx hyperframes upgrade      # check for updates
```

Run `doctor` first if rendering fails. Common issues: missing FFmpeg, missing Chrome, low memory.

## Other

```bash
npx hyperframes compositions   # list compositions in project
npx hyperframes docs           # open documentation
npx hyperframes benchmark .    # benchmark render performance
```

© HeyGen · Apache-2.0 · openai/plugins

Similar skills

All skills for Agent setup: memory, context, orchestration →

hyperframes-cli by other authors comes first.

From the same set422

The whole set →
ngs-bulk-rnaseq-counts-qc Plans or runs bulk RNA-seq processing from FASTQ reads to count matrices, with MultiQC and QC checks. Use it before differential-expression analysis. CX Codex GP ChatGPT 2installs ngs-bcl-to-fastq Validates an Illumina run folder and sample sheet, plans demultiplexing, and runs BCL-to-FASTQ conversion. Useful when the input is a sequencing run folder. CX Codex GP ChatGPT 2installs website-to-hyperframes This skill turns a website URL into a HyperFrames video project, covering capture, scripting, storyboarding, voice timing, and validation. CX Codex GP ChatGPT 2installs hyperframes A skill for building video in HTML: compositions, title cards, captions, narration and music-driven animation. Useful when the video should come out of code, not an editor. CX Codex GP ChatGPT 2installs upgrading-expo Walks the agent through an Expo SDK upgrade: install commands, diagnostics, cache cleanup and broken dependency fixes. CX Codex GP ChatGPT 2installs building-native-ui A Codex skill for building Expo Router interfaces with guidance on routes, styling, components, animation, and native tabs. CX Codex GP ChatGPT 2installs building-mcp-server-on-cloudflare A skill that walks the agent through building a remote MCP server on Cloudflare Workers: tools, OAuth, deployment. Useful when you need to expose your own functions over MCP. CX Codex GP ChatGPT 2installs knowledge-update Injects up-to-date Vercel platform facts into the session and overrides stale model knowledge. Useful when your agent still reaches for Edge Functions or vercel.json. CX Codex GP ChatGPT 1installs

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor