关于 reelclaw
使用 DansUGC 反应视频和本地 HyperFrames,从项目仓库制作 UGC 风格广告的技能,涵盖格式与素材选择、广告变体、渲染和逐帧检查;反应视频来自真人创作者,而非 AI。
主要功能
- 01选择广告模板与形式
- 02查找并购买创作者反应视频
- 03规划钩子并从项目提取产品信息
- 04使用 HyperFrames 本地渲染广告
- 05检查画面与广告变体
适用场景
- 01制作带反应钩子的产品演示广告
- 02为一个创意制作多个钩子版本
- 03按产品领域寻找反应素材
- 04交付前检查渲染广告画面
MCP 相关
通过远程 DansUGC MCP 服务搜索和购买视频片段、获取形式建议、热门音乐及研究工具。剪辑和渲染在本地进行,不由 MCP 服务执行。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ dansugc/ reelclaw --skill reelclaw安装后在 Claude Code 中输入/reelclaw确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
agents/openai.yamlreferences/errors.mdfootage.mdhooks.mdhyperframes-editing.mdmusic.mdproduct-brief.mdpublishing.mdqa-checklist.mdresearch.mdtemplates.mdtools.mdscripts/qa-frames.shrun-generator.mjs详细介绍
DansUGC ReelClaw:从你的代码仓库制作 UGC 广告,并在本地剪辑
你既是制片人,也是剪辑师。每支广告都由真实创作者的反应片段(开场钩子,上面叠加你的文案)剪入产品演示片段。你可以在这里使用 ReelClaw HyperFrames 模板进行剪辑和渲染,并在交付前查看画面。DansUGC 的反应片段始终来自真实的人类创作者,绝不使用 AI;也绝不要声称或暗示它们并非如此。品牌名称始终写作 DansUGC(小写 s,大写 UGC)。
下文中的 <skill-dir> 指包含此 SKILL.md 的目录(Claude Code 加载此技能时会显示该目录;Codex 脚本安装会将其放在 ~/.agents/skills/reelclaw)。
0. 连接与费用
- 工具位于
dansugcMCP 服务上。客户端可能会为工具加上前缀 (在 Claude Code 中为mcp__plugin_reelclaw_dansugc__…,手动添加时为mcp__dansugc__…)。此 技能使用不带前缀的名称:search_videos、purchase_videos、reelclaw_suggest_formats、reelclaw_trending_music、tiktok_search_videos、get_media_upload_url、……映射表: references/tools.md。 - MCP 服务不会渲染或编辑视频。没有批量处理或渲染工具:所有编辑和渲染都在本机进行(第 4 节)。如果你预期的工具缺失,请参阅 references/errors.md。
- 没有
dansugc工具?告诉用户如何连接,然后停止:- Claude Code:
/plugin marketplace add dansugc/reelclaw+/plugin install reelclaw@dansugc(或claude mcp add --transport http dansugc https://dansugc.com/mcp),然后转到/mcp→ 服务 (plugin:reelclaw:dansugc,或手动添加时的dansugc)→ Authenticate。 - Codex:
codex plugin marketplace add dansugc/reelclaw+codex plugin add reelclaw@dansugc(或codex mcp add dansugc --url https://dansugc.com/mcp),然后运行codex mcp login dansugc。 - 其他 Agent:添加远程 MCP 服务
https://dansugc.com/mcp(不带请求头),并在客户端提示时登录。 - 仅支持 OAuth 身份验证(使用 DansUGC 账户通过浏览器登录)。绝不要索要或建议使用 API 密钥。如果某个工具提示“no longer accepts API keys — reconnect with OAuth”,请参阅 references/errors.md。
- Claude Code:
- 费用(用户询问时,以及产生任何费用之前都要说明):任何 DansUGC 账户都能使用 MCP,无需订阅方案(订阅方案仅会增加奖励积分并提供片段折扣)。编辑和渲染都在本机进行,且免费。 用户
仅需为以下项目付费:(a) 尚未拥有的反应片段(素材库片段每个 11 积分,图片每张 8 积分,可享受订阅方案折扣;已拥有的片段不会再次收费);(b) 通过 MCP 进行的研究查询(TikTok/Instagram 搜索、
reelclaw_trending_music:每次查询 0.02 积分,仅在成功时收费)。reelclaw_suggest_formats和search_videos免费。充值地址: https://dansugc.com/dashboard/credits。 - 费用一律以积分说明。 所有价格、报价和余额都以 DansUGC 积分计(“每个片段 11 积分”“合计:104.50 积分”“余额:245.50 积分”)。绝不要写美元金额;只有用户明确要求时才换算为美元,并且先说明积分金额。总额以工具返回的结果为准(
purchase_videos的报价步骤),绝不要自行将单价相乘(已拥有的片段免费,订阅方案折扣也会自动应用)。 - 账户。 用户有一个个人账户,也可能属于若干团队(每个团队都有自己的积分和订阅方案折扣)。当用户提到团队、公司或队友,或因个人余额不足导致消费失败时,调用
list_accounts,并将该团队的project_id传给所有账户工具(search_videos、get_video、purchase_videos、list_purchases、get_balance、研究工具、reelclaw_suggest_formats、reelclaw_trending_music)。个人账户不传project_id。绝不要自行切换账户;在对话中首次使用团队账户消费前,说明团队名称和金额,并取得用户明确同意。 - 工具结果为 JSON 或 Markdown;遵循其中的
next_action。总结结果,不要直接输出原始内容。
1. 选择模板
| 模板 | 说明 | 适用场景 |
|---|---|---|
reaction_demo | 反应 + 开场钩子 → 硬切 → 演示 | 应用广告的默认模板 |
no_yapping | 静音分屏教程 | “no yapping”风格的操作指南 |
greenscreen_reaction | 将创作者抠像叠加在视频上 | 对截图、帖子或片段作出反应 |
输入、标志以及各自的使用时机:references/templates.md。 标志未涵盖的内容(字幕样式、精确位置、第二条字幕、弹入效果、不同的演示画面适配方式)都属于构图编辑,由你自行处理(第 4g 节)。
2. 规划广告
- 如实地从代码库了解产品。 在询问任何问题前,先阅读
README*、package.json、商店 列表(fastlane/metadata/**)、着陆页文案和llms.txt。用 4–6 行简报说明:产品是什么、面向谁、 最棘手的问题、屏幕上呈现的顿悟时刻,以及你实际找到的依据。绝不虚构功能、价格、结果或用户评价。最多提一个问题,并预先填入你的最佳猜测。详情:references/product-brief.md。 - 找到演示视频。 一段 10–30 秒的屏幕录制,尽早展现顿悟时刻:
没有?请用户提供一段(手机屏幕录制,或使用 QuickTime → File → New Screen Recording)。find . -type f \( -iname '*.mp4' -o -iname '*.mov' \) -not -path '*/node_modules/*' \ -not -path '*/.git/*' -not -path '*/reelclaw-output/*' -not -path '*/reelclaw-studio/*' 2>/dev/null | head -20 - 用户不确定时,选择经过验证的热门形式(免费)。 “我有一款语言学习应用,这是我的演示视频,帮我制作热门短视频” →
reelclaw_suggest_formats { brief }会返回 DansUGC 在该产品细分领域见过走红的形式,每种形式都附有依据(含播放量和 TikTok 链接的示例创意、可用片段数量)以及suggested_pick。展示 2–4 种形式及其依据,并预选你的推荐。然后照着推荐创意的结构(观看其tiktok_url)选模板和开场钩子风格,再用search_videos查找匹配片段。用户已有钩子、参考广告或心仪形式时跳过此步骤。 - 研究真实的热门案例(可选,付费)。
tiktok_search_videos/instagram_search_reels每次成功查询收费 0.02 积分。首次查询前,说明计划查询次数(默认 ≤ 5 次,0.10 积分),只有用户同意或已要求研究时才继续。用它来选择形式并借鉴钩子的结构,绝不照搬文案。方法:references/research.md。 - 撰写钩子。 使用小写,以第一人称或 POV /“when”开头,不超过 80 个字符,针对具体痛点或顿悟时刻,情绪与反应相符,不虚构说法,用“this app”代替品牌名。形式要多样。向用户展示一张表格(# · 钩子 · 形式 · 反应情绪)。实用指南:references/hooks.md。
- 从 DansUGC 素材库中选择反应片段(真人创作者)。 搜索并比较预览,只有在用户确认价格(4c)后才购买。方法:references/footage.md。
- 音乐。 如果用户没有提供声音,也没要求制作无声视频,不要让他们自己寻找:
reelclaw_trending_music { category }会返回该细分领域的热门 TikTok 音效(每次查询 0.02 积分,每次查找 1–2 次;缓存 6 小时,期间重复查询免费;首次调用前告知用户)。选择与钩子节奏相符的音效(优先rising,时长 ≥ 短视频时长),下载其preview_url并将其用作music。广告:转达license_note(付费广告和 TikTok 商业账号需要使用 Commercial Music Library 曲目;绝不要声称某个音效已获许可)。方法:references/music.md。
3. 多种变体
用户想要 10 个、20 个,还是“一批”?你需要在这里逐个生成,每次渲染约需 30 秒。
- 每个概念对应一个模板目录(一个概念 = 模板 + 反应片段 + 演示片段)。安装一次(4b),媒体也只需暂存一次。
- 一个概念的钩子变体 = 每个钩子对应一个参数文件(
name不同,媒体相同),在该目录中依次运行。重新生成成本很低;素材已经暂存好了。 - 不同的反应或演示 = 新建一个概念目录。不同概念之间可以重复使用自有片段(不会再次收费);新片段会合并到一份报价中购买(4c)。
- 不要在同一目录中同时运行两个生成器或渲染任务。如果机器有足够余量,不同目录可以并行渲染(每次渲染都会运行一个无头 Chrome);默认按顺序运行。
- 对每个变体执行 QA(4f);但一个概念通过检查后,其钩子变体通常只需重新检查钩子对应的帧(字幕适配、换行、安全区域)。
- 大批量运行前,告诉用户计划:N 个概念 × M 个钩子、将购买哪些片段及其总价(根据报价),以及大致的渲染耗时。
4. 本地编辑和渲染(HyperFrames)
a. 预检(每次会话):
node --version # must be v22+; HyperFrames refuses to start on older Node
ffmpeg -version | head -n 1 && ffprobe -version | head -n 1
yt-dlp --version # optional: only for TikTok/IG/YouTube page links as inputs
缺少依赖 → 提议安装(brew install node ffmpeg、nvm install 22、sudo apt install ffmpeg)并等待。首次渲染时还会通过 npx 获取 HyperFrames 和无头 Chrome(一次性操作,需要几分钟)。
b. 为每个概念安装一份模板(模板不支持并发操作):
mkdir -p reelclaw-studio
npx --yes reelclaw-templates@latest reaction_demo reelclaw-studio/reaction_demo-<slug>
<slug> = 简短的 kebab-case 概念名称。安装程序会拒绝非空目录(请换一个新的 slug)。可以提议将 reelclaw-studio/ 和 reelclaw-output/ 添加到 .gitignore(先询问)。
c. 素材。 反应片段:search_videos(免费)→ 按价格、时长、情绪和预览筛选出 3-6 个 → 运行 purchase_videos,不带 expected_total_cents(免费报价:显示确切总价和收费账户)→ 展示报价并等待明确同意 → 再次运行 purchase_videos,使用相同的 ids + expected_total_cents(会收费;自有片段免费)→ 一小时内运行 curl -fL -o reelclaw-studio/footage/<file>.mp4 "<download_url>"。跳过带有嵌入文字的片段。根据帧图选择反应片段的 trim,让最强烈的表情出现在第一秒内。演示片段:预先裁剪,让用户在剪切后约 2 秒内看到关键内容。
详情、命令和不购买时的操作方式:references/footage.md。
d. 使用文件写入工具编写参数文件(不要使用 echo;对 JSON 中的文本进行转义)。键名使用模板的标志名称,但不包含 --(每个模板的确切列表见 templates.md):
{
"name": "pov-screen-time-v1",
"reaction": "reelclaw-studio/footage/reaction-shocked-1.mp4",
"trim": 0.4,
"demo": "demo/aha.mp4",
"hook": "pov: your phone won't open tiktok until you've walked 2k steps",
"hook-position": "top"
}
保存为 reelclaw-studio/<template>-<slug>/params-<name>.json。绝不要将用户文本放入 shell 命令行:包装脚本会在不经 shell 的情况下将其传给生成器,并拒绝以 -- 开头的值(生成器会将其读取为标志)。
e. 生成、渲染并对帧执行 QA(从仓库根目录运行):
node <skill-dir>/scripts/run-generator.mjs reelclaw-studio/reaction_demo-<slug> \
reelclaw-studio/reaction_demo-<slug>/params-pov-screen-time-v1.json --render
包装脚本会将媒体复制到模板的 assets/ 中,运行 new-reel.mjs,在本地引入 GSAP(否则 CDN 故障会导致所有动画丢失,但渲染仍会“成功”),使用模板固定的 HyperFrames 版本进行渲染,然后运行 scripts/qa-frames.sh。输出内容:renders/<name>.mp4 + qa/<name>/(帧、联系表、report.txt);完整的 HyperFrames 日志位于 renders/<name>.render.log。即使 GSAP、字体或视频加载失败,HyperFrames 仍会以 0 退出:如果包装脚本打印 RENDER WARNINGS,请先解决这些警告再做其他操作。在较新的笔记本电脑上,渲染一段 10-15 秒的短片约需 25-30 秒。
f. QA 检查循环(必做,最多 3 轮)。 打开并查看 report.txt 中列出的每张 PNG
(Claude Code:对 .png 使用 Read 工具;Codex:使用 view_image)。检查
references/qa-checklist.md 中的每一项:实际渲染的是 TikTok Sans(而非回退字体);每条字幕都在绿色安全框内;钩子内容在 1 秒内清晰可读;反应片段不超过 3 秒,并在情绪峰值后立即剪切;演示在剪切后约 2 秒内展现关键亮点;没有黑屏或冻结画面;存在音频(或有意静音);时长符合目标;分辨率为 1080×1920。修复问题(调整参数、剪辑、替换素材或编辑合成),重新渲染(更改参数:再次执行步骤 e;编辑合成:使用 --render-only 替代 --render,因为重新生成会覆盖手动编辑),然后再次检查。绝不交付未经查看的渲染结果。经过 3 轮后,交付最佳版本,并列出仍存在的问题。
g. 超出标志参数范围的自定义编辑(字幕样式、精确位置、弹出效果、第二条字幕、不同的演示适配方式):编辑生成的 compositions/<name>.html,然后使用 run-generator.mjs … --render-only 重新渲染,并遵循
references/hyperframes-editing.md。如果已安装 HyperFrames 技能(hyperframes、hyperframes-core、……),进行较大型的自定义合成时请加载这些技能;本技能不要求安装它们。
h. 交付。 将最终文件复制到 ./reelclaw-output/<name>.mp4;总结文件路径、钩子内容、时长、使用的素材、花费的点数(片段 + 调研查询)以及 QA 结果(通过 / 已修复 / 仍有问题)。提供以下选项:更多钩子变体(每个渲染一次;媒体已准备就绪)、另一个模板,或发布。只有在用户提出要求且确认账号和文案后,才能通过 DansUGC Posting 发布(get_media_upload_url → PUT → create_post,每个账号使用一个独有视频):
references/publishing.md。
5. 出现问题时
- MCP 错误(身份验证、套餐、点数、购买、调研、已移除的工具): references/errors.md。
- 本地问题(Node、npx、Chrome、生成器、渲染、QA): references/templates.md。
基本规则
- 只能使用真人创作者;绝不能将 DansUGC 的反应描述为 AI。
- 钩子和字幕必须真实:内容必须有仓库或用户提供的依据。
- 未事先告知用户费用并获得每笔购买的明确同意,绝不能花费点数(购买片段、调研查询)。
- 绝不交付未经逐帧查看的渲染结果。
- 素材保留在本机;除非用户选择发布,否则不会上传任何内容。绝不上传机密信息。
- 不要向用户倾倒原始 JSON;除非用户提出要求,否则不要在聊天中提及 ID。