コンテンツ制作 · nateherkai/hyperframes-student-kit

make-a-video

HyperFrames 初心者向けの使いやすいエンドツーエンド動画作成ツール。「動画を作って」「動画を作成して」「新しい動画」「動画を構築して」「ゼロから動画を作成」「動画を作りたい」「動画の作成を手伝って」と指示された場合や、HyperFrames を一度も使ったことがないユーザーがコンセプト、スクリプト、大まかなアイデアを持って完成した MP4 を求めてアクセスしてきた際に使用します。1 回の対話フローでユーザーへヒアリングを行い、必須のプレビューと視覚的検証ゲートを経て動画全体を構築します。

L4 高権限 · 段階的認可と監査V1 コミット固定コマンド実行ネットワーク通信ファイル書き込みDual-pass Audit
Author nateherkaiGitHub nateherkai/hyperframes-student-kit ↗Stars 1070License NOASSERTION(仓库根 LICENSE,实为 MIT 文本)Commit 0d30152a82
管理レベルは Skill の能力と推奨統制措置を示すものであり、品質や安全性の認証、利用可否の判定ではありません。使用の可否はユーザーおよび管理者が決定します。Agent 環境によって制約が異なるため、自動保護を仮定しないでください。第三者製 Skill の著作権は原著作者に帰属し、利用リスクは利用者が負います。

1仕組みと動作原理

全体が「2 フェーズ・8 ゲート」のステートマシンで構成されています。Phase 1 では 1 回のヒアリングで全要件を漏れなく確認し(Gate 1-4)、Phase 2 ではゲートを順次構築します(Gate 5-8)。各ゲートは次のゲートで消費される具体的な成果物を必ず出力しなければならず、ゲートのスキップは固く禁じられています。

.claude/skills/make-a-video/SKILL.md
Two phases, eight sequential gates. Every gate produces a concrete artifact the next gate consumes. Don't skip gates.
説明文にある「1 回の対話フローでヒアリングを行う」という記載と、Gate 1 の「1 問 1 答」の原則は表裏一体です。すなわち、一度に 10 個の質問を投げかけることなく、1 つの完結した対話フローで全要件を確定させます。

入口でのトリアージ(振り分け):URL → website-to-hyperframes、9:16 の顔出しトーキングヘッド動画 → 本 skill で Gate 4 まで進めてから short-form-edit に引き継ぎ、フレームワークのルール確認のみ → hyperframes。

.claude/skills/make-a-video/SKILL.md
**Hand off when:** - The user pastes a URL and wants a video from that site → invoke `/website-to-hyperframes` … - The user asks for framework rules, not a video → invoke `/hyperframes`
Gate 5 でも再度ハンドオフの再確認を行います。要件定義書(brief)が 9:16 のトーキングヘッド+シーンオーバーレイである場合は、この段階で要件定義書を /short-form-edit に引き継ぎます。

ヒアリングフェーズには厳格なゲートが存在します。Gate 1 で 6 項目(用途/ターゲット層/尺/アスペクト比/フレームレート/プラットフォームの制約)を漏れなく収集し、Gate 4 で BRIEF.md を作成してユーザーの明確な合意を得るまで実装を開始できません。

.claude/skills/make-a-video/SKILL.md
4. **Show the brief. WAIT for explicit approval.** Don't proceed to Gate 5 without a clear "yes, build it."
Gate 4 では、ワークスペースのルートにある MOTION_PHILOSOPHY.md の読み込みも義務付けられており(存在する場合は必須)、これを審美基準のベースラインとします。

スタイル確定フェーズでは、質問の前にまず資産を棚卸しし、ユーザーのブランドを勝手に決定しません。ワークスペースとプロジェクトのアセットを先にスキャンし、配色/フォント/ロゴ/参考動画/テンポ/音楽を段階的にヒアリングします。ユーザーが提供を明示的に拒否した場合にのみ、MOTION_PHILOSOPHY のデフォルト値にフォールバックします。

