Communitygithub.com

zerocrew-ai/faceless-video-skill

根据一个主题,制作完整的无脸竖屏视频(30–90秒,1080×1920)——包括调研、脚本、剪纸风格图片、旁白、以代码编写的动画(HyperFrames)、渲染以及二次审查——采用“编辑桌”风格(一张论文桌、相机飞入、索引卡、记号笔、橡皮章、字幕)。当用户要求制作无脸视频、Reel/Short/TikTok解说视频或“制作关于X的视频”且无素材时使用。

faceless-video-skill 是什么?

该技能(zerocrew-ai/faceless-video-skill)是一个完整的AI Agent技能,专为Claude Code设计,用于自动生成无脸竖屏短视频(30–90秒,1080×1920),适合Instagram Reels、YouTube Shorts或TikTok。它模拟了一个小型视频制作团队的工作流:从用户给出的主题出发,自动完成调研、脚本撰写、图像生成、旁白合成、动画编排(基于HyperFrames框架)、音效混合和最终渲染。视频采用独特的“编辑桌”风格——场景表现为一张堆满纸片、索引卡和手绘元素的桌面,相机以飞入动画切换视角。该技能支持高级旁白(ElevenLabs API)和免费本地旁白(kokoro-onnx),并能通过可选的Epidemic Sound MCP工具自动搜索并下载音乐和音效。所有中间文件(脚本、分镜、图片、音频)均保存在项目文件夹中,方便用户提出修改后快速重新渲染。最终输出是一个MP4文件,并附带一份联系表和可修改项清单。

兼容平台✓Claude Code✓Codex CLI~Cursor
npx skills add zerocrew-ai/faceless-video-skill

在你喜欢的 AI 中提问

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

文档

faceless-video

你就是整个团队:研究员、编剧、美术指导、旁白、动画师、剪辑师和质量检查员。用户提供一个主题,你交出一个渲染好的 MP4。在由 template/ 创建的项目文件夹中工作,并将所有中间文件保留在其中,这样用户就可以提出修改要求,你在几分钟内重新渲染。

阅读 references/pipeline.md 了解步骤细节,references/scenes.md 了解影片格式,references/style.md 了解外观,references/qa.md 了解审查要求。以下就是工作的顺序。

0. 设置(仅首次运行,约2分钟)

检查并在一份简短的列表中报告,对任何缺失项给出确切修复方法:

  • Node 22+ (node -v),ffmpeg (ffmpeg -version),Claude Code(你就在其中)。
  • 旁白:设置了 ELEVENLABS_API_KEY → 使用高级语音;否则使用免费的本地语音:pip install kokoro-onnx soundfile(如果存在多个 Python,则设置 HYPERFRAMES_PYTHON=<那个 python>)。
  • 字幕:npx --yes [email protected] models install parakeet(一次性,约640 MB)。
  • 图片:codex CLI 已登录 → 为用户生成图片;否则你编写提示词,用户将图片放入。 路径:下面的 $SKILL 表示该技能自己的文件夹(即此 SKILL.md 所在的文件夹;当技能加载时,Claude Code 会将其显示为技能的基础目录)。创建项目:将 $SKILL/template/ 复制到用户工作文件夹下的 videos/<slug>/ 目录中(slug 来自主题)。以下所有命令都在该项目文件夹内运行;在 Windows 上,在 Git Bash 中运行,或者将 $SKILL 替换为带引号的完整路径。

1. 简报(最多问一次)

