1仕組みと動作原理
CLIライフサイクル全体を9ステップのループ(scaffold → catalogでブロック検索 → author → lint高速フィードバック → check最終ゲート → サブコンポジションのスナップショット → preview → 承認後render → 出力検証)として定義し、checkにはlintが含まれるため冗長な追加lintの実行を禁止する。
run `npx hyperframes check`; it reruns lint before opening the browser.
catalog検索はローカル処理(ホスト層なし、アカウント不要、クエリテキストは外部送信されない)として明記し、「英語で検索する」「結果の有無で推測せずtierフィールドを確認する」ことをルールとして徹底する。
Search is entirely local: there is no hosted tier, no account, and the query text is never sent anywhere.
checkの判定セマンティクスを明確に定義:恒常的な検出のみが終了コードを決定し、イン/アウトのアニメーション過渡期の検出は情報提供に留める。より厳密な判定が必要な場合は--strictを使用する。
Persistent findings gate the exit code; transient entrance or exit findings are informational.
レンダリングを4つのパス(ローカル / HeyGenホスト型クラウド / セルフホストAWS Lambda / セルフホストGCP Cloud Run)に分類し、選定基準と「実行前にreferenceを読む」強制要件を提示する。
Use cloud rendering when the user wants hosted rendering without local Chrome, FFmpeg, or AWS.
タイムラインの確認にはHTMLを1つずつ読むのではなく`timeline --json`を優先する。ネストされた行にはメインタイムラインに対する絶対時間(absStart/absEnd)と所属ファイルが含まれており、index.htmlを手作業で読むよりもトークン効率が高く高精度である。
run `npx hyperframes timeline --json` instead of reading `index.html` and every sub-composition file
フィードバックをワークフローのファーストクラスとし倫理規定を設ける:成功後に1件送信、公開チャネル向けは必ずマスキング、評価に応じてCOMPOSITION_STRUCTUREプライバシーパックを添付、`--file-issue`はユーザーの同意を得た最小限の再現手順のみを公開する。
**Feedback is submitted to a public channel — anonymize before sending.**
doctorのJSONモードは常にexit 0(「診断が完了した」ことを意味し、「環境に問題がない」ことではない)となるため、ペイロードの検証を必須ゲートとする。
`doctor --json` always exits zero. Gate on its payload:
ドキュメント自体に「実行すべきでないコマンド」を明記する:eventsはスキル自己申告用のテレメトリエンドポイント(テレメトリ読み取り用ではない)、validate/inspect/layoutは非推奨エイリアスであり、checkのみが保守される。
Two entries in `hyperframes --help` are not part of the authoring loop, and reaching for them wastes a turn
「コマンド実行前に対応するreferenceを読む」ことを背景知識の参照ではなく必須の契約とする:11のコマンド領域それぞれに対応ファイルが存在し、スキル横断の必須参照(sub-composition/motion/keyframes/audio/media-use)も設ける。
The following references and owning skills are mandatory command contracts, not optional background reading.
2コア機能
3外部依存関係
| Kind | Dependency / Endpoint |
|---|---|
| cli | 官方 npx hyperframes CLI(本 skill 覆盖的全部子命令面;要求 Node 22+ 与 FFmpeg) |
| api | HeyGen 托管云渲染 API(zip 直传 S3 → 提交渲染 → 轮询 → 下载签名 URL;按 credit 计费) |
| cli | AWS(Lambda 自管分布式渲染:SAM 部署 Lambda + Step Functions + S3 + IAM) |
| cli | GCP(Cloud Run + Workflows + Cloud Storage,靠 gcloud 与 Terraform 部署) |
| api | npm registry(upgrade --check 比对已装版本与 npm latest;npx 首次拉取官方包) |
| network | 官方站点/文档(catalog 搜索说明页;SKILL.md 直接引用) |
| network | GitHub(init 时对着 GitHub 检查并更新已装 skill;registry 条目与 skills 自刷新) |
| package | 可选的 on-device 语义检索索引(量化 ONNX 模型 + catalog 向量,需用户同意后下载并缓存在本机) |
| cli | ffprobe(渲染后对账:时长/帧率 vs 根 data-duration) |
4推奨統制措置と判定根拠
- scripts/: ローカルスクリプトまたはコマンドの実行: スキルディレクトリ内にスクリプトは付属していません(11ファイルすべてがMarkdown: SKILL.md + 10個のreferenceファイル)。記載のコマンドはhyperframes CLIバイナリを指します。
- 外部 API: 外部プラットフォームに対する投稿、リソース作成、または変更書き込みの実行。
- 环境变量 / API Key: ベンダーサービス認証情報の読み取り: HeyGen認証情報の解決順序(cloud.mdに明記): HEYGEN_API_KEY → HYPERFRAMES_API_KEY → ~/.heygen。
- 本地工作目录: ファイルの読み書きと成果物の出力: プロジェクト内: hyperframes.json、index.html、compositions/、renders/、snapshots/、beats/<au
5二重目の独立検証
- [ok] 凭证读取是否真发生在该 skill 目录内(橙档判定关键) — 目录内无任何代码(11 个文件全 md),故严格意义上「读取」由官方 CLI 执行;橙档依据是**声明面**:cloud.md 明写凭证解析顺序 HEYGEN_API_KEY → HYPERFRAMES_API_KEY → ~/.heygen/credentials,SKILL.md 又把 auth/cloud/lambda/cloudrun/publish/feedback 列为本 skill 统领的命令。与同批 hyperframes-cli 之外的 figma(FIGMA_TOKEN)保持同一口径,并在 reason 里注明执行主体。
- [ok] SKILL.md 里的 hyperframes.heygen.com 链接是不是被当作端点调用 — 该 URL 出自「Search the catalog before writing motion by hand」段落,是 catalog 搜索的**说明页引用**(句末带句点,形如文档链接),不是命令参数;同段明确写搜索本身 entirely local、查询文本 never sent anywhere。故按范式归为文档引用,不计入外发面。
- [ok] 云上传是否真是「用户素材出网 + 消耗额度」,且是否有幂等风险提示 — cloud.md 的渲染流水线写明 zip → 直传 S3 → POST /v3/hyperframes/renders → 轮询 → 下载,并直说「you pay per credit」;同文另给安全重试条款:zip 上传非幂等,盲重试会重复计费,故须 --idempotency-key。声明与风险提示齐备,未夸大。
- [ok] feedback / telemetry 的隐私表述是否有反例 — preview-render.md 有专门的脱敏段落(剥离绝对路径、机器标识、密钥,保留 HF_*/PRODUCER_* 变量原名),并给 COMPOSITION_STRUCTURE 的「无路径/无 src URL/无用户文本」定义;upgrade-info-misc.md 说明 telemetry 指纹只做存在性探测、从不读环境变量取值,且提供 telemetry disable 与 HYPERFRAMES_NO_TELEMETRY。未发现与声明矛盾之处。
- [unlocatable] 是否漏网的高危行为(关沙箱/TLS 降级/绕过检测) — 对 keywords(sandbox / danger / no-verify / AutomationControlled / NODE_TLS / rejectUnauthorized)做全目录扫描均无命中;但本 skill 不含代码,真实执行细节在 packages/cli 内、不属于本 skill 目录,故只能声明「本目录未出现」,不能替 CLI 整体背书。
6結論
9d841064257cece2…