.claude/skills/make-a-video/SKILL.md
**Before asking the user anything, inventory existing assets.** Check `<workspace-root>/assets/` and any project `assets/` folder. Don't ask for what's already there.
Non-negotiables(絶対厳守事項)の「ユーザーにブランドを押し付けない(DO NOT impose a brand on the user)」に対応します(先に確認し、拒絶された場合のみデフォルトを使用)。

構築フェーズでは複製可能なスケルトンを提供します。`npx hyperframes init`(または類似プロジェクトの hyperframes.json/meta.json を再利用)、単一の信頼できる情報源としての assets/style-profile.md、ビートごとにコンセプト/視覚要素/モーション言語/イージング/退出処理/音声を明記した絵コンテを用意し、20% / 55% / 25% の 3 幕構成を推奨します。

.claude/skills/make-a-video/SKILL.md
- Act 1 (hook) ≈ 20% of duration - Act 2 (body) ≈ 55% - Act 3 (payoff + outro with 4–6 second hold) ≈ 25%
スキャフォールドのコマンドは Gate 5 に記載されています(`npx hyperframes init`)。また、兄弟プロジェクトの設定をテンプレートとしてコピーする選択肢も提供可能です。

サブコンポジションのテンプレートは「スコープ付きスタイル([data-composition-id])」「IIFE でラップされた一時停止状態の GSAP タイムライン」「末尾の SLOT アンカー補填 tween」の 3 点セットを厳守し、タイムラインは window.__timelines に登録します。

.claude/skills/make-a-video/SKILL.md
tl.to({}, { duration: SLOT_DURATION }, 0); // anchor — MOTION_PHILOSOPHY Law 11 … window.__timelines["scene-name"] = tl;
付随する規律:カタログブロックを `npx hyperframes add <name>` でインストールした後は、その CSS を [data-composition-id="..."] にスコープ限定する必要があります。カタログブロック標準の `html, body { ... }` ルールが親ドキュメントを汚染するのを防ぐためです。

決定性は厳格な制約事項です。Math.random()、Date.now()、レンダリング時の fetch() は禁止され、シード付き PRNG または高調波サインハッシュを使用します。

.claude/skills/make-a-video/SKILL.md
No `Math.random()`, no `Date.now()`, no render-time `fetch()`. Use seeded PRNGs or harmonic-sin hashes (MOTION_PHILOSOPHY §3.10).
理由は references/composition-scaffold.md に明記されています。HyperFrames はレンダリング時にタイムラインを同期的に読み取るため、非決定的な要素があるとフレーム抽出やレンダリングの再現性が損なわれます。

2 段階の必須プレビューゲート+フレーム抽出目視検査:lint および Studio(localhost:3002)のパスとユーザーの明示的な同意を経て初めてドラフトレンダリングを実行します。ドラフトは ffmpeg でフレーム抽出し、Read ツールで実際に画像を確認した上で、ローカルサーバー経由の試写レビューと承認を得てから最終レンダリングを行います。

.claude/skills/make-a-video/SKILL.md
3. **Call the `Read` tool on every PNG.** The Read tool loads the image into context — don't just list filenames. … Do NOT use Python's `http.server` — it doesn't support HTTP Range requests, so scrubbing breaks.
PREVIEW GATE 2 の試写サーバーには `npx serve renders -p 8080 -n` を使用します。最終レンダリングは --quality standard、ドラフトは --quality draft を指定します。

2コア機能