主题。如果没有给出:观众(谁看)、时长(默认45秒)、一种强调色(默认橙色 #ec5626)、可选的行动号召(“评论 WORD 来…”)。然后停止提问,制作影片;结束时提供修改建议。

2. 调研与脚本 → script.md

  • 3–5个来源(网络搜索);保留你使用的事实及其来源。
  • 结构:钩子(前3秒说明收益),3–5个节拍,一行结尾或CTA。每个单词 ≤ 2.6词/秒(45秒≈115词)。短句;每个句子都要说出一个可以放在桌上的东西。
  • 将旁白以纯文本形式写入 vo.txt(无标题,无舞台指示)。向用户展示脚本;在自主模式下继续。

3. 分镜头列表 → shots.md

对于每个节拍:桌面上的一个站点——放置了什么(卡片、印刷品、剪纸、页面、便条),画了什么(记号笔、手写),每个东西在哪个词上移动。标记概览节拍和CTA(印章)。然后是图片列表:对于每个剪纸或印刷品,一个提示词(references/pipeline.md 中有提示词模式)→ images.md。

4. 图片 → assets/img/

  • 使用 codex:每个图片执行一次 node "$SKILL/scripts/imagegen.mjs" assets/img/<名称>_raw.png "<提示词>"。
  • 不使用 codex:向用户提供 images.md 并等待文件。
  • 剪纸在纯品红色背景 (#FF00FF) 上生成并进行键控:node "$SKILL/scripts/cutout.mjs" assets/img/<名称>_raw.png assets/img/<名称>.png(ffmpeg 色度键;其他背景回退到本地 AI 移除器,该移除器专为人设计,可能会吃掉物体的一部分——在有色背景上检查每个剪纸)。印刷品保留其背景:将 <名称>_raw.png 复制为 <名称>.png。scenes.js 仅引用非 _raw 的文件。
  • 查看每张图片(读取文件)。错误的物体、图片中的文字、奇怪的形状 → 重新生成;永远不要交付有问题的图片。

5. 旁白与单词时间

node "$SKILL/scripts/tts.mjs" vo.txt . → assets/audio/voice.wav。 npx --yes [email protected] transcribe assets/audio/voice.wav --json > transcript.json,然后 node "$SKILL/scripts/words.mjs" transcript.json . → words.js。阅读打印出的单词:在 words.fix.json 中修复听错的品牌名称或数字({"听到的": "正确的"}),然后重新运行。影片时长 = 最后一个单词结束 + 1.5 秒。

6. 影片 → scenes.js

根据分镜头列表编写 window.FILM(格式:references/scenes.md),每个 at 对应 words.js 中的单词。使其看起来经过设计而非生成的规则:每次只移动一个东西(间隔≥0.3秒),每个站点停留2–5秒,站点在二维平面上排列,使用一种强调色,帧顶部220像素 / 右侧150像素 / 底部420像素内不放重要内容,相机飞入在下一个句子开始前约0.9秒启动,以CTA印章或整个桌面的宽幅概览结束。

7. 构建与查看

node "$SKILL/scripts/apply.mjs" . → npx --yes [email protected] lint(0 错误)→ npx --yes [email protected] snapshot --at <每个节拍一个时间点> 并读取帧。修复重叠、裁剪的文字、空白帧、超出帧范围的元素。重复直到每个节拍都可读。

8. 声音

可选:assets/audio/music.mp3(任何免版税曲目)和 assets/sfx/{whoosh,thud,marker,stamp,pop,slide}.wav(名称决定它们的位置:whoosh 用于每次相机飞入,thud 用于卡片落下,marker 用于绘制,stamp 用于盖章)。如果当前会话中 Epidemic Sound MCP 工具可用,请使用它们:搜索“airy whoosh short”、“paper card drop thud”、“marker pen stroke”、“rubber stamp”、“woody click”、“paper slide”,各自下载一个作为上述文件,以及一个平静的器乐背景(lo-fi / 柔和节拍,无人声)作为 music.wav;使用 ffmpeg 将每个音效剪辑为单个敲击音。然后 node "$SKILL/scripts/mix.mjs" . → assets/audio/mix.wav(旁白 + 闪避音乐 + 拟音,-14 LUFS)。即使没有音乐或音效也运行——引擎会播放 mix.wav。 在影片计时后重新录制了旁白? node "$SKILL/scripts/retime.mjs" words_old.js words.js . 将 scenes.js 中的每个时间点移动到新的录音。

9. 渲染

npx --yes [email protected] render -o renders/<slug>_v1.mp4(1080×1920,30 fps)。然后 node "$SKILL/scripts/sheet.mjs" renders/<slug>_v1.mp4 并读取联系表。

10. 审查(二次检查)与交付

对照 references/qa.md 审查联系表,就像你没有制作这部影片一样——如果子代理可用,让其中一个盲审。修复每个发现的问题,重新渲染为 v2,绝不交付已知缺陷。交付:MP4、一份5行摘要(主题、时长、来源、用户可以更改的内容),以及提议“告诉我需要修改什么,我会重新渲染”——每条备注都是一次 scenes.js/脚本编辑和2分钟的渲染。

相关技能