概述
视频工作区支持 AI 驱动的视频创作流程。当项目type: "video" 时,工作区右侧的轨迹/文件标签页将替换为 Storyboard(分镜) 和 Timeline(时间线) 面板,左侧对话使用 Agent 的 ReAct 模式编排生成流程。
架构
流水线阶段
| 阶段 | Agent Skill | 输出卡片 | 后端工具 |
|---|---|---|---|
| 1 | creative-brief | CreativeBriefCard | video_output_creative_brief |
| 2 | script-writer(可选) | ScriptCard | video_output_script |
| 3 | storyboard-designer | StoryboardCard | video_plan_storyboard |
| 4 | visual-gen-path | VisualGenPathCard | video_output_visual_gen_path |
| 5 | visual-media-generator | VisualAssetsCard | video_generate_element_image / video_generate_start_frame / video_generate_shot |
| 6 | audio-media-generator | AudioAssetsCard | video_generate_narration / video_generate_music |
| 7 | video-assembler | TimelineLinkCard | video_assemble_timeline |
resource-analyzer — 用户上传参考素材时自动触发。
Storyboard 数据模型
apps/web/src/db/schema/video.ts。
SSE 事件
| 事件 | 方向 | 用途 |
|---|---|---|
video_storyboard_init | 后端 → 前端 | 初始 Storyboard 推送 |
video_element_update | 后端 → 前端 | Element 资产更新 |
video_shot_progress | 后端 → 前端 | Shot 生成进度 |
video_shot_complete | 后端 → 前端 | Shot 生成完成 |
video_audio_complete | 后端 → 前端 | 音频生成完成 |
stream-processor.ts 处理,更新 videoStore(Zustand)。
引用机制
用户可通过 Element / Shot / Audio 卡片上的引用按钮,将 Storyboard 项目引入对话框,格式为[[ELEMENT:name|id]] / [[SHOT:name|id]] / [[AUDIO:name|id]],Agent 据此精准定位修改对象。