Skip to main content
AI/MLjeremylongshore

runway-hello-world

"Runway hello world \u2014 AI video generation and creative AI platform.\n\

Stars
2,267
Source
jeremylongshore/claude-code-plugins-plus-skills
Updated
2026-05-31
Slug
jeremylongshore--claude-code-plugins-plus-skills--runway-hello-world
View on GitHubRaw SKILL.md

// install — copy + paste into any project

mkdir -p .claude/skills && curl -fsSL https://raw.githubusercontent.com/jeremylongshore/claude-code-plugins-plus-skills/HEAD/plugins/saas-packs/runway-pack/skills/runway-hello-world/SKILL.md -o .claude/skills/runway-hello-world.md

Drops the SKILL.md into .claude/skills/runway-hello-world.md. Works with Claude Code, Cursor, and any agent that loads SKILL.md files from .claude/skills/.

Runway Hello World

Overview

Generate your first AI video from a text prompt using Runway's Gen-3 Alpha model.

Prerequisites

  • Completed runway-install-auth
  • API credits available in your Runway account

Instructions

Step 1: Text-to-Video Generation

from runwayml import RunwayML

client = RunwayML()

# Create a text-to-video generation task
task = client.image_to_video.create(
    model='gen3a_turbo',
    prompt_text='A golden retriever running through a field of sunflowers, cinematic lighting, slow motion',
    duration=5,  # 5 or 10 seconds
    ratio='16:9',  # 16:9 or 9:16
)
print(f"Task created: {task.id}")

Step 2: Poll for Completion

import time

# The SDK has a built-in helper for polling
task_result = client.tasks.retrieve(task.id)

# Or poll manually
while task_result.status not in ('SUCCEEDED', 'FAILED'):
    time.sleep(5)
    task_result = client.tasks.retrieve(task.id)
    print(f"  Status: {task_result.status}")

if task_result.status == 'SUCCEEDED':
    print(f"Video URL: {task_result.output[0]}")
else:
    print(f"Failed: {task_result.failure}")

Step 3: Download the Video

import urllib.request

if task_result.status == 'SUCCEEDED':
    video_url = task_result.output[0]
    urllib.request.urlretrieve(video_url, 'output.mp4')
    print("Video saved to output.mp4")

Step 4: Using the Built-in Wait Helper

# Simpler approach — SDK polls automatically
task = client.image_to_video.create(
    model='gen3a_turbo',
    prompt_text='Ocean waves crashing on rocky cliffs at sunset, aerial view',
    duration=5,
)
# Wait for completion (default timeout: 10 minutes)
result = task.wait_for_task_output()
print(f"Video: {result.output[0]}")

Output

  • Video generation task created
  • Task polled until completion
  • Generated video URL retrieved
  • Video downloaded to local file

Error Handling

Error Cause Solution
Task FAILED Content policy violation Adjust prompt to comply with content policy
402 Insufficient credits No API credits Add credits at dev.runwayml.com
Timeout Generation taking too long Increase timeout or use shorter duration
Low quality output Prompt too vague Add style keywords: "cinematic", "4K", "professional"

Resources

Next Steps

Advanced text-to-video: runway-core-workflow-a