Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Install and wire registry blocks and components into HyperFrames compositions. Use when running hyperframes add, installing a block or component, wiring an installed item into index.html, or working with hyperframes.json. Covers the add command, install locations, block sub-composition wiring, component snippet merging, and registry discovery.
.claude/skills/cowork-os-hyperframes-registry/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-01 | ✗→✓ | ▲ Improved | 49% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -5% | 0% |
| case-10 | ✗→✓ | ▲ Improved | -47% | 0% |
| case-14 | ✗→✓ | ▲ Improved | 36% | 0% |
| case-15 | ✗→✓ | ▲ Improved | -17% | 0% |
The registry provides reusable blocks and components installable via hyperframes add <name>.
data-composition-src in a host composition.hyperframes add, "block", "component", or hyperframes.jsonhyperframes add appears in the session (file paths, clipboard snippet)bashhyperframes add data-chart # install a block hyperframes add grain-overlay # install a component hyperframes add shimmer-sweep --dir . # target a specific project hyperframes add data-chart --json # machine-readable output hyperframes add data-chart --no-clipboard # skip clipboard (CI/headless)
After install, the CLI prints which files were written and a snippet to paste into your host composition. The snippet is a starting point — you'll need to add data-composition-id (must match the block's internal composition ID), data-start, and data-track-index attributes when wiring blocks.
Note: hyperframes add only works for blocks and components. For examples, use hyperframes init <dir> --example <name> instead.
Blocks install to compositions/<name>.html by default. Components install to compositions/components/<name>.html by default.
These paths are configurable in hyperframes.json:
json{ "registry": "https://raw.githubusercontent.com/heygen-com/hyperframes/main/registry", "paths": { "blocks": "compositions", "components": "compositions/components", "assets": "assets" } }
See install-locations.md for full details.
Blocks are standalone compositions — include them via data-composition-src in your host index.html:
html<div data-composition-id="data-chart" data-composition-src="compositions/data-chart.html" data-start="2" data-duration="15" data-track-index="1" data-width="1920" data-height="1080" ></div>
Key attributes:
data-composition-src — path to the block HTML filedata-composition-id — must match the block's internal IDdata-start — when the block appears in the host timeline (seconds)data-duration — how long the block playsdata-width / data-height — block canvas dimensionsdata-track-index — layer ordering (higher = in front)See wiring-blocks.md for full details.
Components are snippets — paste their HTML into your composition's markup, their CSS into your style block, and their JS into your script (if any):
compositions/components/grain-overlay.html)<div data-composition-id="..."><style> block into your composition's styles<script> content into your composition's script (before your timeline code)See wiring-components.md for full details.
Browse available items:
bash# Read the registry manifest curl -s https://raw.githubusercontent.com/heygen-com/hyperframes/main/registry/registry.json
Each item's registry-item.json contains: name, type, title, description, tags, dimensions (blocks only), duration (blocks only), and file list.
See discovery.md for details on filtering by type and tags.
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | fail→pass | 6,544 | 2,556 | -61% | 1 | 1 | 0% | 967 | 1,444 | +49% | 0 | 0 | — |
case-02 | fail→fail | 5,341 | 3,330 | -38% | 1 | 1 | 0% | 883 | 1,657 | +88% | 0 | 0 | — |
case-03 | fail→pass | 7,787 | 2,399 | -69% | 1 | 1 | 0% | 1,510 | 1,438 | -5% | 0 | 0 | — |
case-04 | pass→pass | 5,162 | 9,377 | +82% | 1 | 1 | 0% | 802 | 2,781 | +247% | 0 | 0 | — |
case-05 | pass→pass | 7,479 | 3,268 | -56% | 1 | 1 | 0% | 1,289 | 1,537 | +19% | 0 | 0 | — |
case-06 | pass→pass | 4,490 | 2,982 | -34% | 1 | 1 | 0% | 699 | 1,483 | +112% | 0 | 0 | — |
case-07 | pass→pass | 4,110 | 1,914 | -53% | 1 | 1 | 0% | 763 | 1,285 | +68% | 0 | 0 | — |
case-08 | pass→pass | 7,892 | 2,002 | -75% | 1 | 1 | 0% | 1,394 | 1,286 | -8% | 0 | 0 | — |
case-09 | pass→pass | 10,258 | 1,770 | -83% | 1 | 1 | 0% | 1,802 | 1,290 | -28% | 0 | 0 | — |
case-10 | fail→pass | 13,388 | 1,460 | -89% | 1 | 1 | 0% | 2,388 | 1,271 | -47% | 0 | 0 | — |
case-11 | pass→pass | 13,799 | 1,868 | -86% | 1 | 1 | 0% | 2,349 | 1,294 | -45% | 0 | 0 | — |
case-12 | pass→pass | 3,978 | 2,683 | -33% | 1 | 1 | 0% | 746 | 1,466 | +97% | 0 | 0 | — |
case-13 | pass→pass | 11,276 | 2,132 | -81% | 1 | 1 | 0% | 1,781 | 1,449 | -19% | 0 | 0 | — |
case-14 | fail→pass | 6,883 | 2,830 | -59% | 1 | 1 | 0% | 1,180 | 1,607 | +36% | 0 | 0 | — |
case-15 | fail→pass | 10,806 | 2,873 | -73% | 1 | 1 | 0% | 1,864 | 1,550 | -17% | 0 | 0 | — |
case-16 | pass→pass | 11,603 | 4,891 | -58% | 1 | 1 | 0% | 1,871 | 1,769 | -5% | 0 | 0 | — |
case-17 | pass→pass | 9,616 | 3,805 | -60% | 1 | 1 | 0% | 1,387 | 1,600 | +15% | 0 | 0 | — |
case-18 | pass→pass | 13,004 | 5,146 | -60% | 1 | 1 | 0% | 2,051 | 1,873 | -9% | 0 | 0 | — |
case-19 | fail→pass | 7,779 | 2,271 | -71% | 1 | 1 | 0% | 1,336 | 1,300 | -3% | 0 | 0 | — |
case-20 | pass→pass | 12,297 | 3,865 | -69% | 1 | 1 | 0% | 2,122 | 1,637 | -23% | 0 | 0 | — |
case-21 | pass→pass | 7,012 | 2,057 | -71% | 1 | 1 | 0% | 1,145 | 1,322 | +15% | 0 | 0 | — |
case-22 | pass→pass | 7,483 | 1,820 | -76% | 1 | 1 | 0% | 1,363 | 1,358 | -0% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +27 percentage points is the difference between those two pass rates over the 22 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.