بنقرة واحدة
t2video
一站式短视频制作工具。整合 SiliconFlow TTS 语音合成、素材搜集(Pexels/Pixabay/AI 生成)和 FFmpeg 组装,从脚本到成品视频一步完成。无 subagent 模式,适合短小视频。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
一站式短视频制作工具。整合 SiliconFlow TTS 语音合成、素材搜集(Pexels/Pixabay/AI 生成)和 FFmpeg 组装,从脚本到成品视频一步完成。无 subagent 模式,适合短小视频。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
软件著作权登记全流程:从代码仓/目录生成程序鉴别材料(源程序文档)、 软件操作手册、申请填报信息 Markdown,并可辅助在线填报。 当用户需要申请软件著作权、生成软著材料时触发。
维护 business-developer 的 SQLite 追踪数据库,记录已探索的创作者(模式一)和已互动的帖子(模式二),避免重复追踪和重复互动。
通过自媒体平台搜索内容,在评论区以留言/回复/私信等方式拓展潜在客户或进行品牌宣传。用于 HEARTBEAT 定时任务。
维护 business-developer 的 SQLite 情报采集数据库,记录已采集的信息内容,避免重复采集,支持按日查询已采集情报。
定时监控特定信源(自媒体账号/网页),按预设标准提取商业情报,生成简报或报告。用于 cron 定时任务。
通过自媒体平台按搜集策略探索潜在客户——策略 A 分析帖子发布者画像,策略 B 从评论区挖掘潜客。用于 HEARTBEAT 定时任务。
| name | t2video |
| description | 一站式短视频制作工具。整合 SiliconFlow TTS 语音合成、素材搜集(Pexels/Pixabay/AI 生成)和 FFmpeg 组装,从脚本到成品视频一步完成。无 subagent 模式,适合短小视频。 |
| metadata | {"openclaw":{"emoji":"🎥","requires":{"bins":["python3","ffmpeg","ffprobe"],"env":["SILICONFLOW_API_KEY"]},"primaryEnv":"SILICONFLOW_API_KEY"}} |
Use this skill when:
本技能是 video-producer 的简化版:适合短小视频制作,且只生成9:16的竖屏视频。
不烧录字幕:大部分平台支持自动生成字幕,无需手动烧录。
本技能涉及多步骤生产流程,你应该 self-spawn 一个 subagent 来执行,原因:subagent 独立上下文,不会因对话历史积累而降低输出质量。
你只负责跟进subagent的执行,避免它们长时间卡在某个步骤,必要时可以提供提示或调整执行策略。另外在关键节点要求它向你汇报,你检查后再让它继续执行下一步。
在 output_videos/ 下创建项目文件夹,如 output_videos/<video-name>/,作为 project-dir。
工作区结构:
<project-dir>/
├── script.md # 三段式脚本
├── tts_requirement.md # 配音需求(由 Step 3 创建)
├── artifacts/ # 产出素材(TTS音频+视频素材)
│ ├── speech.mp3 # TTS 配音
│ ├── speech.json # TTS 元数据(含 duration)
│ └── <video>.mp4 # 视频素材
└── video.mp4 # 最终成品
基于用户要求按「开篇抓眼球 → 中段讲卖点 → 结尾促下单」结构撰写脚本,保存为 script.md。
| 段落 | 时长占比 | 目标 | 示例 |
|---|---|---|---|
| 开篇抓眼球 | 前 15–20% | 3 秒内让人停止划走 | "99% 的人都不知道…" / 强反差开场 |
| 中段讲卖点 | 60–70% | 展示核心价值 | 痛点 → 解决 → 数据佐证 |
| 结尾促下单 | 后 15–20% | 明确 CTA | "链接在简介" / "限时优惠" |
脚本完成后保存到工作区(如 <project-dir>/script.md)。
!检查点:subagent 必须在此步骤完成后向主agent汇报。主agent应在此先自检脚本质量(如是否符合三段式结构、是否预留了用户指定素材的使用位置、是否有明确 CTA),确认无误后提交用户确认。
如果用户有意见,则需要重复执行Step2,直到用户确认后才能让subagent进入 Step 3。
创建 tts_requirement.md,写入配音文案、音色和语速:
# 配音需求
## 配音文案
<!-- 需要朗读的纯文本,不含 markdown 标题、注释或镜头说明 -->
## 语音要求
- 音色:fnlp/MOSS-TTSD-v0.5:benjamin
- 语速:1.0
- 语气:自然、有吸引力
配音文案书写要求:
## 配音文案 段内只写需要朗读的纯文本,不得使用任何 Markdown 格式(标题、加粗、列表等)### 等标题#/##/### 等)和 HTML 注释,但最好从源头就写纯文本!检查点:subagent 必须在此步骤完成后向主agent汇报。主agent应在此对 tts_requirement.md 进行评估,通过后再让subagent继续执行下去。
然后调用 tts.py 生成配音:
python3 ./skills/t2video/scripts/tts.py <project-dir>/ --overwrite
脚本会自动读取 tts_requirement.md,只抽取「配音文案」中的纯文本,并读取其中的音色和语速设置。产出 artifacts/speech.mp3 和 artifacts/speech.json(含 duration 字段)。
ASR 自检由 tts.py 自动完成(Jaccard 相似度阈值 0.5),无需额外操作。
把 content-check 作为素材生产的测试循环,严格按以下流程执行:
在搜集任何新素材之前,先运行 content-check 检查已有素材:
python3 ./skills/t2video/scripts/check.py <project-dir>/
根据输出执行:
verdict: "accepted" 且 duration_gap.status: "sufficient" → 素材满足要求,进入 Step 5 合成verdict: "needs_rework" 或 duration_gap.status: "deficit" → 记录问题和 duration_gap.gap,进入 4.2 补充/修正duration_gap.status: "excess" → 素材总时长超出目标 3s 以上(会产生明显无声段),删除过长素材后重新下载匹配的content-check 自动确定目标时长:读取 artifacts/speech.json,按 duration + 1s 计算缺口(前后各 0.5s)。
按以下优先级搜集/补充素材:
video_generate 工具:使用 openclaw 原生的 video_generate 工具生成视频片段(注意必须为9:16竖屏)pexels-footage:video_generate 不可用时,从 Pexels 免费素材库搜索下载(注意必须为9:16竖屏)pixabay-footage:pexels-footage 不可用时,或未搜索到合适素材时,从 Pixabay 免费素材库搜索下载(注意必须为9:16竖屏)素材下载规则(必须严格遵守):
--max-clips=1,禁止批量下载duration_gap,设置 --min-duration 和 --max-duration 让下载的素材贴近缺口时长。例如缺口 20s,则 --min-duration 17 --max-duration 23,不要下载远超需求的素材duration_gap.status: "excess"(实际时长超出目标 3s 以上),必须删除过长的素材后重新下载匹配的# 使用 AI 视频生成(仅在其他方案不可用时)
python3 ./skills/t2video/scripts/gen.py \
--prompt "描述画面内容" \
--out-dir <project-dir>/artifacts
每生成、下载或修正一段素材后,立即重新运行 content-check:
python3 ./skills/t2video/scripts/check.py <project-dir>/
verdict: "accepted" 且时长满足目标时,才能进入 Step 5 合成content-check 通过后,调用 fragment-assembly 将视频和音频合成为最终成品:
python3 ./skills/t2video/scripts/assemble.py <project-dir>/artifacts/ --output <project-dir>/video.mp4
合成规则:
speech.mp3 → 使用 TTS 音频替换视频音轨(AAC 192k)合成后确认 video.mp4 存在且非空。
每个视频都必须配封面图。封面要求:
使用 siliconflow-img-gen 制作封面,保存为 <project-dir>/cover.jpg。
| Voice ID | 说明 |
|---|---|
fnlp/MOSS-TTSD-v0.5:benjamin | 幽默男声,语速较慢,推荐 |
fnlp/MOSS-TTSD-v0.5:charles | 激昂男声,适合广告 |
fnlp/MOSS-TTSD-v0.5:claire | 清澈女声,推荐 |
fnlp/MOSS-TTSD-v0.5:david | 清脆男声 |
fnlp/MOSS-TTSD-v0.5:diana | 可爱女声,娃娃音 |
| 脚本 | 文件名 | 用途 |
|---|---|---|
| TTS 语音合成 | ./skills/t2video/scripts/tts.py | 读取 tts_requirement.md,生成 speech.mp3 + speech.json |
| 素材自检 | ./skills/t2video/scripts/check.py | 检查素材质量与时长缺口 |
| 片段合成 | ./skills/t2video/scripts/assemble.py | 视频+音频合成 MP4 |
| AI 视频生成 | ./skills/t2video/scripts/gen.py | SiliconFlow 文生视频/图生视频 |