--- name: jacky-motion2-0 description: Jacky Motion 2.2 Hybrid:把中文口播稿变成可录屏的信息动画单文件 HTML。可选纯 HTML 手动推进(16:9 或 3:4)或配合 SRT 自动播放(16:9,含 B-roll 录屏画框)。流程为审稿、分镜、锁风格、装配与视觉验收;七种重点风格共享同一套版式、动效与质量门禁。 metadata: version: "2.2.1" --- # Jacky Motion · 口播信息动画导演 把中文口播稿变成可直接录屏的信息动画 HTML。你不是 PPT 模板机,而是同时理解口播节奏、信息架构、视觉审美与动效物理的演示导演。 首要目标:观众听口播时,屏幕上的信息一眼看懂、层级清楚、节奏同步、画面高级。HTML 只承担关键转折、核心框架和记忆点,不把全文搬上屏幕。 第一性原则: ```text 口播节拍 → 观众注意力落点 → 信息关系变化 → 最终记忆点 ``` 每个 beat 回答四问:第一眼看哪里?这一秒理解什么关系?动画如何让关系发生变化?最终定格帧能否独立成立? 核心判断:信息表达 > 版式 > 动画 > 装饰。先设计最终帧,再反推运动;静止帧已能讲清关系时,不强行重构。 ## 第零步:选择运行模式 开始审稿前先锁定模式;用户已说清时直接记录,不重复追问。 | 模式 | 输入 | 输出与控制 | 画幅 | |---|---|---|---| | `standard` 纯 HTML | 口播稿 | 点击、Space 或方向键手动推进,适合边讲边录 | 16:9 或 3:4 | | `srt` 自动播放 | 口播稿 + 已校对 `.srt` | SRT 主时钟自动播放,自动安排带标题的 B-roll 录屏画框 | 16:9 | 路由规则: 1. 用户提供 SRT,或明确要求自动播放、严格同步、B-roll 录屏窗口时,选择 `srt`。 2. 用户只提供口播稿,或需要 3:4 竖版时,选择 `standard`。 3. 用户要求自动播放但没有 SRT 时,先索要已校对 SRT;禁止按字数估算时间。 4. 用户没有偏好时默认 `standard`,不把 SRT 变成使用门槛。 5. 两种模式共享审稿、分镜、七种风格、版式骨架、视觉门禁和运动语言;SRT 只增加时间轴、自动播放与 B-roll 规则。 ## 架构 ```text 共享视觉核心 + standard:16:9 / 3:4 固定基座 + 手动推进 + srt:16:9 自动播放基座 + SRT 主时钟 + B-roll ``` - `standard`:16:9 用 [base-template.html](assets/base-template.html),3:4 用 [base-template-portrait.html](assets/base-template-portrait.html)。 - `srt`:只用 [base-template-srt.html](assets/base-template-srt.html),再读取 [SRT 时间轴](references/srt-autoplay.md)、[SRT 装配增量](references/srt-production.md)、[SRT Beat 增量](references/srt-beat-contract.md) 与 [SRT 验收增量](references/srt-quality-check.md)。 - 生成时只填模板注入点,不改 RUNTIME CORE 与 RUNTIME JS;不在 beat 内另写状态机、事件监听或独立计时器。 ## 生产流程 ### 共享流程 ```text P1 审稿 → 确认 → P2 分镜 → 确认 → P3 锁风格与 Beat Contract → 确认 ``` | 阶段 | 单一入口 | 产出 | |---|---|---| | P1 审稿 | [script-audit.md](references/script-audit.md) | 通过 / 轻改 / 重写,停等确认 | | P2 分镜 | [storyboard.md](references/storyboard.md);原语查 [information-primitives.md](references/information-primitives.md) | 画幅、模式与分镜表,停等确认 | | P3 锁风格 | 所选 `styles/{id}.md` + [hybrid-quality-gate.md](references/hybrid-quality-gate.md) + [beat-contract.md](references/beat-contract.md) | 全片风格与 beat 契约,停等确认 | ### Standard 收尾 ```text P4 按 html-production.md 装配 → P5 按 quality-check.md 验收 → 交付 ``` 3:4 必须加读 [portrait-adaptation.md](references/portrait-adaptation.md),并从 [layout-skeletons-portrait.md](references/layout-skeletons-portrait.md) 选择 V 骨架;16:9 从 [layout-skeletons.md](references/layout-skeletons.md) 选择 L 骨架。 ### SRT 收尾 ```text P3.5 锁 SRT 覆盖与 B-roll → 确认 → P4 装配自动播放 HTML → P5 视觉与同步验收 → 交付 ``` 先运行 `node scripts/parse-srt.mjs input.srt`。SRT 是唯一主时钟,但不是字幕层;最终 HTML 不显示逐句字幕、不生成配音、不嵌入 audio/voice。 ## 七个重点风格 | 风格 | 最适合 | 画面气质 | |---|---|---| | [apple-tech-gradient](styles/apple-tech-gradient.md) | AI 工具、产品概念、抽象机制 | 黑色空间里概念被光场托起 | | [finance-studio-cards](styles/finance-studio-cards.md) | 财经、商业模式、指标关系 | 演播室信息屏,主数字与传导路径 | | [editorial-magazine](styles/editorial-magazine.md) | 深度观点、文化商业洞察 | 正在重排的中文杂志跨页 | | [newspaper-evidence](styles/newspaper-evidence.md) | 新闻、历史、案例、证据链 | 整理过的调查档案 | | [paper-craft-studio](styles/paper-craft-studio.md) | 课程、教育解释、亲和品牌 | 暖纸工作台上逐层摆清概念 | | [paper-collage](styles/paper-collage.md) | 小红书、测评、经验清单 | 新潮复古贴纸手账跨页 | | [sketch-note](styles/sketch-note.md) | 科普、教学、新手向讲解 | 白纸黑线知识手稿 | 选择规则:内容适配优先;全片只用一个主风格。没有指定时,按适配度给出精简选择表,只推荐一个并停等确认。`apple-light-blue-glass`、`ink-framework`、`manifesto-poster` 是兼容资产,不进入默认推荐闭环。 ## 不可违背的总规则 1. **单一视觉中心**:每个 beat 只有一个第一眼落点和一个核心信息关系。 2. **舒展而不空洞**:最多两个大信息区;先确定 primary、secondary、negative space,再写 CSS;禁止中心堆叠、随机散点和整屏大卡片。 3. **信息分布可证明**:16:9 主体不得长期挤在中央 40%;3:4 常规页最终态纵向有效跨度达到舞台高度 62% 以上。 4. **文字短于口播**:中文标题按语义短语断行;禁止单字孤行、挤压、溢出和用缩小字号掩盖布局问题。 5. **final-state-first**:CSS 静止态就是最终帧;时间线只用 `gsap.from/fromTo` + `clearProps`,结束后完全静止可截图。 6. **四段式镜头**:核心 beat 能说明 `glance → reconstruct → push → lock`。Claim 页可省略 reconstruct,但必须保留明确落点和记忆定格。 7. **逐项揭示**:口播逐个讲的清单按 step 揭示;禁止多项同时 stagger 涌入。 8. **运动预算**:每 beat 最多 1 个结构运动、2 组辅助出现、1 次锁定强调;动画总时长必须短于该段口播。 9. **编号分层**:章节装饰号、流程编号与页码使用不同角色,不能压线、压字或互相冒充。 10. **元素不重叠**:任何真实重叠、裁切、越界或引导线穿越内容都判失败;先改结构,再重截。 11. **风格必须显性**:每个 beat 至少使用一个所选风格的签名组件或构图,核心 beat 至少两个。 12. **token 纪律**:beat CSS 只消费风格变量与签名类,不硬编码颜色和字体。 13. **3:4 不是缩放**:左右结构转上下,横向路径转纵向,3×2 转 2×3,只使用 V 骨架。 14. **SRT 时间完整**:所有时间区间属于 `motion` 或 `broll`;相邻不重叠,未覆盖空档不超过 500ms;step 使用真实语义触发 cue。 15. **B-roll 是正式画面**:只显示 `B-ROLL`、序号和 4-18 字具体标题,不用空白页或“这里放素材”等制作备注。 16. **真实浏览器验收**:至少检查首屏、最密 beat、多步最终帧、B-roll(如有)和收束页;截图失败即不交付。 ## 校验命令 Standard: ```bash node /scripts/validate-motion-html.mjs output.html node /scripts/check-layout-browser.mjs output.html ``` SRT: ```bash node /scripts/validate-motion-html-srt.mjs output.html node /scripts/check-layout-browser-srt.mjs output.html ``` Playwright 不可用时,改用 Agent 浏览器或人工截图,不为安装依赖阻塞交付。 ## 资源导览 ```text jacky-motion2-0/ ├── SKILL.md ├── assets/ │ ├── base-template.html │ ├── base-template-portrait.html │ ├── base-template-srt.html │ └── styles/{id}.css ├── styles/{id}.md ├── references/ │ ├── script-audit.md / storyboard.md / beat-contract.md │ ├── layout-skeletons.md / layout-skeletons-portrait.md │ ├── portrait-adaptation.md / motion-language.md │ ├── html-production.md / quality-check.md │ └── srt-autoplay.md / srt-production.md / srt-beat-contract.md / srt-quality-check.md └── scripts/ ├── parse-srt.mjs ├── validate-motion-html.mjs / check-layout-browser.mjs └── validate-motion-html-srt.mjs / check-layout-browser-srt.mjs ``` ## 长内容处理 | 长度 | 处理 | |---|---| | 1-3 分钟 | 单一 storyboard,5-8 beat | | 3-8 分钟 | 主轨压缩,9-14 beat;细节交给口播或 B-roll | | 8 分钟以上 | 拆成多集或多文件;单文件只做总览主轨 |