How to Install Claude Video on Claude Code, Codex, Cursor, and Other AI Hosts

You can install the Claude Video watch skill via the Claude Code marketplace with two slash commands, use npx skills add for Codex and Cursor, or upload a pre-built bundle to claude.ai web—all methods share the same runtime files and behavior.

The bradautomates/claude-video repository distributes a self-contained watch skill for video analysis that runs identically across any Agent Skills-compatible host. Whether you are using Claude Code, Codex, Cursor, or the claude.ai web interface, the installation process varies only in how the skill bundle is delivered, not in the underlying functionality.

Installation Methods by Host Platform

For users running Claude Code in the terminal, installation requires adding the marketplace repository and installing the specific skill:

/plugin marketplace add bradautomates/claude-video
/plugin install watch@claude-video

These commands register the skill globally, making the /watch command available immediately in any project context. According to the bradautomates/claude-video source code, this method is the preferred installation path for terminal-based Claude interactions.

Codex, Cursor, Copilot, and Gemini CLI

For hosts that support the Agent Skills CLI—including Codex, Cursor, GitHub Copilot, Gemini CLI, and over 50 other platforms—install the skill globally using npx:

npx skills add bradautomates/claude-video -g

The -g flag installs the skill to your global skills directory (typically ~/.codex/skills/ or equivalent for Cursor), though you can omit it for per-project installation. This command clones the repository and places skills/watch/ where the host expects to find it.

claude.ai Web Interface

When using the browser-based claude.ai interface, you must manually upload the skill bundle:

  1. Download the pre-built watch.skill bundle from the latest GitHub release
  2. Navigate to Settings → Capabilities → Skills and click + to upload the file
  3. Enable "Code execution and file creation" to allow the skill to invoke ffmpeg and yt-dlp

This manual upload is necessary because the web sandbox cannot access local package managers like npm or the Claude Code plugin system.

Manual Installation for Development

To modify the skill or install from source:

  1. Clone the repository:

    git clone https://github.com/bradautomates/claude-video.git
  2. Symlink the skill folder into your host's skill directory:

    ln -s $(pwd)/claude-video/skills/watch ~/.claude/skills/watch
    # or for Codex/Cursor:
    
    ln -s $(pwd)/claude-video/skills/watch ~/.codex/skills/watch
  3. Optionally build a .skill bundle for claude.ai using the provided script:

    bash skills/watch/scripts/build-skill.sh

Unified Runtime Architecture

Regardless of installation method, all hosts load the identical directory structure from skills/watch/:


skills/watch/
├─ SKILL.md                # contract shared by every host

└─ scripts/
   ├─ watch.py            # entry point for /watch command

   ├─ download.py        # yt-dlp wrapper for video acquisition

   ├─ frames.py          # ffmpeg frame extraction logic

   ├─ transcribe.py      # caption parsing and Whisper fallback

   ├─ whisper.py         # Groq/OpenAI API client

   ├─ config.py          # reads ~/.config/watch/.env

   └─ setup.py           # pre-flight dependency checks

Because SKILL.md resolves scripts relative to its own location, the skill behaves identically whether installed via marketplace, CLI, or manual symlink. No host-specific code paths exist in watch.py or supporting modules, making maintenance and updates straightforward across platforms.

Using the Watch Skill After Installation

Once installed, invoke the skill using the /watch command followed by a URL or file path:


# Analyze a YouTube video with automatic caption detection

/watch https://youtu.be/dQw4w9WgXcQ what happens at the 30-second mark?

# Analyze a specific segment with frame extraction

/watch https://youtu.be/abc --start 2:15 --end 2:45

# Force Whisper transcription when captions are unavailable

/watch video.mp4 --whisper groq

The skill executes a pipeline defined in skills/watch/scripts/watch.py:

  1. Download: download.py checks for native captions via yt-dlp and retrieves only the necessary video portion
  2. Frame Extraction: frames.py uses ffmpeg to extract frames in efficient, balanced, or token-burner detail modes
  3. Transcription: transcribe.py parses VTT captions or calls whisper.py to generate timestamps via Groq or OpenAI
  4. Analysis: Returns structured data to the host AI for multimodal processing

Summary

  • Claude Code users install via /plugin marketplace add followed by /plugin install
  • Codex, Cursor, and 50+ hosts use the global CLI: npx skills add bradautomates/claude-video -g
  • claude.ai web requires downloading the watch.skill bundle and uploading via Settings
  • Developers can symlink skills/watch/ directly and use build-skill.sh for packaging
  • All methods share the same runtime files in skills/watch/, ensuring consistent behavior across platforms

Frequently Asked Questions

Do I need to install ffmpeg and yt-dlp separately?

No. The first time you run the /watch command, skills/watch/scripts/setup.py performs a pre-flight check and guides you through installing ffmpeg and yt-dlp if they are missing. Alternatively, you can scaffold the configuration directory manually at ~/.config/watch/.env.

Can I use the same installation for both Claude Code and Cursor?

Yes. If you install manually by symlinking the skills/watch/ directory into both ~/.claude/skills/ and ~/.codex/skills/, both hosts will reference the same underlying code. However, updates via npx skills add or the marketplace apply only to the specific host where you ran the command.

Why does claude.ai web require a manual upload while terminal hosts use commands?

The claude.ai web interface operates in a sandboxed browser environment without access to your local filesystem or package managers. The pre-built watch.skill bundle (generated by build-skill.sh) contains all necessary scripts, allowing you to upload a self-contained unit that runs within the web sandbox.

Where is the skill configuration stored?

Global configuration resides in ~/.config/watch/.env, read by skills/watch/scripts/config.py. This file stores API keys for Whisper backends (Groq/OpenAI) and default extraction preferences, separate from the installation directory.

Have a question about this repo?

These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:

Share the following with your agent to get started:
curl -s "https://instagit.com/install.md"

Works with
Claude Codex Cursor VS Code OpenClaw Any MCP Client

Maintain an open-source project? Get it listed too →