Seedance Video Workflow

一个面向 Codex / Agent Skills 的选择题式 AI 视频制作工作流。

它不是视频生成模型,而是 Seedance 上层的制片系统:用户只需要在本地配置 Seedance 与豆包 TTS 凭据、提供内容,并逐步选择类型、受众、时长、画幅和调性;Skill 在后台完成导演规划、分镜、提示词编译、豆包旁白、任务续跑、审计和成片合成。

特点

  • 每次只问一道选择题
  • Seedance 与豆包 TTS 凭据分开检查,只在本地输入
  • 自动生成 4–15 秒的逐镜头导演方案
  • 支持 Seedance 多候选、并发、限流重试和中断续跑
  • 付费提交前显示最少及理论最大调用次数
  • 自动检查时长、视频流、音频流、黑帧和长冻结
  • 支持视觉语义审计规则和有限定向重试
  • 通过豆包 TTS API 生成旁白,使用 ffmpeg 做时间轴混音和最终封装

安装

克隆仓库:

git clone https://github.com/lincwang123-bot/seedance-video-workflow.git

复制 Skill:

mkdir -p ~/.codex/skills
cp -R seedance-video-workflow/skills/seedance-video-workflow ~/.codex/skills/

重新打开 Codex 后即可使用。

使用

在 Codex 中输入:

使用 $seedance-video-workflow 帮我制作一条视频

Skill 会依次引导:

  1. 配置 Seedance API Key
  2. 选择内容来源
  3. 选择内容类型、目标和受众
  4. 选择时长、画幅和调性
  5. 选择豆包 TTS / Seedance 原生声音、音色、语速、生成质量和审阅方式
  6. 查看预计调用次数
  7. 确认是否开始付费生成

除 API Key、内容简述、文件路径或 URL 外,其余决定均使用选择题。

内容简述使用固定格式:

主体|发生什么或要讲什么|希望观众最终记住什么

本地 API 凭据

macOS:

node ~/.codex/skills/seedance-video-workflow/scripts/configure-api-key.mjs set seedance
node ~/.codex/skills/seedance-video-workflow/scripts/configure-api-key.mjs set tts

两套密钥分别由 macOS 钥匙串直接读取,不写入聊天、JSON、日志或项目文件。不能假设 Seedance Key 同时具有豆包 TTS 权限。

其他系统可以使用环境变量:

export SEEDANCE_API_KEY="your-api-key"
export VOLCENGINE_TTS_API_KEY="your-tts-api-key"

也兼容:

export ARK_API_KEY="your-api-key"

豆包 TTS 也兼容 DOUBAO_TTS_API_KEY,以及 DOUBAO_TTS_APP_ID + DOUBAO_TTS_ACCESS_TOKEN 环境变量组合。

工作流命令

node skills/seedance-video-workflow/scripts/workflow.mjs validate <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs estimate <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs dry-run <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs render <project.json> --confirm-submit
node skills/seedance-video-workflow/scripts/workflow.mjs tts <project.json> --confirm-submit
node skills/seedance-video-workflow/scripts/workflow.mjs status <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs audit <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs assemble <project.json>
node skills/seedance-video-workflow/scripts/workflow.mjs audit <project.json> --final

没有 --confirm-submit 时,执行器会分别阻止付费 Seedance 或豆包 TTS 请求。

系统要求

  • Codex 或兼容 Agent Skills 的运行环境
  • Node.js 20 或更高版本
  • Seedance / 火山方舟 API Key
  • 豆包 TTS API Key,或 AppID + Access Token
  • ffmpeg 和 ffprobe
  • macOS 钥匙串,或前述 Seedance / 豆包 TTS 环境变量

项目结构

skills/seedance-video-workflow/
├── SKILL.md
├── agents/openai.yaml
├── references/
│   ├── questions.md
│   ├── project-spec.md
│   ├── director-policy.md
│   └── audit-policy.md
└── scripts/
    ├── configure-api-key.mjs
    ├── workflow.mjs
    ├── self-test.mjs
    └── lib/

测试

测试不会调用 Seedance 或豆包 TTS,也不会产生费用:

node skills/seedance-video-workflow/scripts/self-test.mjs

测试覆盖项目规范、提示词编译、调用量估算、豆包流式响应模拟、无付费 dry-run,以及带旁白轨道的临时视频合成和最终审计。

当前边界

  • 豆包 TTS 已接入;音乐仍需要用户提供合法音频素材。
  • 技术审计可由脚本执行;语义审计依赖运行 Agent 的视觉理解能力。
  • Skill 不会自动发布视频到社交平台。
  • 真人、商标、地标和历史内容仍需要合法授权及可靠参考。
  • Seedance 输出规格以 API 实际能力为准;不要把后期放大的 4K 描述为模型原生 4K。

License

MIT