ComfyUI Extension: Seedance 2.0 (Sjinn.ai)
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.
Run ByteDance Seedance 2.0 video generation in ComfyUI via Sjinn.ai API. Supports up to 6 image, 3 video and 2 audio references. Outputs native VIDEO plus first frame, last frame and frame batch.
README
π¬ Seedance 2.0 ComfyUI Node β Sjinn.ai API
Run ByteDance Seedance 2.0 video generation directly in ComfyUI via the Sjinn.ai API.
Connect reference images, videos and audio clips, write a prompt, click Run. The node handles uploads, task creation and polling β you get back a native VIDEO output plus frame previews.

β¨ Features
| | |
|--|--|
| πΌοΈ Reference images | Up to 6 β connect any Load Image node |
| π₯ Reference videos | Up to 3 β connect vanilla Load Video node (β€720P, β₯2s) |
| π΅ Reference audio | Up to 2 β connect Load Audio node |
| π Aspect ratios | 16:9 Β· 9:16 Β· 1:1 Β· 4:3 Β· 3:4 |
| β±οΈ Duration | 4β15 seconds |
| β‘ Speed mode | pro = quality Β· fast = speed |
| π² Seed | Fixed or random |
| π‘οΈ Smart rescue | Auto-rewrites prompt if content policy blocks it |
| π Progress bar | Real ComfyUI progress during uploads + generation |
| ποΈ Frame outputs | first_frame, last_frame, frames (IMAGE batch for VHS nodes) |
π¦ Requirements
- ComfyUI v0.14+ (native VIDEO and AUDIO types)
- Sjinn.ai Pro+ account β https://sjinn.ai
opencv-pythonβ auto-installed via requirements.txt
π Installation
Via ComfyUI Manager (recommended):
- Manager β Install via Git URL
- Paste:
https://github.com/steptonite/seedance2-sjinn-comfyui - Install β restart ComfyUI
Manual:
cd ComfyUI/custom_nodes/
git clone https://github.com/steptonite/seedance2-sjinn-comfyui
# Mac / Linux
../../python/bin/python -m pip install -r seedance2-sjinn-comfyui/requirements.txt
# Windows portable
..\..\python_embeded\python.exe -m pip install -r seedance2-sjinn-comfyui/requirements.txt
Restart ComfyUI.
π Credentials
Two credentials from sjinn.ai are required.
API Key
Profile β API Keys β Create β copy the key β paste into api_key field.
Session Token
- Open https://sjinn.ai/tools/seedance20-video (must be logged in, Pro+)
- F12 β Application β Cookies β
https://sjinn.ai - Find cookie:
__Secure-next-auth.session-token - Click the row β copy the full value from the bottom panel (starts with
eyJ, ~500 chars) - Paste into
session_tokenfield
β οΈ Token expires when your browser session ends. On 401 errors β grab a fresh one.
πΉοΈ How to Use
Find π¬ Seedance 2.0 (Sjinn.ai) in the Sjinn.ai category (or search "Seedance").
- Connect images β
image_1β¦image_6 - Connect videos β
video_1β¦video_3(must be β€720P and β₯2 seconds) - Connect audio β
audio_1/audio_2 - Write prompt β reference inputs with
@Image1,@Image2,@Video1:@Image1 is the character. @Video1 is the camera motion reference. Cinematic slow motion, natural lighting. - Set
ratio,duration,speed_mode,seed - Enter
session_tokenandapi_key - Queue Prompt β progress bar shows upload β generation β done
Outputs: video (VIDEO) Β· first_frame Β· last_frame Β· frames (IMAGE batch)
π Parameters
| Parameter | Default | Description |
|-----------|---------|-------------|
| session_token | β | Browser cookie from sjinn.ai |
| api_key | β | Sjinn.ai API key (for polling) |
| prompt | β | Generation prompt |
| image_1..6 | β | Reference images |
| video_1..3 | β | Reference videos (β€720P, β₯2s) |
| audio_1..2 | β | Reference audio clips |
| ratio | 16:9 | Aspect ratio |
| duration | 5 | Output length in seconds (4β15) |
| speed_mode | pro | pro quality / fast speed |
| accelerate_real_face | True | Preserve face consistency across frames |
| smart_rescue | True | Auto-fix prompt on content policy block |
| seed | -1 | -1 = random Β· fixed int = reproducible |
π° Cost
100 credits per second of output. A 5-second video = 500 credits. Credits are refunded if the task fails content policy.
π‘ Tips
- Videos must be β€720P β resize upstream if needed
- Videos must be β₯2 seconds
speed_mode: fastfor iteration,profor finalssmart_rescue: offif you want the prompt used verbatim- Use
@Image1,@Video1etc. to explicitly assign roles in the prompt
π Local Credentials File (optional)
Create sjinn_config.py in the node folder to pre-fill fields:
SJINN_API_KEY = "your-key"
SJINN_SESSION_TOKEN = "your-token"
Already in .gitignore β never commit this file.
π οΈ Troubleshooting
| Issue | Fix |
|-------|-----|
| 401 on upload/task | Session token expired β grab fresh cookie |
| "Service temporarily unavailable" | Sjinn.ai server load β retry |
| Task failed (status=2) | Enable smart_rescue or soften prompt |
| Video too short error | Reference video must be β₯2 seconds |
| video_1 / audio_1 socket missing | Update ComfyUI to v0.14+ |
| first_frame is black | pip install opencv-python |
πΊπ¦ Community
Ukrainian ComfyUI community β questions, workflows, tips: t.me/comfyui_ua
π License
MIT β see LICENSE
Run ComfyUI workflows without the setup
No installs, no CUDA version roulette, no GPU sitting idle on your bill. Bring a workflow and run it in the browser.