seedance-submitter
Seedance Submitter
Use this skill for Seedance 2.0 generative video jobs routed through the PostPlus Cloud service.
Follow shared public skill rules in:
postplus-sharedpublic skill rules
Workflow
- Lock inputs: product image paths, storyboard image path, script, target duration, output root, and whether the user wants submit or only JSON.
- Read references/current-rules.md.
- If creating request JSON, read references/request-json.md.
- Upload local reference images before submission and replace local paths with uploaded URLs.
- Put exact spoken copy in
promptPlan.dialogue. - Put voice style, BGM, SFX, subtitle, and watermark constraints in
promptPlan.audio. - Validate every Seedance request before submission:
node skills/40-creative/seedance-submitter/scripts/validate_seedance_request_contract.mjs \
--input <request.seed.json>
- Submit with
skills/40-creative/video-batch-runner/scripts/generate_video_from_image_audio.mjs. - Poll with
skills/40-creative/video-batch-runner/scripts/poll_prediction.mjsuntil completed. - Report local
renders/render-001.mp4paths and prediction ids.
If the user says sd2, interpret it as Seedance 2.0 unless they explicitly specify another model.
Mandatory Split Rule
Seedance 2.0 supports only short generation windows.
If the target script or beat plan exceeds 15 seconds, splitting is mandatory.
Do not submit one oversized request and hope the model compresses it.
Create segment-01, segment-02, and later request records instead.
Tell the user:
- "Seedance 2.0 is only stable for short windows. I will first split this script into independent segments, submit, poll, and download each segment, then deliver every segment render path and prediction id."
Each segment must be:
- independently submit-ready
- independently downloadable
- semantically complete as a usable clip
- self-contained, with continuity targets restated inside that segment request when continuity matters
When Splitting
- Split by voiceover meaning, natural pauses, and shot continuity.
- Do not mechanically split at
0:00-0:15 / 0:15-0:30unless the script naturally fits. - If one action crosses a segment boundary, restate the relevant character, product, scene, and action state inside the later segment request.
- Each segment must be a complete request that can be submitted, polled, and downloaded independently.
- Each segment should keep only its own dialogue and action scope.
- Final request text must not rely on
continue from the previous segment,same as previous,same character,content above, or equivalent equivalent shorthand. The validator rejects these forms.
Reference Binding Rule
When reference images or reference videos are present, bind them explicitly.
For one object identity, default to one image reference. For one voice identity, default to one audio reference. Do not add many near-duplicate references by default; that often makes video generation less stable.
Working handles such as @storyboard, @product-front, or @ref-video-1 are acceptable in planning notes, but the final request must convert them into explicit reference bindings.
Do not say only use the attached references.
Say what each reference controls, such as:
- product identity, shape, color, or material
- shot order
- camera motion
- continuation from the prior segment
For final Seedance prompts, prefer explicit bindings such as [image 1], [image 2], and [video 1] plus role descriptions.
PostPlus Cloud Rule
- Keep request files, raw provider responses, and polling state under
<work-folder>/.postplus/seedance-submitter/when they are internal execution state. - Keep only final user-facing renders outside
.postplus/. - If the PostPlus Cloud service is unavailable, unauthorized, or returns a stable network error, stop immediately instead of switching to ad hoc shell glue.
- If request validation fails, stop before calling the PostPlus Cloud service. Do not submit an oversized or memory-dependent Seedance request.
Debugging
If generation stalls, misses dialogue, or produces malformed request JSON, read references/troubleshooting.md.
More from postplusai/postplus-skills
audio-transcription
Transcribe local or remote audio into durable text and timestamp artifacts using hosted Whisper models. Use this when the job is speech-to-text from audio files and you need request/response persistence, optional timestamps, and subtitle-ready outputs.
105google-trends-research
Research Google Trends search-intent signals for topic discovery, keyword momentum, regional interest, and rising queries without treating search trends as the same thing as platform content heat or marketplace demand.
100instagram-account-research
Research Instagram accounts for creator discovery, competitor profiling, and account health snapshots using hosted profile and post collection.
98social-media-publisher
Prepare and, after explicit approval, publish social posts through the PostPlus platform-owned social publishing workspace.
97tiktok-research
Research TikTok metadata, creators, comments, trends, and benchmark data for organic platform analysis.
97instagram-tools
Local execution tools for Instagram hosted collection workflows, including actor runs, dataset normalization, ranking, comment clustering, and watchlist construction.
97