doc-parse
将 PDF/PPT/Excel/Word 等多格式文档解析为结构化 Markdown,并输出元数据与解析置信度,作为 RAG 与四色卡片的数据底座。
将 SRT 字幕做成暖米黄纸张底的白板手绘动画:读字幕→输出配图策略→确认后生成统一风格线稿→按叙事语义标注分区→预览台调整→渲染 MP4。编排沿用分区遮罩揭示(annotation.json / sequence / startMs / protectedRegions),但每个区域内的落墨换成 stream 的连续笔迹(骨架/网格 ink→color)。当用户提供 SRT 字幕并要求"字幕做成白板手绘/流式笔迹视频""SRT 生成白板动画""按字幕分镜画手绘"时触发。
$ npx -y skills add anbeime/skill --skill srt-whiteboard-animation --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/srt-whiteboard-animationContext preview
The summary Claude sees to decide when to auto-load this skill.
将 SRT 字幕做成暖米黄纸张底的白板手绘动画:读字幕→输出配图策略→确认后生成统一风格线稿→按叙事语义标注分区→预览台调整→渲染 MP4。编排沿用分区遮罩揭示(annotation.json / sequence / startMs / protectedRegions),但每个区域内的落墨换成 stream 的连续笔迹(骨架/网格 ink→color)。当用户提供 SRT 字幕并要求"字幕做成白板手绘/流式笔迹视频""SRT 生成白板动画""按字幕分镜画手绘"时触发。
name: srt-whiteboard-animation description: 将 SRT 字幕做成暖米黄纸张底的白板手绘动画:读字幕→输出配图策略→确认后生成统一风格线稿→按叙事语义标注分区→预览台调整→渲染 MP4。编排沿用分区遮罩揭示(annotation.json / sequence / startMs / protectedRegions),但每个区域内的落墨换成 stream 的连续笔迹(骨架/网格 ink→color)。当用户提供 SRT 字幕并要求"字幕做成白板手绘/流式笔迹视频""SRT 生成白板动画""按字幕分镜画手绘"时触发。
把 SRT 字幕转成白板手绘动画:**编排**沿用分区遮罩揭示(按叙事顺序逐区域揭示、未开始区域完全隐藏、重叠用 `protectedRegions` 保护);**画法**换成流式笔迹——每个区域在自己的允许掩码内,笔尖沿骨架/网格连续滑行落墨(起笔 ink → 添彩 color),所有区域共享一张持久画布,已画完的区域保留在画布上。所有面向用户的说明、分镜、配置和界面文字必须使用中文。
与逐格跳变或矩形擦除不同:本 skill 的笔迹是**连贯流动**的;与整图 stream 不同:本 skill 按**字幕叙事分区**依次作画,可控制每个元素的出场顺序与时序。
| 项目 | 默认要求 | |---|---| | 纸张背景 | 生成图使用暖米黄旧纸色(建议 `#F5EBD7`);渲染时从原图距四角内缩取样染底,禁止纯白。 | | 画法 | 每区域 stream 连续笔迹:起笔 `ink`(铺线稿)→ 添彩 `color`(还原原色);权重 `ink:color = 2:1`。 | | 笔迹路径 | `--ink-path grid`(网格,默认,稳)或 `skeleton`(骨架追踪,线稿清晰的插画更贴合)。 | | 上色风格 | `--color-fill contour-wipe`(轮廓扫描,默认)或 `brush`(沿轨迹刷)。 | | 未绘制区域 | 区域的允许掩码 = 矩形 `region` 扣除「后续区域 + protectedRegions」;未开始区域完全隐藏。 | | 时长来源 | 每张图的 `sceneDurationMs` 来自该幕字幕的时间跨度(建议 25–35 秒/幕)。 | | 编辑框 | 预览台默认显示全部编号编辑框;编辑框不属于动画画面内容。 |
所有场景的源图必须遵循同一套视觉语言;生成前把以下要求完整写入出图提示词,生成后逐条检查:
默认工作流的**每一步完成后都必须停止并等待用户明确确认**,才可开始下一步。确认前不得生成下一步的图片、标注、预览、视频或合并文件;不得把“未回复”“此前的笼统授权”“用户没有反对”视为确认。用户要求修改上一步时,只重做该步,并在完成后再次等待确认。
唯一的连带动作是:**标注 JSON 创建完成后,必须立即自动打开预览台并载入该 JSON 所在目录**;这属于第 3 步的交付,不需要为“打开预览台”另行等待确认。若浏览器的 File System Access API 要求用户手势,使用浏览器界面选择这个已确定的目录;不得因此向用户索要额外确认或改为让用户自行打开预览台。
1. **读字幕、出策略(不生成图片)。** 用 `scripts/parse_srt.py` 把 SRT 解析成字幕条并按 25–35 秒/幕给出建议分镜。据此输出配图策略:每幕的场景编号、核心表达、画面主体、对应字幕区间与 `sceneDurationMs`。每幕只表达一个核心意思。**完成后停止,等待用户确认策略。** 2. **生成线稿。** 仅在用户确认策略后,按“统一出图视觉规范”逐幕生成 16:9 暖米黄旧纸张底线稿图,背景 `#F5EBD7`,主体之间保留充足留白便于自动拆分;不得生成文字、复杂照片、重叠对象或与规范冲突的元素。**完成后停止,展示线稿并等待用户确认。** 3. **先读字幕再看图,然后标注并打开预览台。** 仅在用户确认线稿后,先阅读该图对应的字幕、再实际查看图片、并获取原图像素宽高;不得只凭字幕臆测画面,也不得只按画面位置机械排序。先提炼字幕叙事事件,再把图中可见主体对应到事件,按“场景铺垫 → 关键人物/物体 → 动作冲突或变化 → 反应/结果”的语义顺序安排绘制。随后创建 `<图片名>.annotation.json`。创建完成后,立即用默认浏览器打开 `assets/preview.html`,并通过预览台的“打开文件夹”载入**该标注文件所在目录**的全部 `<名称>.png` + `<名称>.annotation.json`;不得只给出文件路径或要求用户自行操作。**预览台已带入目录后停止,等待用户确认标注与预览内容。** 4. **生成区域预览图。** 仅在用户确认标注与预览内容后,用 `render_annotation_preview.py` 出编号/方向检查图,核对分区与叙事顺序一致、区域都在画布内、重叠主体用 `protectedRegions` 保护。**完成后停止,等待用户确认预览图。** 5. **在预览台调整并保存。** 仅在用户确认预览图后,在已打开且已载入对应目录的预览台调整:默认(未播放)显示完整图片和区域框;画布是**矩形代理**:拖区域四边四角改 `region`,右侧改名称/方向/**开始(ms)/结束(ms)**(时长= 结束−开始,只读)与**字幕**,拖动模块列表**调整顺序**(自动重排 `sequence`),选中模块自动高亮对应字幕;拖时间轴或按播放看揭示(未开始区域不显示);`direction` 只影响此代理。改完点“保存本场景/全部保存”写回原 `.annotation.json`(含每区域 `subtitle`,并把 `sceneDurationMs` 对齐到最后区域结束+0.5s)。**保存后停止,等待用户确认最终标注与时序。** 6. **命令行渲染成片。** 仅在用户确认最终标注与时序后,用 `render_stream_whiteboard.py` 逐幕出全清 MP4,抽查开场、任意重叠模块中段、结尾三个时间点。**完成后停止,等待用户确认成片。** 7. **多幕合并(仅适用于多幕)。** 仅在用户确认所有单幕成片后,用 `merge_scenes.py` 按顺序合并成一条。**完成后停止,等待用户确认最终合成视频。**
在用户项目中创建:
assets/whiteboard/<项目名>/ scene-01-<名称>.png scene-01-<名称>.annotation.json # 与 png 同名 scene-01-<名称>-whiteboard.mp4 # 成片 scene-01-<名称>-preview.mp4 # 真实片段(预览台生成,低清)
图片与配置必须同名:`foo.png` 对应 `foo.annotation.json`。预览台据此自动加载配置。
1. **阅读依据:** 标注前必须同时具备字幕与已查看的原图。缺任一项先索取,不得生成标注。 2. **顺序依据:** `sequence`、`startMs` 与 `label` 必须反映字幕中的事件先后,而非仅按从左到右、从上到下或视觉显眼程度。 3. **坐标依据:** 每个模块输出原图坐标系的整数像素 `x`、`y`、`width`、`height`;原点左上角,禁止百分比/比例/估算坐标或省略尺寸。`canvas.width`/`canvas.height` 必须等于原图像素尺寸。 4. **模块字段:** 每个元素含 `sequence`、`narrativeRole`、`subtitle`、`region`、`reveal`、`handPath`。`narrativeRole` 用中文说明其在字幕中的叙事作用;`subtitle` 存该区域对应的字幕文本(来自 SRT,供预览台联动与后续用途);`sequence` 从 1 起连续。 5. **校验:** 生成预览前检查每个区域是否在画布内、是否覆盖对应可见主体、是否与字幕事件相符;重叠主体用 `protectedRegions` 保护后绘制模块。
{
"sceneId": "scene-01",
"canvas": { "width": 1672, "height": 941 },
"storyBasis": "该幕字幕的事件摘要",
"sceneDurationMs": 9000,
"elements": [
{
"id": "rockery",
"label": "假山场景",
"sequence": 1,
"narrativeRole": "故事的场景铺垫",
"subtitle": "猴子山上,一只小猴子坐在假山顶端,手里拿着香蕉。",
"type": "structure",
"region": { "x": 20, "y": 120, "width": 540, "height": 780 },
"reveal": { "direction": "top_to_bottom", "startMs": 300, "durationMs": 2600, "maskPaddingPx": 22, "protectedRegions": [] },
"handPath": { "start": [290, 130], "end": [290, 890], "easing": "easeInOut" }
}
]
}> `direction` / `handPath` 仅供预览台矩形代理使用;成片笔迹由 stream 自动生成,无需精调。
所有渲染脚本用 skill 内 `.venv` 的解释器运行(依赖隔离)。
1. **准备环境**(首次或缺依赖时):
python scripts/prepare_env.py --check # 探测;成功末行输出 ENV_PY=<路径>,捕获备用 python scripts/prepare_env.py # 缺则建 .venv 并装 opencv-python/numpy/av
2. **解析字幕 + 建议分镜**:
python scripts/parse_srt.p
收录最全、更新最快的AI Agent技能库,涵盖文档处理、内容创作、编程开发、机器学习、自动化工作流等多个领域的精选技能包。 🎁 知易多模型知识管家 · 免费试用预约 — 20+ 模型自由切换、技能市场、四色卡片知识库,留邮箱锁定免费试用名额,每周再收一份知易AI周刊。
将 PDF/PPT/Excel/Word 等多格式文档解析为结构化 Markdown,并输出元数据与解析置信度,作为 RAG 与四色卡片的数据底座。
产品经理与项目管理专家在应对复杂项目时,使用此技能可动态组建包含“执行、指挥、评审”的专属AI团队。实时查看多智能体辩论与决策全过程,共享统一上下文记忆,一键完成从会议决策到系统构建的全流程高效协同!
电商运营与内容创作者在需要制作带货短视频时,用此技能一键生成9:16竖屏数字人成片。自动编排AI绘画、语音合成与视频生成,快速产出“小省导购员”专属形象与专业配音,让多模态视频制作省时省力。