技术概念视频(带语音)—— Carli Code
创意:Carli 给出主题,技能构建视觉内容(品牌风格的动画幻灯片),时长和节奏由她的脚本决定;她只需录制语音(并偶尔出现在镜头前几次)。视频核心是代码和图表,而非人脸。
分为三个步骤,每个步骤设有检查点。不要跳过步骤:在她批准草案之前,不构建任何内容。
所有内容使用西班牙语。品牌风格:references/style.md(黑色,玫瑰色 = 突出内容,紫罗兰色 = 结构,Space Grotesk + JetBrains Mono 字体,Lucide 图标,视频中不使用表情符号)。
保存位置
始终保存在 ~/Documents/Contenido tech skill/<slug>/(如果文件夹不存在,请创建;使用此技能的用户可以在此更改路径;使用 kebab-case 格式创建主题别名子文件夹,去除重音符号)。最终内容:
<slug>/
├── video-completo.mp4 (所有场景拼接,1080x1920,30 帧/秒)
├── clips/01-gancho.mp4 … (每个场景一个片段)
├── copy.txt (带 SEO 的说明 + 5 个标签)
├── guion.txt (仅语音文本,用于提词器)
├── portada.txt / portada.png (视频封面标题:文本 + 1080x1920 图像)
└── fuente/ spec.json, video.html, meta.json (用于编辑和重新导出)
前置要求(检查一次)
python3 --version && node --version && ffmpeg -version | head -1 && ls "/Applications/Google Chrome.app" >/dev/null && echo OK
如果缺少任何项,请给出安装命令(brew install ffmpeg)。
步骤 1 — 提问
阅读 references/flujo.md(步骤 1 部分)。总结你对主题的理解,并使用 AskUserQuestion 提出始终 4 个问题(难度级别、角度、代码示例、时长以及人脸出现时刻)。等待回复。
步骤 2 — 详细草案:每秒显示内容 + 语音脚本
阅读 references/flujo.md(步骤 2)、references/escenas.md 和 references/voz.md。编写 fuente/spec.json 并使用以下命令进行验证:
python3 ~/.claude/skills/video-concepto-tech/scripts/build_video.py spec.json --plan
在聊天中呈现草案(此次需要包含时间;按场景划分 | 时间 | 屏幕内容 | 你的语音 | 人脸出现时刻 | 假设),并询问哪些需要修改。迭代直到她批准。草案的时间必须来自 --plan,而非虚构。
步骤 3 — 完整视频 + 片段 + 文案 + 脚本
仅在批准后进行。遵循 references/flujo.md(步骤 3):编译 → 使用 --still 检查每个场景 → 后台导出 → 编写 copy.txt(references/copy-seo.md)→ entregar.py。最终回复需以纯文本形式包含:路径、视频及时长、封面标题(也包含在 portada.txt 和 portada.png 中;如果第一个场景的标题不适合作为封面,请在 spec 中定义 portada)、完整文案和完整脚本,每个部分放在单独的代码块中(无表格,准备复制粘贴;脚本只是她说的文字,没有时间、标题或标记,场景之间用空行分隔,因为她将其粘贴到提词器中);这些文案和脚本也会作为 .txt 文件保存在文件夹中。
如果她已有音频
build_video.py spec.json --out fuente --audio voz.m4a 按单词分配场景;使用每个场景结束的精确秒数(--cortes 9.8,24.1,…)实现毫秒级对齐。然后 export_video.mjs … --audio voz.m4a 将语音混入完整视频和每个片段中。
默认格式:带旁白的 TikTok(Carli 的更正,2026 年 10 月)
除非另有要求,否则带旁白的视频应动态且文字简洁:重点是标题、代码和结果。
- 封面:仅标题(
cover使用solo_titulo: true),上移并居中(下方留出空间给她的人脸),5 秒(dur: 5)。无徽标,无线条,无屏幕上的“部分 N”(这些将放入文案中)。 - 贴纸风格的标题(Carli 的参考,2026 年 10 月 14 日):使用 Poppins 800 字体,全大写,居中且大号(108 像素;封面 120 像素),略微倾斜,带黑色边框和硬阴影。单词逐个出现(弹出)。关键词为玫瑰色(
*palabra*),可选黄色(~palabra~)。标题下方是一个黄色药丸(pill),包含 2-4 个词的概念,且不与标题重复,两侧带有玫瑰色/黄色闪光。 - 黄色
#ffd60a:第三个品牌重点色(仅用于药丸和闪光;玫瑰色仍用于强调,紫罗兰色用于结构)。Carli 已批准为标准(连同 Poppins 800 字体)。 - 概念场景:简短标题 + 代码(
code_focus)+ 可见结果(salida),关键值使用玫瑰色。无紫色 kicker,无代码下方文本注释,无大量文本的图表(versus、list……)。如果概念是命令,则代码为命令,输出为其打印内容。 - 技术术语使用正确的英文(如社区中所使用的“lazy imports”、“frozendict”、“profiler”),切勿直译(如“imports perezosos”)。
- 真实结果:在官方文档中验证代码的输出;如果总结(长表格),请在假设中说明。不要虚构输出或命令。
- 无屏幕总结(“你学到了什么”):结尾仅为品牌动画(
outro:CARLICODE 字母逐个出现并带有光泽,光标点击“follow me”),约 5 秒,语音仅为“Follow me for more tech content”。 在构建之前,询问任何不清楚的事项(封面内容、结尾效果、如何将图表转换为代码)。
变体:带人脸的概念视频(60% 图形 / 40% 她出镜)
适用于概念(而非代码)视频:交替使用 cara(人脸)段落和 diagram(图表)段落。已在“Kubernetes en AWS (EKS) en 70 segundos”中验证。
- 步骤 1 额外问题:角度、如何分配人脸/图形(默认交替,钩子和结尾为人脸)、类比 + 架构或仅其中之一,以及如何接收人脸段落。
cara:她出镜的段落。仅保留标题(无边框、无图标、无文本;她将在编辑时叠加她的视频片段;dur为必填项)。使用"marco": true绘制带有进度条的“你的脸在此”框架(仅当要求时)。标记为cara: true。diagram:1000×1000 画布,元素逐一构建(box、dbox、arrow、text、pill、icon、poly、wave;cae使元素掉落;escala放大元素)。请参阅references/escenas.md。同步t与当前语音所说的句子,并使用--still进行检查。- 标题:
==palabra=== 黄色标记器,*palabra*玫瑰色,~palabra~黄色文本;title_px调整大小。每个段落的标题居中且大号显示。 - 70 秒结构:人脸 8→图形 12→人脸 6→图形 14→人脸 6→图形 12→人脸 6→结尾 6(≈63/37)。第一个场景可以设置为
cara(不再要求cover)。 - 通用图形(带名称的框),而非官方 AWS 图标;在假设中说明。
规则
- 静音视频是视觉基础:她观看视频录制,并在此基础上编辑(她的脸会覆盖标记为
cara的场景)。 - 技术准确性:如果某处进行了简化,请在语音和假设中说明;不要虚构数据。说明性数据 →
// 示例数据。 - 每个视频一个概念。如果需要超过约 90 秒,建议分为两部分系列。
- 屏幕文本简洁(
escenas.md中的单元格标明了限制);代码 ≤12 行,每行 ≤40 个字符,以便在手机上阅读。 - 编辑方法:修改
fuente/spec.json,重新编译并重新导出(--only N可重新导出单个场景并重新拼合完整视频)。