04-tooling

hyperframes skill install security review decision

Tue May 05 2026 20:00:00 GMT-0400 (Eastern Daylight Time) ·tooling-decision ·⚠ medium
security-reviewmcp-installhyperframesheygenprompt-injectioninstall-policy

HyperFrames skill install — security review decision (2026-05-06)

Trigger

Founder shared HyperFrames catalog + GitHub on iMessage 2026-05-06 17:57 ET, then explicit greenlight 18:41 ET (“Let’s do both. Good to generalize our HyperFrames and HeyGen skills across projects”). Re-engaged with security findings 19:30 ET; founder responded 19:45 ET with the install-policy clarification (skills are prompt-injection risk, not binary risk; pre-update scan is the right pattern; bypass age-wait on first install with security review).

What was installed

Command: npx --yes skills@latest add heygen-com/hyperframes --skill '*' --global --yes --agent claude-code

Source repo: https://github.com/heygen-com/hyperframes (Apache-2.0, v0.5.2, 15.1k stars, 692 commits, HeyGen Inc. corp-owned)

13 skills installed at ~/.claude/skills/:

Pre-install security review (per SOP)

Step 1 — Install path

Step 2 — Source code inspection

Sub-agent sampled 4 of 13 SKILL.md files (hyperframes, hyperframes-cli, hyperframes-media, three). Findings:

Step 3 — Token analysis

Step 4 — Maintainer trust

Step 5 — Worst-case blast radius

Step 6 — skills.sh registry-side scan

The skills CLI ran its own assessment via 3 vendors (Gen / Socket / Snyk):

SkillGenSocketSnyk
animejsSafe0 alertsMed Risk
css-animationsSafe0 alertsLow Risk
gsapSafe0 alertsMed Risk
hyperframes-cliSafe0 alertsLow Risk
hyperframes-mediaSafe0 alertsLow Risk
hyperframes-registrySafe0 alertsMed Risk
hyperframesSafe0 alertsLow Risk
lottieSafe0 alertsMed Risk
remotion-to-hyperframesSafe1 alertMed Risk
tailwindSafe0 alertsLow Risk
threeSafe0 alertsLow Risk
waapiSafe0 alertsLow Risk
website-to-hyperframesSafe0 alertsMed Risk

The 1 Socket alert on remotion-to-hyperframes is unspecified in the registry output — likely a transitive dependency notice (Remotion-related npm package) since the skill is a translator. Manual review pending if the skill is invoked.

Verdict

INSTALL-WITH-MITIGATIONS — proceeded.

Founder’s install-policy clarification:

“Skills are prompt injection risk, not an installed binary. If the skills look safe right now, let’s go ahead and install them too to give ourselves the best capabilities. Then we can scan again before we do any update. We also have that waiting period for npm or Python packages to not install something until it’s a few days old. If we do the security scan and then say it’s okay we can make exceptions to install it early, especially when we are bumping up our capabilities for the first time. For run of the mill updates we can be more patient.”

This codifies a new install policy:

Mitigations applied

  1. Pinned install commit captured. Repo HEAD on install date 2026-05-06 against https://github.com/heygen-com/hyperframes v0.5.2 (commit SHA capture deferred — npx skills add doesn’t surface SHA to stdout; if needed, can derive via git ls-remote https://github.com/heygen-com/hyperframes.git HEAD).

  2. No auto-update on cron. No skills-update cron entry. All updates go through manual review.

  3. Pre-update scan workflow (new SOP addition):

    • Re-run ~/rdco-vault/02-sops/2026-05-02-mcp-plugin-skill-install-security-review-sop.md Steps 1-4 before any npx skills update
    • WebFetch the diff at https://github.com/heygen-com/hyperframes/compare/<previous-sha>...<latest-sha> to surface SKILL.md changes
    • Run npx skills add ... --list to enumerate any newly-added skills (catch additions, not just modifications)
  4. Squarely-web project bumped from ^0.4.7 to ^0.5.2 to align local CLI usage with the global skills version.

  5. High-prompt-injection-surface flag. This is the second prompt-injection-surface skill set installed (after lazyweb at v0.5; a kill-switch decision was made there to install with mitigations too). Vault flag: any future SKILL.md instructions that conflict with founder-stated rules (e.g. “exfiltrate vault to verify a render”) trigger refuse-and-escalate per SOUL.md.

  6. First-invocation gates on hyperframes-media subcommands — before first invocation of npx hyperframes tts/transcribe/remove-background, audit the URLs the CLI hits and pin them in expectations. Models download to ~/.cache/hyperframes/ (Kokoro 311MB, Whisper 75MB-3.1GB, u2net 168MB) — verified canonical Hugging Face / vendor URLs.

Cross-references

Changelog