Install
openclaw skills install @iunclear/ark-seedance-video-generationEnd-to-end Volcengine Ark Seedance video generation using ARK_API_KEY and the bundled Node.js runner. Use when an agent needs to generate videos, handle text...
openclaw skills install @iunclear/ark-seedance-video-generationUse this skill as an execution skill for tool-using agents. The agent should run the existing script directly and complete the workflow for the user.
scripts/seedance-video.js for live execution.ARK_API_KEY only. Do not use AK/SK.--model or payload JSON.doubao-seedance-1-0-pro-250528doubao-seedance-2-0-260128doubao-seedance-1-0-pro-250528request.json in sanitized form only. Do not persist raw Base64 media data.For every new generation request, the first model-facing message must:
doubao-seedance-1-0-pro-250528doubao-seedance-2-0-260128If the user already named one of the two approved IDs, use it and continue.
Determine:
--model or payload JSON.ARK_API_KEYARK_API_KEY is requiredIf the request uses --image-file, --video-file, or --audio-file:
Prefer a workspace-local structure:
./outputs/seedance/<job-name>/request.json./outputs/seedance/<job-name>/task.json./outputs/seedance/<job-name>/<downloaded-assets>Use the existing script surface only:
run for normal generationcreate or create --wait true only when the lifecycle requires itget for inspect or re-downloadlist for browsing tasksdelete for deletiondownload when assets are needed from an existing task.jsonMap user inputs to:
--model--prompt--image-file / --image-url--video-file / --video-url--audio-file / --audio-url--draft-task-id--resolution--ratio--duration--frames--seed--camera-fixed--watermark--return-last-frame--callback-url--download-dirIf the request needs unsupported advanced fields, write a JSON payload file and pass it through --payload-file.
After execution, verify what applies:
succeededtask.json existsrequest.json exists and is sanitizedReturn:
Use these as execution patterns:
node "./scripts/seedance-video.js" --model "<model-id>" --prompt "<prompt>" --download-dir "./outputs/seedance/run-001"
node "./scripts/seedance-video.js" --model "<model-id>" --image-file "./inputs/source.png" --prompt "<prompt>" --return-last-frame true --download-dir "./outputs/seedance/image-to-video"
node "./scripts/seedance-video.js" create --model "<model-id>" --prompt "<prompt>" --wait true --download-dir "./outputs/seedance/create-wait"
node "./scripts/seedance-video.js" get --task-id "cgt-xxxx" --download-dir "./outputs/seedance/rerun-download"
node "./scripts/seedance-video.js" --payload-file "./inputs/seedance-payload.json" --download-dir "./outputs/seedance/raw-payload"
Read only when needed:
references/ark-video-api.mdreferences/video-models.jsonreferences/video-models.mdreferences/payload-patterns.md