SkillAgentSearch skills...

cuboid-carousel

A chain of bevelled cuboids rides a travelling wave as a content carousel. HyperFrames block, 1920×1080, 6.666666666666667s, 40 variables.

Install / Use

npx skills add heygen-com/hyperframes --skill cuboid-carousel

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

95/100

Supported Platforms

Universal

Tags

Our assessment of cuboid-carousel

cuboid-carousel scores 95/100 on our quality scale, 272nd of 4,648 Development & Engineering skills we index (top 6%).

Its SKILL.md is 6.9 KB long, split into 6 sections with 2 code examples: a thorough specification that gives an agent plenty to work with.

With 76,633 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
29/30
Structure
16/20
Description
15/15
Adoption
20/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 7 days ago, so cuboid-carousel is actively maintained.
  • Our last check on 2026-10-23 found the source still online.
  • It is released under the Apache-2.0 license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.

AI review by kimi-k2.7-code on 2026-09-25. Automated pattern scan on 2026-09-25. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

cuboid-carousel compared with similar skills

All 4 of these similar skills score higher than cuboid-carousel; compare them before choosing.

SkillScoreStarsUpdatedFormat
cuboid-carousel (this skill)by heygen-com9576.6k7d agoSKILL.md
taste-skillby Leonxlnx100112.0k1d agoCLAUDE.md
ai-job-searchby ai-job-search-dev10070.5ktodayCLAUDE.md
claude-howtoby luongnv8910046.7k5d agoCLAUDE.md
lobehubby lobehub10084.4ktodayMCP Server

Frequently asked questions

How do I install cuboid-carousel?
Run npx skills add heygen-com/hyperframes --skill cuboid-carousel. The install tabs above show the steps for each supported agent.
Which AI agents does cuboid-carousel work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is cuboid-carousel safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It is Apache-2.0-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is cuboid-carousel still maintained?
The repository was last updated 7 days ago, so cuboid-carousel is actively maintained.

name: cuboid-carousel description: A chain of bevelled cuboids rides a travelling wave as a content carousel. HyperFrames block, 1920×1080, 6.666666666666667s, 40 variables.

Cuboid Carousel

Rounded, bevelled cuboids carrying card content fly in from the right as one rigid group, cruise with a per-cuboid rotation stagger, decelerate to a hero hold, then exit left. Spacing is derived from the cuboid dimensions and the largest reachable X half-extent, so cuboids can never overlap. Forty variables carry the original DialKit schema: geometry, materials, lights, shadows, backdrop, camera and every segment duration and easing. Cards come from the built-in list or a JSON variable.

Composition id: cuboid-carousel. Duration 6.666666666666667 s at 30 fps, 1920×1080.

Files

  • cuboid-carousel.html (38 KB)
  • assets/Three-LICENSE.txt (1 KB)
  • assets/addons/environments/RoomEnvironment.js (5 KB)
  • assets/addons/utils/BufferGeometryUtils.js (36 KB)
  • assets/cuboid-motion.js (593 KB)
  • assets/gsap-3.14.2.min.js (128 KB)
  • assets/GSAP-NOTICE.txt (1 KB)
  • assets/three.core.min.js (554 KB)
  • assets/three.module.min.js (468 KB)

Install

Install with npx hyperframes add cuboid-carousel; by default the files above land under compositions/cuboid-carousel/. Then mount the block from the host index.html:

<div
  data-composition-id="cuboid-carousel"
  data-composition-src="compositions/cuboid-carousel/cuboid-carousel.html"
  data-start="0"
  data-duration="6.666666666666667"
  data-track-index="1"
  data-width="1920"
  data-height="1080"
></div>

Render with custom values by targeting the composition file directly:

npx --yes hyperframes@0.8.12 render 'compositions/cuboid-carousel/cuboid-carousel.html' --variables '{"cardsJson":"","heroCard":4}'

Variables

Read at runtime via window.__hyperframes.getVariables(); declared on the composition root as data-composition-variables (single-quoted attribute, plain JSON).

