generate-video
Constraints
- - Platform: TikTok only.
- The model's final user-facing response should match the user's input language, default English.
- Must request user confirmation before triggering any paid/high-cost video generation call.
- After confirmed, must call CreatOK Open Skills proxy and wait until completion.
- Avoid technical wording in the user-facing reply unless the user explicitly needs details for debugging or to share with a developer.
- Follow shared guidance in
./references/common-rules.md. - Unless the user explicitly asks for a live-action shoot version, the model should assume the goal is to generate an AI video, not to prepare a human filming plan.
Model Selection Rules
- actual model id:
doubao-seedance-2
- best for longer clips, multi-image guidance, and product videos that need stronger visual control
- supported resolutions in the current Open Skills endpoint:
480p,
720p
- supported duration in the current Open Skills endpoint:
4-15s
- supported aspect ratios in the current Open Skills endpoint:
9:16,
16:9,
1:1,
4:3,
3:4
- actual model id:
doubao-seedance-2-fast
- faster variant for the same Seedance-style workflow when iteration speed matters more than the final pass
- supported resolutions in the current Open Skills endpoint:
480p,
720p
- supported duration in the current Open Skills endpoint:
4-15s
- supported aspect ratios in the current Open Skills endpoint:
9:16,
16:9,
1:1,
4:3,
3:4
- actual model id:
sora-2
- supported resolutions:
720p
- supported duration:
12s
- supported aspect ratios:
9:16,
16:9
- actual model id:
veo-3.1-fast-exp
- fastest and lowest-cost option
- best for product demos, short visual tests, and previews
- supported resolutions:
720p
- max video length:
8 seconds
- actual model id:
veo-3.1-exp
- medium-cost option
- best for formal product demos and higher-quality final clips
- supported resolutions:
720p
- max video length:
8 seconds
The model should recommend a model before generation instead of blindly using a default.
The recommendation should follow these principles:
- - prefer
Seedance 2 (doubao-seedance-2) for longer clips, more flexible aspect ratios, and image-guided product videos - prefer
Seedance 2 Fast (doubao-seedance-2-fast) for faster iteration when the user wants the Seedance path but cares more about speed than the final pass - prefer
Sora 2 (sora-2) for 12-second generation - prefer
Veo 3.1 Fast (veo-3.1-fast-exp) for previews, quick testing, and lightweight product demo clips - prefer
Veo 3.1 Quality (veo-3.1-exp) for formal product demos and higher-quality final clips
If a chosen plan conflicts with model limits, the model should explain the limitation, suggest a workable plan, and wait for user confirmation before generating.
Current implementation defaults to the lower supported definition for each model, which is 480p for Seedance 2 and 720p for the other listed models.
Reference images are supported by uploading local image files first, then passing the uploaded reference to the video task.
- -
Seedance 2 supports at most 5 reference images in the current Open Skills endpoint - INLINECODE26 supports at most 5 reference images in the current Open Skills endpoint
- INLINECODE27 supports at most 1 reference image
- INLINECODE28 supports at most 3 reference images
- INLINECODE29 supports at most 3 reference images
Multi-Segment Rules
- - If the requested video is longer than the chosen model's maximum duration, the model should recommend splitting it into multiple segments.
- If the final video must be stitched from multiple generated clips, the model should explain that the user will need to assemble the clips afterward.
Inputs to clarify (ask if missing)
- - ask only for what is still necessary to generate a good video
- prefer the direction, script, and selling points already established earlier in the conversation
- if details are missing, ask one or two short follow-up questions instead of requesting a full brief again
- prefer details that help AI generation directly, such as scene intent, visual style, pacing, product emphasis, and whether the user wants
Sora 2 or a Veo model - when naming a model in tool calls or handoff instructions, use the exact official model id instead of aliases
Workflow
1) Confirmation gate (mandatory)
- model
- orientation
- definition and seconds, if relevant to the chosen model
- whether reference images are used
- whether the plan is single-shot or multi-segment
- any important limitation such as duration cap, portrait requirement, or manual stitching afterward
- estimated cost/credits if available
- - Ask for a simple confirmation in plain language, such as whether the user wants to start generation now.
- Do not submit the generation task until user says yes.
2) Submit video generation
- - Call CreatOK: INLINECODE31
3) Poll status until completion
- - Call CreatOK: INLINECODE32
4) Persist artifacts + respond
-
outputs/result.json with
task_id/status/video_url/raw
-
outputs/result.md
- - Persist the
task_id immediately after submission, before waiting for the final status, so the user can recover the task later if the local process is interrupted. - Return the final
video_url verbatim. - After the AI version is complete, the model may optionally ask whether the user also wants a live-action shoot version of the same idea.
Existing Task Recovery
- - If the user already has a
task_id, this skill should continue from that task instead of starting a new one. - In recovery mode, do not ask the user to restate the prompt or creative brief if the task id is already available.
- The model can either:
- check the current task status once
- or continue waiting and polling if the user wants to keep checking
- - If the task succeeded, return the final
video_url verbatim. - If the task is still queued or running, explain that clearly and offer to keep checking.
- If the task failed, explain the failure message if available and suggest the next best step.
Artifacts
All artifacts under generate-video/.artifacts/<run_id>/....
Thin Client Boundary
- - Prefer using a prompt or brief that already came from
creatok-analyze-video or creatok-recreate-video. - If the creative direction is still fuzzy, the model can tighten it in the conversation before generating.
- This skill submits generation jobs, polls status, and persists fixed-format outputs.
- The model should not make the user restate their idea from scratch if the previous conversation already made the direction clear.
- The model should optimize the brief for AI video generation by default, not for on-set filming.
- Natural user confirmations such as "generate it", "make the video", "go ahead", or "use this version" should be treated as intent to use this skill, as long as the cost confirmation step is still satisfied.
Handoff
- - When reached from
creatok-analyze-video, the model should carry forward the chosen direction without making the user repeat it. - When reached from
creatok-recreate-video, the model should use the script or brief already developed in the conversation as the starting point for generation. - If generation was interrupted after submission, the model should help the user continue inside
creatok-generate-video with the existing task_id instead of restarting the job from scratch.
generate-video
约束条件
- - 平台:仅限TikTok。
- 模型最终面向用户的回复应与用户输入语言一致,默认英语。
- 在触发任何付费/高成本视频生成调用前,必须请求用户确认。
- 确认后,必须调用CreatOK Open Skills代理并等待完成。
- 面向用户的回复中避免使用技术性措辞,除非用户明确需要调试细节或与开发者分享。
- 遵循./references/common-rules.md中的共享指南。
- 除非用户明确要求真人实拍版本,否则模型应假定目标是生成AI视频,而非准备人工拍摄方案。
模型选择规则
- 实际模型ID:doubao-seedance-2
- 最适合长片段、多图像引导以及需要更强视觉控制的产品视频
- 当前Open Skills端点支持的分辨率:
480p、
720p
- 当前Open Skills端点支持的时长:
4-15秒
- 当前Open Skills端点支持的宽高比:
9:16、
16:9、
1:1、
4:3、
3:4
- 实际模型ID:doubao-seedance-2-fast
- 相同Seedance风格工作流的快速变体,适用于迭代速度比最终效果更重要的情况
- 当前Open Skills端点支持的分辨率:
480p、
720p
- 当前Open Skills端点支持的时长:
4-15秒
- 当前Open Skills端点支持的宽高比:
9:16、
16:9、
1:1、
4:3、
3:4
- 实际模型ID:sora-2
- 支持的分辨率:
720p
- 支持的时长:
12秒
- 支持的宽高比:
9:16、
16:9
- 实际模型ID:veo-3.1-fast-exp
- 最快且成本最低的选项
- 最适合产品演示、短视觉测试和预览
- 支持的分辨率:
720p
- 最大视频长度:
8秒
- 实际模型ID:veo-3.1-exp
- 中等成本选项
- 最适合正式产品演示和更高质量的最终片段
- 支持的分辨率:
720p
- 最大视频长度:
8秒
模型应在生成前推荐一个模型,而非盲目使用默认值。
推荐应遵循以下原则:
- - 对于长片段、更灵活的宽高比以及图像引导的产品视频,优先选择Seedance 2(doubao-seedance-2)
- 当用户希望走Seedance路线但更关注速度而非最终效果时,优先选择Seedance 2 Fast(doubao-seedance-2-fast)以实现更快迭代
- 对于12秒的生成,优先选择Sora 2(sora-2)
- 对于预览、快速测试和轻量级产品演示片段,优先选择Veo 3.1 Fast(veo-3.1-fast-exp)
- 对于正式产品演示和更高质量的最终片段,优先选择Veo 3.1 Quality(veo-3.1-exp)
如果所选方案与模型限制冲突,模型应解释限制原因,建议可行方案,并在生成前等待用户确认。
当前实现默认使用每个模型支持的最低清晰度,即Seedance 2为480p,其他列出的模型为720p。
参考图像支持先上传本地图像文件,然后将上传的参考传递给视频任务。
- - Seedance 2在当前Open Skills端点中最多支持5张参考图像
- Seedance 2 Fast在当前Open Skills端点中最多支持5张参考图像
- Sora 2最多支持1张参考图像
- Veo 3.1 Fast最多支持3张参考图像
- Veo 3.1 Quality最多支持3张参考图像
多片段规则
- - 如果请求的视频长度超过所选模型的最大时长,模型应建议将其拆分为多个片段。
- 如果最终视频必须由多个生成的片段拼接而成,模型应说明用户需要后续自行组装这些片段。
需要澄清的输入(缺失时询问)
- - 仅询问生成优质视频所必需的信息
- 优先使用对话中已确立的方向、脚本和卖点
- 如果细节缺失,提出一两个简短追问,而非再次要求完整简报
- 优先选择直接有助于AI生成的细节,如场景意图、视觉风格、节奏、产品重点,以及用户是否想要Sora 2或Veo模型
- 在工具调用或交接指令中命名模型时,使用确切的官方模型ID而非别名
工作流程
1)确认关卡(必须执行)
- 模型
- 方向
- 清晰度和时长(如果与所选模型相关)
- 是否使用参考图像
- 方案是单次拍摄还是多片段
- 任何重要限制,如时长上限、人像要求或后续手动拼接
- 预估成本/积分(如有)
- - 用通俗语言请求简单确认,例如询问用户是否现在开始生成。
- 在用户确认之前,不要提交生成任务。
2)提交视频生成
- - 调用CreatOK:POST /api/open/skills/tasks
3)轮询状态直至完成
- - 调用CreatOK:GET /api/open/skills/tasks/status?task_id=...
4)持久化产物 + 回复
- outputs/result.json,包含task
id/status/videourl/raw
- outputs/result.md
- - 提交后立即持久化taskid,在等待最终状态之前完成,以便用户稍后可以在本地进程中断时恢复任务。
- 逐字返回最终的videourl。
- AI版本完成后,模型可选择询问用户是否也想要同一创意的真人实拍版本。
现有任务恢复
- - 如果用户已有task_id,此技能应从该任务继续,而非启动新任务。
- 在恢复模式下,如果任务ID已可用,不要要求用户重新陈述提示或创意简报。
- 模型可以:
- 检查一次当前任务状态
- 或者如果用户希望持续检查,继续等待和轮询
- - 如果任务成功,逐字返回最终的video_url。
- 如果任务仍在排队或运行中,明确说明情况并提供继续检查的选项。
- 如果任务失败,解释失败消息(如有)并建议下一步最佳操作。
产物
所有产物位于generate-video/.artifacts//...。
轻客户端边界
- - 优先使用已从creatok-analyze-video或creatok-recreate-video获得的提示或简报。
- 如果创意方向仍不明确,模型可在生成前在对话中加以明确。
- 此技能提交生成任务、轮询状态并持久化固定格式的输出。
- 如果之前的对话已明确方向,模型不应让用户从头重新陈述其创意。
- 模型应默认优化AI视频生成的简报,而非针对现场拍摄。
- 只要成本确认步骤仍满足,用户自然的确认语句如生成它、制作视频、开始吧或使用这个版本应被视为使用此技能的意图。
交接
- - 当从creatok-analyze-video到达时,模型应延续所选方向,无需用户重复。
- 当从creatok-recreate-video到达时,模型应使用对话中已开发的脚本或简报作为生成的起点。
- 如果生成在提交后中断,模型应帮助用户在creatok-generate-video内使用现有task_id继续,而非从头重新启动作业。