Communitygithub.com

cig13zs/hf-kit

基于 HyperFrames 的扩展工具包,提供 16 种 YouTube 风格、13 个动画模块、声音混音预设、CC0 音效与情绪音轨、字幕生成器、项目脚手架、YouTube 创用 CC 素材许可检查器以及渲染校验工具。适用于需要遵循测量风格(如解说、纪录片、Shorts 知识等)或简报中指定风格的 HyperFrames 视频。请在 `hyperframes` 技能之后加载。

hf-kit 是什么?

cig13zs/hf-kit 是一个专为 HyperFrames 视频创作设计的扩展工具包,旨在帮助开发者基于系统化的研究数据(涵盖 48 个 YouTube 视频、16 个细分领域)快速构建符合测量风格的视频项目。它提供了一整套从风格选择、项目脚手架搭建、动画模块应用、字幕生成、声音混音、背景素材许可检查到最终渲染校验的完整工作流。工具包支持 CLI 和 Python 工具链,兼容 HyperFrames 0.8.77 版本,并适用于 Cursor、Codex 等 AI 编码环境。核心优势在于所有风格参数(如切割率、镜头长度、语速、响度等)均源自实际研究,用户可通过简单的命令选取风格、生成项目结构、应用动画模块,并利用渲染检查器评估成品与参考范围的偏差。此外,其背景素材来源工具能自动识别 YouTube 视频的创用 CC 许可,提供合规的素材引用建议,有效降低版权风险。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/cig13zs/hf-kit/tree/HEAD/skills/hf-kit

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

hf-kit 是做什么的?

基于 HyperFrames 0.8.77 的扩展层。所有内容均源于系统的研究:涵盖 16 个细分领域的 48 个 YouTube 视频,详细数据位于 research/ 目录。以下路径均相对于仓库根目录。请阅读 SPEC.md 了解契约,并遵循 hyperframes-core 的编排规则。

以下提到的 hyperframes 指 npx [email protected] 或本地安装的 0.8.77 版本。Python 工具需要 Python 3.10+ 并安装 numpy 和 Pillow,同时确保 ffmpeg 在系统 PATH 中。

工作流

  1. 选择风格。 styles/README.md 将领域映射到风格 ID,再对应到模块、字幕和混音预设。风格 JSON 文件中包含了测量范围(各段落的切割率、镜头长度、每分钟字数、LRA、静默时长)以及主目标值(-14 LUFS、-1 dBTP)。

  2. 搭建脚手架。 python tools/scaffold.py <dir> --format 16:9|9:16 --duration S --style <id> [--blocks a,b]。它会生成包含风格标记的 index.html,将 hyperframes.json 锁定到 v0.8.77 注册表,并将模块复制到 compositions/ 目录。如果目标目录非空,则会拒绝覆盖。

  3. 使用模块。 模块目录 blocks/README.md 提供:pill-label、chapter-card、number-card(简洁或货币风格)、progress-badge、question-card、doc-highlight、film-gate、world-camera、ui-window、tier-board、face-banner-stack(带有针对圆角 16:9 话题框的 topic-top 布局)、zoom-through、blur-swap。每个模块都是一个子编排,使用 data-composition-variables 声明变量;通过 data-variable-values 传递值。examples/<block>/ 中提供了每个模块的可用示例。请使用纯 #root 和纯后代选择器来定义模块样式。切勿使用复合选择器 #root[data-composition-id=...]:它虽然能通过检查,但会导致渲染空白。

  4. 生成字幕。 python tools/captions.py words.json --variant cards|karaoke|speaker|keyword|punch --format 9:16 --out compositions/captions.html。输入格式为 [{text,start,end,speaker?,class?}] 或 hyperframes transcribe 生成的 JSON。

  5. 处理声音。 sound/MIX.md 提供了 10 个可直接复制的 hyperframes-audio 预设(如语音优先平滑、转折处停顿、重音处静音、剪辑前淡出等),每个预设都注明了来源行。sound/sfx/ 包含 11 个生成的音效,sound/SFX.md 将事件映射到文件和电平。7 个情绪音轨未包含在仓库中:运行 python sound/gen_bed.py 可将所有音轨渲染到 sound/beds/ 目录,目标响度为 -20 LUFS;python sound/gen_bed.py --mood <name> --seconds N --out bed.wav 可渲染任意时长的音轨。两个生成器都是确定性的,输出为 CC0 许可。

  6. 使用 YouTube 背景素材或音乐。 python tools/bg_source.py <url> [--download --out assets/ --audio]。

    • 仅当 yt-dlp 报告素材为创用 CC 许可时,才输出 ACCEPT(退出码 0),并打印用于描述的引用行。视频下载至少需要 --min-height 参数(默认 1080);--audio 模式没有高度限制。
    • 当标准许可的上传者在标题或描述中声称“可重用”时,输出 REVIEW(退出码 3)。标题中声称“无版权”仅为上传者个人声明。请核实上传者是否为原始创作者,并截取许可条款截图。
    • 其他情况输出 REFUSE(退出码 2)。

    每次决策都会追加到 sources/provenance.jsonl 文件中(使用 --log 参数可更改路径)。即使素材声明为创用 CC,内容 ID 仍可能声称其是对他人作品的重传,因此请优先选择原始频道。将下载的素材保留在项目的 assets/ 目录中,切勿将其提交到公共仓库。

  7. 渲染前检查。 运行 hyperframes lint <dir> 和 hyperframes check <dir>;接着运行 hyperframes snapshot <dir> --frames 6 并查看联系表。通过 lint 检查不意味着视觉效果通过。

  8. 渲染与测量。 运行 hyperframes render <dir> --output out.mp4,然后运行 python tools/check.py out.mp4 --style <id>。它会将每项测量结果与风格的参考范围以及主响度线进行对比。结果仅供参考:偏差表明剪辑偏离了参考值,是否需要调整由你的分析决定。

研究结论(简版)

  • 在全部 16 个细分领域中,切割率和响度并未区分出离群片和对照片。真正起区分作用的是:人物面临风险、前几秒内点明风险、屏幕上的证据以及明确的答案(详见 research/TECHNIQUES.md 中的“什么没有区分离群片和对照片”)。
  • 硬切计数是下限指标。在旁白下节奏不可靠。音频部分未进行人工聆听:声音结论来自 R128 数值、频谱和字幕标签。

文件位置

需求路径
契约与规则SPEC.md
风格及其测量范围styles/README.md, styles/<id>.json
模块目录与示例blocks/README.md, examples/<block>/
混音预设与音效映射sound/MIX.md, sound/SFX.md
技巧库与情绪表research/TECHNIQUES.md
领域 DNA 表及参考清单research/niches/<niche>.md
每个视频的一张卡片和一个数据文件research/cards/<niche>/<id>.md, research/data/<id>.json
知识章节(音乐与情绪、声音设计、视觉特效与动画)research/knowledge/

相关技能