01初心者向けエントリトリアージ:入力形式に応じて自前構築、ハンドオフ、フレームワーク参照への縮退を判断
02構造化ヒアリング:1 問 1 答形式での 6 項目の意図収集(用途/ターゲット層/尺/アスペクト比/フレームレート/プラットフォーム制約)+音声・字幕プランの策定
03スクリプトおよびナレーションプランの収集(TTS および文字起こしコマンド npx hyperframes tts / transcribe を含む)
04スタイル収集と「ブランド非強制」の徹底(不足情報にはデフォルト値を提示するのみで、ユーザーに代わって決定しない)
05BRIEF.md の統合と厳格な承認ゲート(明確な同意が得られない限り構築フェーズへの移行を禁止)
06プロジェクトスキャフォールディングと絵コンテ:init やテンプレート再利用、アセット集約、style-profile.md による単一情報源化、ビートごとの絵コンテテンプレート
07意図からカタログブロックへのマッピング表(自然言語の要望を npx hyperframes add <block> コマンドへ変換)
08サブコンポジションのスキャフォールド規律(スコープ付きスタイル + IIFE + 一時停止タイムライン + SLOT アンカー + window.__timelines 登録)
09レンダリング前チェックリスト(構造プリフライト + 審美プリフライト + lint)
102 つの必須プレビューゲートとフレーム目視検査:Studio プレビュー、ffmpeg フレーム抽出 + Read ツールによる画像確認、ローカル試写による承認、その後の最終レンダリング

3外部依存関係

KindDependency / Endpoint
cliHyperFrames CLI(init / lint / preview / render / transcribe / tts / add,仓库依赖 hyperframes 包)
cliffmpeg(从草稿成片抽帧做目检)
clinpx serve(本地静态服务器,供用户试播签核;文档明确禁用 Python http.server 因无 Range 支持)
networkHyperFrames Studio 预览服务器(本地)
networkGoogle Fonts(**产物期**:style-intake 的默认字体对在生成的 composition 里按需引,浏览器/渲染器加载)
cli宿主问答工具 AskUserQuestion(访谈阶段逐题提问)
package工作区外部依赖 MOTION_PHILOSOPHY.md(作者自述为『本 skill 唯一假定存在的外部参考』)

4推奨統制措置と判定根拠

