Skip to content
Content
Skill

/openrouter-text2video

Generate videos via OpenRouter using ByteDance Seedance 2.0.

BOOST
From plugin
data2story-skill
15827 skills
Install
$ npx -y skills add QinghongLin/data2story-skill --skill openrouter-text2video --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/openrouter-text2video

Context preview

The summary Claude sees to decide when to auto-load this skill.

Generate videos via OpenRouter using ByteDance Seedance 2.0.

SKILL.md

openrouter-text2video.SKILL.md
name: openrouter-text2video
description: Generate videos via OpenRouter using ByteDance Seedance 2.0.

openrouter-text2video

Text → video via OpenRouter. Default model: `bytedance/seedance-2.0`.

Uses the async video-generation endpoint: submit job → poll → download.

Usage

Resolve `TOOL_DIR` = the directory containing this `SKILL.md`. Commands below use `TOOL_DIR` as a symbolic placeholder; replace it with the resolved, quoted path before running Bash.

export OPENROUTER_API_KEY=sk-or-v1-...

python3 TOOL_DIR/scripts/generate_video.py \
  --prompt "A slow dolly push through a retro-futuristic arcade, neon signs reflecting in a puddle" \
  --duration 5 \
  --aspect-ratio 16:9 \
  --resolution 720p \
  --download PROJECT_DIR/assets/hero.mp4

Flags

| Flag | Default | Description | |---|---|---| | `--prompt` | required | Text prompt | | `--download` | required | Output MP4 path | | `--model` | `bytedance/seedance-2.0` | Any OpenRouter video model | | `--duration` | `5` | Seconds | | `--aspect-ratio` | `16:9` | `16:9`, `9:16`, `1:1`, `4:3`, `3:4`, `21:9`, `9:21` | | `--resolution` | `720p` | Model-dependent (e.g. `480p`, `720p`, `1080p`) | | `--generate-audio` | off | Generate audio with video (if model supports) | | `--poll-interval` | `5` | Seconds between polls | | `--max-wait` | `600` | Max total wait time |

Flow

1. `POST /api/v1/videos` → returns `{id, polling_url, status: "pending"}` 2. `GET /api/v1/videos/{id}` every 5s until `status == "completed"` 3. `GET /api/v1/videos/{id}/content` → raw MP4 bytes

Pricing

Seedance 2.0: ~$7/M tokens with `(height × width × duration × 24) / 1024` token formula. A 5-second 720p 16:9 clip ≈ 145k tokens ≈ $1.

Notes

  • Supports text-to-video, image-to-video (first/last frame control via `frame_images`), and reference-to-video.
  • This script only wires text-to-video. Extend the body to add `frame_images` or `input_references` for advanced modes.
Read more
Ships withdata2story-skill

A data-journalist agent skill that turns any dataset into a verifiable, evidence-grounded multimodal story — a self-contained HTML article where every sentence traces back to the data or source that justifies it.

Get the whole plugin
Stats
158
Stars
23
Forks
Maintained
Maintenance
Python
Language
MIT
License
3mo ago
Last commit
5mo ago
Created
6d ago
Added

Repo: QinghongLin/data2story-skill

Other skills on data2story-skill.