| id | type | default | label / range | | ------------------- | ------ | ----------- | ---------------------------------------------------- | | cardsJson | string | "" | Content · Cards JSON (optional, see CARDS in source) | | heroCard | number | 4 | Content · Hero card (1-based) 1–12 step 1 | | count | number | 8 | Content · Repeating card count 1–12 step 1 | | gap | number | 0.01 | Layout · Extra gap between cuboids 0–1.5 step 0.005 | | cuboidWidth | number | 1.7 | Cuboid · Width 0.3–5 step 0.01 | | cuboidHeight | number | 2.4 | Cuboid · Height 0.3–6 step 0.01 | | cuboidDepth | number | 0.14 | Cuboid · Thickness (depth) 0.02–2 step 0.01 | | cornerRadius | number | 0.105 | Cuboid · Corner radius 0–0.6 step 0.005 | | bevelSize | number | 0.03 | Cuboid · Bevel size (edge chamfer) 0–0.3 step 0.001 | | bevelThickness | number | 0.04 | Cuboid · Bevel thickness 0–0.3 step 0.001 | | smoothness | number | 32 | Cuboid · Smoothness (segments) 1–32 step 1 | | bodyColor | color | "#242424" | Cuboid · Body colour | | roughness | number | 0.6 | Cuboid · Roughness 0–1 step 0.01 | | metalness | number | 0.4 | Cuboid · Metalness 0–1 step 0.01 | | heroScale | number | 1 | Hero · Isolated scale 1–1.6 step 0.01 | | heroFillIntensity | number | 0.55 | Hero · Face light intensity 0–2 step 0.05 | | heroExitX | number | 288 | Hero · Exit X rotation degrees -720–720 step 1 | | heroExitY | number | -234 | Hero · Exit Y rotation degrees -720–720 step 1 | | heroExitZ | number | 198 | Hero · Exit Z rotation degrees -720–720 step 1 | | ambientIntensity | number | 0.35 | Lights · Ambient intensity 0–4 step 0.01 | | ambientColor | color | "#ffffff" | Lights · Ambient colour | | topIntensity | number | 3.1 | Lights · Top rig intensity 0–12 step 0.05 | | topColor | color | "#ffffff" | Lights · Top rig colour | | bottomIntensity | number | 2.15 | Lights · Bottom rig intensity 0–12 step 0.05 | | bottomColor | color | "#ffcaad" | Lights · Bottom rig colour | | keyIntensity | number | 5 | Lights · Key rig intensity 0–12 step 0.05 | | keyColor | color | "#ffe9d6" | Lights · Key rig colour | | shadowRadius | number | 44.5 | Shadows · Softness at map size 2048 0–50 step 0.5 | | shadowMapSize | number | 2048 | Shadows · Map size 512–4096 step 256 | | backdrop | color | "#0b0d13" | Background · Colour | | cameraFov | number | 11 | Camera · Initial Field of view 10–90 step 0.5 | | cameraX | number | -1.65 | Camera · Initial X -20–20 step 0.05 | | cameraY | number | 8.5 | Camera · Initial Y -20–20 step 0.05 | | cameraZ | number | -8.508708 | Camera · Initial Z (distance) -20–50 step 0.1 | | cameraSettleFrame | number | 70 | Camera · Settle frame (30 fps) 20–90 step 1 | | handheldStrength | number | 1 | Camera · Handheld hold strength 0–1 step 0.05 | | cameraTargetFov | number | 34 | Camera target · Field of view 10–90 step 0.5 | | cameraTargetX | number | -7.25 | Camera target · X -20–20 step 0.05 | | cameraTargetY | number | 1.15 | Camera target · Y -20–20 step 0.05 | | cameraTargetZ | number | 6.2 | Camera target · Z 2–50 step 0.1 |

Runtime contract

  • One paused GSAP timeline registered as window.__timelines["cuboid-carousel"].
  • Re-syncs on the hf-seek CustomEvent; every frame is a closed-form function of time (seeded PRNG only, no rAF loops, no Date.now).
  • Renderer: WebGL, GSAP, Canvas 2D, PMREM, Shadow maps. Budget roughly 350 MB per live instance; run one at a time.
  • External runtime dependencies: ./assets/three.module.min.js, ./assets/addons/.
  • Web fonts from Google Fonts: Inter.

Editing rules (from the source project)

  1. Keep data-composition-variables a single-quoted attribute with plain " JSON. Never save it through Studio's Design panel.
  2. Do not put <canvas> in static markup; create it at runtime.
  3. Keep every visual state a function of t; seek-safety is what makes the block renderable.

Related Skills

View on GitHub
GitHub Stars76.6k
CategoryDevelopment
Updated7d ago
Forks7.0k

Languages

TypeScript

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions