Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsBlogPro
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges
  • Chrome Extension
  • Skill Manager

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

Seedance

BSecurity

Generate AI video clips (text, image or video to video, 4-15s, optional synced audio) through Segmind Seedance 2.0''s generate.sh. Use for any AI video generation request: a clip, b-roll, animating an image, a multi-shot sequence.

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
toolsshellbashapi

Works with

cliapimcp

Security Analysis

B88/100
criticalModifies startup scripts or system services for persistence

Pro scans all 2 files and shows the line behind each finding

Scanned 9/27/2026

$npx -y skills add zalogarcia/zalo-claude-code-setup --skill seedance --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Seedance?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Seedance
[![Security: B — Skills Directory](https://www.skillsdirectory.com/api/skills/zalogarcia-seedance/badge)](https://www.skillsdirectory.com/skills/zalogarcia-seedance)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
Files
SKILL.md
---
name: seedance
description: 'Generate AI video clips (text, image or video to video, 4-15s, optional synced audio) through Segmind Seedance 2.0''s generate.sh. Use for any AI video generation request: a clip, b-roll, animating an image, a multi-shot sequence.'
---

Generate videos via the Segmind Seedance 2.0 API. Invoke `generate.sh` — do not hand-write the curl chain.

**Companion skill:** for turning a creative brief into a shot-by-shot prompt, use `seedance-video-prompt-builder` first, then feed its output to this skill via `--`:

```bash
~/.claude/skills/seedance/generate.sh --duration 15 --audio -- "$(cat shot-list.txt)"
```

## When to invoke

- User asks for a video, clip, b-roll, animation, or "make this image come alive"
- Need a short cinematic shot (4-15s) with optional native synced audio
- Multi-shot sequences (`Shot 1: ... Shot 2: ...` in the prompt)
- Animate a still image (image-to-video via `--first-frame`)
- Chain clips by reusing one clip's last frame as the next clip's first frame

Skip for: long-form video (>15s — chain clips instead), 3D scenes, talking-head lipsync (use a different model), or when the user needs editing rather than generation.

## /init - First-time setup

When the user says "init seedance", "setup seedance", or "add my segmind key":

1. Get an API key at https://www.segmind.com/ (account → API keys)
2. Persist it in shell rc:
   ```bash
   echo 'export SEGMIND_API_KEY="<paste-key>"' >> ~/.zshrc
   source ~/.zshrc
   ```
3. Verify `jq` is installed: `command -v jq || brew install jq`
4. Smoke test: `~/.claude/skills/seedance/generate.sh "test" --dry-run`

## Invocation

```bash
~/.claude/skills/seedance/generate.sh "PROMPT" [OPTIONS]
```

**Default output:** `~/Downloads/seedance/seedance-<timestamp>.mp4`

## Options

| Flag                  | Default                | Description                                                        |
| --------------------- | ---------------------- | ------------------------------------------------------------------ |
| `-d, --duration N`    | `5`                    | Seconds: 4, 5, 6, 8, 10, 12, 15                                    |
| `-r, --resolution X`  | `720p`                 | `480p`, `720p`, `1080p`, `4k` (3840×2160)                          |
| `-a, --aspect X`      | `16:9`                 | `16:9`, `9:16`, `1:1`, `4:3`, `3:4`, `21:9`, `adaptive`            |
| `--audio`             | off                    | Co-generate synced audio (dialogue, SFX, ambient, music) — free    |
| `--seed N`            | `-1` (random)          | Reproducibility                                                    |
| `--first-frame X`     | —                      | i2v starting frame (URL or local path; auto-base64)                |
| `--last-frame X`      | —                      | Ending frame; requires `--first-frame`                             |
| `--ref-image X`       | —                      | Reference image for character/style (repeatable, ≤9; URL or local) |
| `--ref-video X`       | —                      | Reference video, 2-15s, motion/style transfer (repeatable, ≤3; switches billing to the cheaper v2v rate) |
| `--ref-audio X`       | —                      | Reference audio MP3 (repeatable, ≤3; requires an image or video input alongside) |
| `--bitrate X`         | `standard`             | `standard` or `high` (~5-6x bitrate, better fidelity, same price)  |
| `--async`             | off                    | Submit via v2 async API + poll. REQUIRED for renders >60s — the v1 sync gateway cuts the connection at ~60s ("Empty reply from server"). Use for ALL ref-image/ref-video runs and 1080p/4k. |
| `--return-last-frame` | off                    | Also return final frame URL (for clip chaining)                    |
| `--skip-moderation`   | off                    | Bypass moderation pre-filter                                       |
| `-o, --output NAME`   | `seedance-<ts>`        | Filename without extension                                         |
| `--dir DIR`           | `~/Downloads/seedance` | Output directory                                                   |
| `--api-key KEY`       | `$SEGMIND_API_KEY`     | Override env                                                       |
| `--dry-run`           | —                      | Print request JSON and exit (no API call)                          |

**Mutual exclusion:** `--first-frame` and `--ref-image` cannot be combined (Segmind constraint).

**Real human faces are blocked in `--first-frame`** per ByteDance policy.

**Citing assets in the prompt:** uploaded references are addressed positionally as `image 1`, `image 2`, `video 1`, `audio 1` etc. — e.g. `"the character from image 1 walks in the style of video 1"`. Order matches the order the `--ref-*` flags were passed.

## Pricing (text-to-video, per second)

Audio is free at every tier. Video-to-video is ~39% cheaper than text-to-video.

| Resolution | 16:9 / 9:16 / 21:9  | 1:1       | 4:3 / 3:4 |
| ---------- | ------------------- | --------- | --------- |
| 480p       | $0.0703/s           | $0.0672/s | $0.0691/s |
| 720p       | $0.1512/s           | $0.1512/s | $0.1522/s |
| 1080p      | ~$0.30/s (estimate) | —         | —         |
| 4k         | ~$0.60/s (estimate) | —         | —         |

Passing `--ref-video` switches billing to the v2v token rate (~39% cheaper); the script's estimate accounts for this. `--bitrate high` does not change the price.

**Quick reference:**

- 5s @ 720p 16:9 → ~$0.76
- 10s @ 720p 16:9 → ~$1.51
- 5s @ 480p 16:9 → ~$0.35

The script prints an estimated cost before and after the call.

## Workflows

### Basic text-to-video

```bash
~/.claude/skills/seedance/generate.sh "cinematic drone shot over a misty mountain range at sunrise"
```

### Multi-shot sequence (single clip)

```bash
~/.claude/skills/seedance/generate.sh \
  "Shot 1: wide establishing shot of a cyberpunk alley, rain. Shot 2: close-up on neon sign flickering. Shot 3: figure walks past camera." \
  -d 10 -r 720p
```

### Native synced audio

```bash
~/.claude/skills/seedance/generate.sh \
  "a thunderstorm rolling over a coastline at dusk, waves crashing" \
  -d 8 --audio
```

### Image-to-video (animate a still)

```bash
~/.claude/skills/seedance/generate.sh \
  "the wind picks up, leaves swirl, camera slowly pushes in" \
  --first-frame ./hero.jpg -d 6
```

### Character/style consistency via reference images

```bash
~/.claude/skills/seedance/generate.sh \
  "the same character walks through a forest, then sits by a stream" \
  --ref-image ./char-front.png --ref-image ./char-side.png \
  -d 10 -r 720p
```

### Clip chaining (15s+ via last-frame handoff)

The script currently saves only the video file — it does **not** extract the `last_frame_url` from the API response. Two practical options:

```bash
# Option 1 — extract the final frame yourself with ffmpeg after generation
~/.claude/skills/seedance/generate.sh "scene A" -d 8 -o clip-a
ffmpeg -sseof -0.1 -i ~/Downloads/seedance/clip-a.mp4 -vframes 1 last-a.png

# Option 2 — call the API directly with curl + `return_last_frame: true` and parse the JSON
# response, then download the `last_frame_url` field

# Clip B: continue from where A ended
~/.claude/skills/seedance/generate.sh "scene B continues" --first-frame ./last-a.png -d 8 -o clip-b

# Concatenate with ffmpeg or the optimize-video skill
```

### Cinematic widescreen

```bash
~/.claude/skills/seedance/generate.sh "anime chase scene through neon city" -a 21:9 -d 8 --seed 42
```

### Vertical (TikTok/Reels)

```bash
~/.claude/skills/seedance/generate.sh "vertical product showcase: rotating sneaker on pedestal" -a 9:16 -d 6
```

## API key resolution

1. `--api-key` flag
2. `SEGMIND_API_KEY` env var (set in `~/.zshrc`)

Get a key: https://www.segmind.com/

## Constraints (Segmind-enforced)

- `first_frame_url` and `reference_images` are mutually exclusive
- Real human faces blocked in `first_frame_url` (ByteDance policy) — but real faces in `reference_images` ARE accepted (verified 2026-07-27 with a real photo)
- **Reference assets (`--ref-image/video/audio`) must be public HTTP(S) URLs** — the ByteDance upstream rejects base64 data URIs with `InvalidParameter.URL` (verified 2026-07-27). Local files must be hosted first; the HeyGen MCP asset-upload rail works: `create_asset_upload` → PUT to presigned URL → `complete_asset_upload` → public `resource2.heygen.ai` URL. (`--first-frame` still accepts local files via base64.)
- Up to 9 reference images, 3 reference videos (2-15s each), 3 reference audios (MP3) per generation
- Reference audio cannot be combined with text-only input — an image or video input (`--first-frame`, `--ref-image`, or `--ref-video`) must accompany it
- Max duration: 15 seconds per clip

## API endpoint

```
POST https://api.segmind.com/v1/seedance-2.0
Header: x-api-key: $SEGMIND_API_KEY
```

Returns binary video (sync). On error: JSON error payload with status code (400/401/403/406 insufficient credits/429 rate-limited/500/502/504).

Attribution

zalogarciazalogarcia
View sourceSee grades on GitHubMore from zalogarcia →
SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Ship a skill? Prove it's safe.

Free 120-pattern security scan, letter grade, and an embeddable README badge.

Submit a skill

Related Skills

ucoz-landing-skill

Create and edit uCoz homepage landing pages via MCP: custom templates, hero sections, lead forms, navigation menus, SEO, and responsive layout. Includes a visual design system (style selection, layout/grid, section recipes, typography/spacing, color tokens, component states, icons, modern CSS/JS, motion, imagery, social proof, copy/voice, accessibility). Uses ucoz-mcp tools for templates, site file uploads, and site modules.

107 votes

Paperclip

Interact with the Paperclip control plane API for task coordination and governance. Use when checking assignments, updating issue status, posting comments, delegating work, managing routines, or calling Paperclip API endpoints.

953191 votes

Pptx

Presentation toolkit (.pptx). Create/edit slides, layouts, content, speaker notes, comments, for programmatic presentation creation and modification.

471861 votes

Daw Music

Digital Audio Workstation usage, music composition, interactive music systems, and game audio implementation for immersive soundscapes.

761 votes

Instantly Rdsthomas Mission Control

Instantly.ai cold email outreach API - manage campaigns, leads, accounts, and analytics. Use for cold email automation, lead management, campaign creation/monitoring, and email account warmup.

761 votes
View all in tools →