Back to Skills

veo

verified

This skill should be used when the user asks to "generate video", "create video with Veo", "text to video", "image to video", "animate image", or "video generation". Generates videos using Google Veo 3.1 API with text, image, or video inputs.

View on GitHub

Marketplace

cc-plugin

jongwony/cc-plugin

Plugin

google

Repository

jongwony/cc-plugin

google/skills/veo/SKILL.md

Last Verified

January 24, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/jongwony/cc-plugin/blob/main/google/skills/veo/SKILL.md -a claude-code --skill veo

Installation paths:

Claude
.claude/skills/veo/
Powered by add-skill CLI

Instructions

# Veo Video Generation

Generate high-fidelity videos with Google Veo 3.1 via API. Supports text-to-video, image-to-video, and video-to-video workflows with advanced cinematography control and synchronized audio generation.

## Quick Start

### Installation

```bash
uv pip install google-genai
```

### Basic Generation

```python
from google import genai
from google.genai import types
import time
import os

# Initialize client
client = genai.Client(
    vertexai=True,
    project=os.getenv("GOOGLE_CLOUD_PROJECT"),  # Set via environment variable
    location="us-central1"
)

# Generate video from text
operation = client.models.generate_videos(
    model='veo-3.1-generate-preview',
    prompt='A neon hologram of a cat driving at top speed',
    config=types.GenerateVideosConfig(
        number_of_videos=1,
        duration_seconds=5,
        # enhance_prompt defaults to True and cannot be disabled in Veo 3.1
    ),
)

# Poll until complete (typically 2-5 minutes)
while not operation.done:
    time.sleep(20)
    operation = client.operations.get(operation)

# Check for errors before accessing response
if operation.error:
    raise Exception(f"Video generation failed: {operation.error}")

# Save the generated video
video = operation.response.generated_videos[0].video
with open('output.mp4', 'wb') as f:
    f.write(video.video_bytes)
```

## Core Capabilities

- **Resolutions:** 720p or 1080p
- **Aspect ratios:** 16:9 or 9:16
- **Clip lengths:** 4, 6, or 8 seconds
- **Rich audio:** Synchronized dialogue, sound effects, ambient noise
- **Advanced controls:** Image-to-video, first/last frame transitions, consistent characters

## The Prompting Formula

For consistent, high-quality results, structure prompts using:

**[Cinematography] + [Subject] + [Action] + [Context] + [Style & Ambiance]**

### Example

```
Medium shot, a tired corporate worker, rubbing his temples in exhaustion,
in front of a bulky 1980s computer in a cluttered office late at night.
The scene is lit by 

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
8321 chars