motion-doctrine
4 findings (1 critical, 2 medium, 1 info), mainly data exfiltration, policy violation, command injection. Most recent scan 2026-10-22.
Second scanner: NVIDIA SkillSpector
Independent static run, no language model, over the same files as the Cisco scan above. How the two scanners compare across the whole corpus: Two scanners, one corpus.
What this skill does
GATEWAY — load FIRST before composing any HyperFrames animation or video. The high-level motion law that makes a multi-scene video feel like ONE continuous camera move instead of a stack of independently-animated slides. Covers the vector law (how you exit determines how you enter, incl. the Z scale-sign rule), the film's current, carrier elements, causal motion, the Seam Gate (build-gate enforcement), the ban on idle wobble (motion must PERFORM, not breathe), stillness-before-climax, and the sustained-motion routes. Routes to the low-level technique skills (cut-the-curve — the full catalog…
- Package
- 4 files, 44 KB
- SKILL.md
- 1454 words, 12+ sections
- Code
- JavaScript (2)
SKILL.md covers: Motion Doctrine (Gateway) · Route map · Part 1 — The Seam Law · The Vector Law · The Current · The Vector Ledger · Carriers · Causal Motion · The Seam Gate (build gate — run the verifier, exit 0 or the seam is not done) · Part 2 — Performance (the scene keeps performing) · No idle wobble · Stillness before climax
Findings
CRITICAL Node.js child_process module usage for shell command execution Command Injectionstatic
Pattern detected: from "node:child_process"
scripts/seam-gate.mjs:14
import { spawn } from "node:child_process";MEDIUM Outbound network request primitives in JavaScript/TypeScript Data Exfiltrationstatic
Pattern detected: fetch(
scripts/seam-gate.mjs:59
const r = await fetch(url, { signal: AbortSignal.timeout(2000) });MEDIUM Outbound network request primitives in JavaScript/TypeScript Data Exfiltrationstatic
Pattern detected: fetch(
scripts/seam-gate.mjs:122
const r = await fetch(base + "/api/projects");INFO Skill does not specify a license Policy Violationstatic
Skill manifest does not include a 'license' field. Specifying a license helps users understand usage terms.
SKILL.md
What is in the package
| File | Kind | Size |
|---|---|---|
SKILL.md | doc | 12 KB |
references/seam-gate.md | doc | 4.4 KB |
scripts/seam-gate.mjs | script | 22 KB |
scripts/seam-stamp.mjs | script | 5.6 KB |
Environment variables referenced
CHROME_PATH HYPERFRAME_RUNTIME_URL
Package contents recorded 2026-10-22 at commit 4371981b740d. The scan above ran against the version current at scan time; the two can differ if the skill has since been updated.
What we checked
- Static analyzer. Pattern rules over SKILL.md and bundled files: known-bad commands, exfiltration URLs, secrets, obfuscation.
- Bytecode analyzer.
- Pipeline analyzer.
- Correlation analyzer.
- Behavioral analyzer. Checks what the skill asks the agent to do against what its description claims it does.
- Trigger analyzer. Looks for instructions that fire on conditions the user did not ask for.
What we did not check
- Runtime behaviour. The skill was not executed; findings come from reading its files.
- Anything fetched at install or run time, including remote scripts, package dependencies, and URLs the skill tells the agent to open.
- Content the analyzers cannot read: images, binaries, and some non-English text.
- Known scanner bypass classes. See the methodology and limitations page.
Scan history
| Date | Verdict | Findings | Change | Analyzers | Raw |
|---|---|---|---|---|---|
| CRITICAL | 4 | = | static bytecode pipeline correlation behavioral trigger | JSON | |
| CRITICAL | 4 | first scan | static bytecode pipeline correlation behavioral trigger | JSON |
Sources
- Repository: https://github.com/heygen-com/hyperframes
- Raw scan result: heygen-com-hyperframes-claude-skills-motion-doctrine-scan.json
- Badge for your README:
 - Request a re-scan