Use when the user wants to generate videos with Seedance via a local uv-based CLI, refine Seedance prompts for Volcengine or BytePlus, create ASMR-style Seedance prompts, or maintain project-local markdown notes and retrospectives for prompt iterations and video outputs.
This skill generates videos through a self-contained local Seedance CLI, supports prompt refinement for Seedance 1.5 and 2.0 workflows, and maintains project-local markdown records of prompt retrospectives and persistent project cautions.
Use this skill when the user mentions Seedance, 火山引擎, Volcengine, BytePlus, ARK, ASMR 视频, 文生视频, 图生视频, or asks to refine prompts and directly generate the resulting video.
In shell examples below, SKILL_DIR means the absolute path of the skill directory that contains this SKILL.md.
Do not load all references by default. Read only the files needed for the current task.
Before the first generation in a workspace, check whether these files exist:
docs/seedance/project-notes.mddocs/seedance/prompt-retrospective.mdIf they exist, read them first and follow the accumulated constraints.
Use scripts/update_project_markdown.py to create or update them whenever either of these happens:
project-notes.md is for persistent project-specific cautions and preferences:
prompt-retrospective.md is for chronological iteration logs:
If the user only wants prompt polishing and no API call yet, still update the retrospective when the prompt changes in a meaningful way.
Use the wrapper script:
"$SKILL_DIR/scripts/run_seedance.sh" generate "PROMPT" --wait --output "outputs/seedance/<name>.mp4"
Status query:
"$SKILL_DIR/scripts/run_seedance.sh" get TASK_ID --json
The copied CLI supports:
--platform volc|byteplus--model--first-frame--last-frame--reference-image--generate-audio--camera-fixed--resolution--ratio--duration--frames--wait--output--last-frame-output--jsonAuthentication comes from the CLI itself. It resolves:
ARK_API_KEYVOLC_ARK_API_KEYBYTEPLUS_ARK_API_KEYIf the user wants Seedance 2.0 or another non-default model, pass --model explicitly.
Unless the workspace already has a stronger convention, prefer:
outputs/seedance/outputs/seedance/frames/Record the final output path or task id in the retrospective after each run.
Voice / SFX / BGM.Use scripts/update_project_markdown.py whenever you have enough signal to preserve a reusable lesson.
Typical call pattern:
python3 "$SKILL_DIR/scripts/update_project_markdown.py" \
--workspace "$PWD" \
--project "PROJECT_NAME" \
--summary "What changed and why" \
--status "refined" \
--prompt-title "short-run-name" \
--prompt-body "final prompt text" \
--caution "Persistent caution 1" \
--preference "Persistent preference 1" \
--lesson "Retrospective lesson 1"
After a real generation run, also include:
--task-id--output--modeluv run