安全運用のための推奨統制措置
Agent 向け
段階的・都度認可、サンドボックス推奨
管理者向け
承認フロー、ロールバック可能、全履歴監査
判定根拠(ファイルパスと抜粋)
  • scripts/: ローカルスクリプトまたはコマンドの実行: 本 skill 自身に含まれるスクリプトは 0 個(ディレクトリ内は SKILL.md + 6 つのリファレンスファイルのみ、find -type f で確認済み)
  • 网络端点: 外部ネットワークアクセスの宣言: 実行時:ローカルループバックのみ(Studio プレビュー http://localhost:3002 および試写用サーバー http://localhost:8080)。なし
  • 本地工作目录: ファイルの読み書きと成果物の出力: video-projects/<slug>/(またはユーザー指定ディレクトリ)配下のプロジェクトファイル:BRIEF.md、STORYBOARD.md、index.html、com
監査ノート: 審査対象=本 skill 自身のディレクトリ(SKILL.md + 6 つのリファレンス、計 7 ファイル):すべてプロンプト、テンプレート、チェックリストで構成されており、スクリプト、認証情報の読み取り、環境変数の参照、サードパーティ API 呼び出し、削除・破壊的変更は一切含まれません。ランタイム時の動作は、ローカルプロジェクトの読み書き + 公式 hyperframes CLI(init/lint/preview/render/transcribe/tts/add)+ システム ffmpeg + ローカルループバックサーバー(3002/8080)であり、「ローカルツール/CLI およびローカル読み書きのみ」に該当する青区分となります。緑区分とならない理由は、プロジェクト構成の新規作成・変更を行い MP4 をレンダリング出力する点、および公式レジストリ経由でカタログブロックテンプレートを取得する点(サプライチェーン隣接面)があるためです。赤区分の特徴(サンドボックス無効化、TLS ダウングレード、自動化検知回避、任意コード実行面など)は皆無です。ドキュメントに記載されている Google Fonts やローカル URL は生成物側での参照またはループバックアドレスであり、分類基準上リスク要因とはみなされません。

5二重目の独立検証

  • [ok] 目录文件清单与脚本面 — find 返回 SKILL.md(12.6KB)+ references/{build-checklist,catalog-intent-map,composition-scaffold,interview-questions,storyboard-template,style-intake}.md;无 scripts/、无 .js/.mjs/.py,无隐藏文件。
  • [ok] URL/网络面归类 — 命中的 URL 三类:localhost:3002(Studio)、localhost:8080(试播)、fonts.googleapis.com(默认字体对,产物期)。无第三方 API 端点、无上传路径、无云服务名。
  • [ok] 凭证面反例搜索 — 0 处 env/API_KEY/TOKEN/SECRET 命中;全文未要求账号、配额或密钥(与 edit-video 形成对照:那里把服务前置与成本纪律写进主流程)。
  • [ok] 门禁与非协商条款回源 — Gate 4 的 'WAIT for explicit approval.'、Gate 7 的 'Silence is not approval.'、Gate 8 的 Read-every-PNG、SLOT 锚、class="clip" 禁令、Math.random/Date.now 禁令、'Never put index.html at the workspace root.' 均在源码定位到,无遗漏改写。
  • [ok] references 引用完整性 — SKILL.md References 段列的 6 个文件全部存在于 references/ 目录,且每个文件开头自述所属 Gate(Gate 1-3 / Gate 5 / Gate 6 / Gates 7-8),引用链无死链。
  • [ok] CLI 能力是否被误记为云服务 — 文档只写 `npx hyperframes tts --help` 与 `npx hyperframes transcribe ...`,未指定服务商或密钥;故 external_deps 只记 CLI 本体,不虚增 API 条目。

6結論

  • 「初心者から完成動画まで」を成果物を伴う 8 つのゲートに分解し、要所で人間による承認を挟むことで、的外れな生成物が一括出力されるのを防ぎます。
  • 無理に単一処理を行わず入口で適切にトリアージ:URL、9:16 トーキングヘッド、フレームワーク規約の確認のみという 3 つのケースをより適した skill に明確に引き継ぎます。
  • ブランドを押し付けない設計:アセットの棚卸しを先に行い、ユーザーがスタイルの提示を明示的に拒否した場合にのみデフォルト値を適用します。
  • 実用的な視覚的検証:Read ツールで抽出フレームを 1 枚ずつ確認することを義務付け、チェックポイント(顔の見切れ、字幕、配色、オーバーフロー、空白フレーム、改行時の単語の途切れ)を具体的にリスト化しています。
  • 固められたエンジニアリングのベストプラクティス:カタログブロック CSS のスコープ化、video 要素への class="clip" の禁止、試写での Python http.server の回避、タイムラインへの SLOT アンカー補填をルール化。
  • 明確に役割分担された 6 つのリファレンス:ヒアリング質問集、スタイル決定ツリー、意図マッピング、絵コンテテンプレート、スキャフォールド、チェックリストを再利用可能なファイル群として体系化。
  • 最適な用途: 適しているケース:HyperFrames を初めて使う方、コンセプトやスクリプトしか持っておらず人の確認を挟むエンドツーエンドの制作フローを求める初心者、チームの新規動画プロジェクト向け標準作業手順(SOP)テンプレートとしての利用。
    不向きな用途: 適していないケース:フレームワークのルール確認のみ(直接 /hyperframes を利用)、既存プロジェクトへのモーションビート追加のみ(hyperframes-video-beats を利用)、9:16 トーキングヘッドの短尺編集(/short-form-edit)、複数回の承認ステップを受け入れられずワンプロンプトで完全自動出力を求めるユーザー。
    Install Agent-Ready
    ① Verified Mirror 2026-09-28
    Option A · Direct DownloadDownload make-a-video.tar.gz
    sha256: d16534f6ceefd132…
    Option B · Copy Guide for Agent
    install.json
    Agent はこの JSON ガイドから自動的にダウンロードして検証します。
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 0d30152a82.