mcpField
C
creatok-generate-video

creatok-generate-video

github.com/echosell创意与媒体1964 次安装15 周前更新
代码仓库

关于 creatok-generate-video

用于通过 CreatOK 提交 TikTok AI 视频生成任务并跟踪完成状态的技能。它会在生成前征求确认,运行时读取模型能力,并保存任务结果供后续恢复。

主要功能

  1. 01运行时读取模型列表与限制
  2. 02生成前确认方案和费用
  3. 03提交任务并轮询状态
  4. 04保存任务与视频结果
  5. 05支持用 task_id 恢复任务

适用场景

  1. 01根据创意生成 TikTok 视频
  2. 02按模型时长限制拆分视频
  3. 03继续检查已提交任务的状态

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/echosell/creatok-skills --skill creatok-generate-video

安装后在 Claude Code 中输入/creatok-generate-video确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

lib/
artifacts.js
capabilities.js
config.js
creatok-capabilities-client.js
creatok-client.js
generate-video.js
references/
common-rules.md
scripts/
run.js

详细介绍

generate-video

限制

  • 平台:仅 TikTok。
  • 面向用户的最终回复应与用户输入语言一致,默认为 英语。
  • 触发任何付费/高成本视频生成调用前,必须先征求用户确认。
  • 确认后,必须调用 CreatOK Open Skills proxy 并等待完成。
  • 除非用户明确需要用于调试或分享给开发者,否则面向用户的回复应避免使用技术术语。
  • 遵循 ./references/common-rules.md 中的共享指南。
  • 除非用户明确要求真人实拍版本,否则应假定目标是生成 AI 视频,而不是准备真人拍摄计划。

模型选择规则

技能必须在运行时从 CreatOK capabilities endpoint 读取模型列表、默认值和硬性限制,而不是在本地硬编码。

保持本地客户端精简:

  • 使用返回的默认模型,除非用户明确选择其他受支持的模型。
  • 仅验证定义、时长、方向和参考图数量上限等硬性执行约束。
  • 面向用户的模型说明应尽量简短,且避免依赖提供商、系列或提示风格等元数据。

如果选定方案与模型限制冲突,应说明限制、建议可行方案,并在生成前等待用户确认。

模型列表、默认值以及定义、时长、方向和参考图数量上限等硬性限制,必须在运行时从 CreatOK capabilities endpoint 读取,而不是在此技能中硬编码。 支持先上传本地图片文件,再将上传后的参考图传递给视频任务。

多片段规则

  • 如果请求的视频时长超过所选模型的最长时长,应建议拆分为多个片段。
  • 如果最终视频需要由多个生成片段拼接而成,应说明用户之后需要自行组装这些片段。

需要澄清的输入(缺失时询问)

  • 只询问生成优质视频所必需的信息。
  • 优先采用对话中先前已确定的方向、脚本和卖点。
  • 如果缺少细节,应提出一两个简短的后续问题,而不是要求用户重新提供完整简报。
  • 优先询问能直接帮助 AI 生成的细节,例如场景意图、视觉风格、节奏、产品重点,以及用户想使用 Sora 2 还是 Veo 模型。
  • 在工具调用或交接说明中提及模型时,使用准确的官方模型 ID,而不是别名。

工作流

  1. 确认环节(必须)
  • 概述:
    • 模型
    • 方向
    • 定义和时长(秒),如与所选模型相关
    • 是否使用参考图
    • 方案是单镜头还是多片段
    • 任何重要限制,例如时长上限、竖屏要求或之后需要手动拼接
    • 可获取时,提供预估费用/积分
  • 用通俗语言询问用户是否确认,例如询问是否现在开始生成。
  • 用户明确同意前,不要提交生成任务。
  1. 提交视频生成任务
  • 调用 CreatOK:POST /api/open/skills/tasks
  1. 轮询状态直至完成
  • 调用 CreatOK:GET /api/open/skills/tasks/status?task_id=...
  1. 保存产物并回复
  • 写入:
    • outputs/result.json,包含 task_id/status/video_url/raw
    • outputs/result.md
  • 提交后立即保存 task_id,再等待最终状态,以便本地进程中断后用户仍可恢复任务。
  • 原样返回最终的 video_url。
  • AI 版本完成后,可以选择询问用户是否还需要同一创意的真人实拍版本。

现有任务恢复

  • 如果用户已有 task_id,此技能应从该任务继续,而不是启动新任务。
  • 在恢复模式下,如果已有任务 ID,不要要求用户重新陈述提示词或创意简报。
  • 模型可以:
    • 检查一次当前任务状态
    • 或者在用户希望继续检查时,继续等待并轮询
  • 如果任务成功,原样返回最终的 video_url。
  • 如果任务仍在排队或运行,清楚说明这一点,并询问是否要继续检查。
  • 如果任务失败,说明可用的失败消息,并建议下一步最佳操作。

产物

所有产物均位于 generate-video/.artifacts/<run_id>/...。

轻量客户端边界

  • 优先使用已经由 creatok-analyze-video 或 creatok-recreate-video 生成的提示词或简报。
  • 如果创意方向仍不明确,模型可以在生成前通过对话进一步完善。
  • 此技能会提交生成任务、轮询状态,并持久化固定格式的输出。
  • 如果先前的对话已明确创意方向,模型不应让用户从头重述想法。
  • 默认应针对 AI 视频生成优化简报,而非针对片场拍摄。
  • 如果费用确认步骤已满足,则应将用户自然的确认语(例如“生成它”“制作视频”“继续”或“就用这个版本”)视为使用此技能的意图。

交接

  • 如果任务从 creatok-analyze-video 转入,模型应沿用选定的方向,不要让用户重复说明。
  • 如果任务从 creatok-recreate-video 转入,模型应以对话中已拟定的脚本或简报作为生成起点。
  • 如果生成任务在提交后中断,模型应协助用户在 creatok-generate-video 中使用现有的 task_id 继续,而不是从头重新启动任务。

评论

支持 Markdown