← Back to Skills Marketplace
morozred

Control Chromecast

by morozRed · GitHub ↗ · v1.0.0
cross-platform ✓ Security Clean
2090
Downloads
3
Stars
3
Active Installs
1
Versions
Install in OpenClaw
/install chromecast-control
Description
Control Chromecast devices on your local network - discover, cast media, control playback, manage queues, and save/restore states
README (SKILL.md)

Chromecast Control

Control Chromecast and Google Cast-enabled devices on your local network using catt (Cast All The Things).

Quick Reference

Command Description
catt scan Find all Chromecasts on network
catt cast \x3Curl> Cast video/audio
catt pause / play Pause/resume
catt stop Stop playback
catt status Current playback info
catt volume \x3C0-100> Set volume

Use -d \x3Cdevice> to target a specific device by name or IP.

Discovery & Device Management

# Find all devices
catt scan

# Set a default device (saves to config)
catt -d "Living Room TV" set_default

# Create an alias for easier access
catt -d 192.168.1.163 set_alias tv

# Remove alias or default
catt -d tv del_alias
catt del_default

Casting Media

Basic Casting

# Cast from URL (YouTube, Vimeo, and hundreds of yt-dlp supported sites)
catt cast "https://www.youtube.com/watch?v=VIDEO_ID"

# Cast local file
catt cast ./video.mp4

# Cast a website (displays webpage on TV)
catt cast_site "https://example.com"

Advanced Cast Options

# Cast with subtitles
catt cast -s ./subtitles.srt ./video.mp4

# Start at specific timestamp
catt cast -t 01:30:00 "https://youtube.com/watch?v=VIDEO_ID"

# Play random item from playlist
catt cast -r "https://youtube.com/playlist?list=PLAYLIST_ID"

# Play only video (ignore playlist in URL)
catt cast -n "https://youtube.com/watch?v=VIDEO_ID&list=PLAYLIST_ID"

# Disable automatic subtitle loading
catt cast --no-subs ./video.mp4

# Pass yt-dlp options (e.g., select format)
catt cast -y format=best "https://youtube.com/watch?v=VIDEO_ID"

# Block until playback ends (useful for scripts)
catt cast -b "https://example.com/video.mp4"

Playback Control

catt play              # Resume playback
catt pause             # Pause playback
catt play_toggle       # Toggle play/pause
catt stop              # Stop playback completely
catt skip              # Skip to end of content

# Seeking
catt seek 300          # Jump to 5 minutes (seconds)
catt seek 01:30:00     # Jump to 1h 30m (HH:MM:SS)
catt ffwd 30           # Fast forward 30 seconds
catt rewind 30         # Rewind 30 seconds

Volume Control

catt volume 50         # Set volume to 50%
catt volumeup 10       # Increase by 10
catt volumedown 10     # Decrease by 10
catt volumemute on     # Mute
catt volumemute off    # Unmute

Queue Management (YouTube)

# Add video to end of queue
catt add "https://youtube.com/watch?v=VIDEO_ID"

# Add video to play next
catt add -n "https://youtube.com/watch?v=VIDEO_ID"

# Remove video from queue
catt remove "https://youtube.com/watch?v=VIDEO_ID"

# Clear entire queue
catt clear

State Management

# Save current state (position, volume, what's playing)
catt save

# Restore saved state later
catt restore

Device Information

catt status    # Brief: time, volume, mute status
catt info      # Full: title, URL, player state, media type, etc.

Configuration

Config file: ~/.config/catt/catt.cfg

[options]
device = Living Room TV

[aliases]
tv = Living Room TV
bedroom = Bedroom Speaker

Network Requirements

  • Chromecast and computer must be on same network
  • For local file casting: TCP ports 45000-47000 must be open
  • Some networks block mDNS - use IP address directly if catt scan fails

Supported Sources

Catt uses yt-dlp internally, supporting:

  • YouTube (videos, playlists, live streams)
  • Vimeo, Dailymotion, Twitch
  • Direct video URLs (MP4, MKV, WebM, etc.)
  • Local files (video, audio, images)
  • Hundreds more sites (see yt-dlp supported sites)
Usage Guidance
This skill appears coherent and implements Chromecast control by invoking the catt CLI. Before installing, you should: (1) verify the catt package source on the linked GitHub repo and PyPI page to ensure you trust it; (2) be aware that 'pip' installs execute package code and will pull dependencies (yt-dlp, etc.); (3) accept that the tool needs local network access and may open TCP ports (45000–47000) for local-file casting — avoid enabling those ports on untrusted networks; (4) know the tool will write settings to ~/.config/catt/catt.cfg (device aliases/defaults); and (5) consider installing inside a virtual environment or isolated environment if you want to limit system-wide impact.
Capability Analysis
Type: OpenClaw Skill Name: chromecast-control Version: 1.0.0 The skill bundle is classified as benign. It provides instructions and examples for using the `catt` (Cast All The Things) command-line tool to control Chromecast devices on a local network. The `SKILL.md` clearly defines the purpose, lists standard `catt` commands for discovery, casting, playback control, volume, queue management, and state management. The installation method specified (`pip` via `uv`) is standard for Python packages, and `catt` is a legitimate open-source project. There is no evidence of prompt injection attempts, data exfiltration, malicious execution, persistence mechanisms, or obfuscation. All described actions are directly related to the stated purpose of controlling Chromecast devices.
Capability Assessment
Purpose & Capability
The name/description are about controlling Chromecast devices and the skill only requires the 'catt' CLI (which is the expected tool for this purpose). No unrelated services, credentials, or binaries are requested.
Instruction Scope
SKILL.md contains concrete catt command examples (scan, cast, play, pause, status, etc.). It references the catt config file (~/.config/catt/catt.cfg) and local-network requirements (mDNS, ports), which are expected for Chromecast control. The instructions do not ask the agent to read unrelated system files, harvest credentials, or transmit data to unexpected external endpoints.
Install Mechanism
Install uses a Python package (uv/pip) to provide the 'catt' CLI (package name 'catt'). Installing from PyPI is common and appropriate here, but pip install runs arbitrary package code at install time and will pull in dependencies (e.g., yt-dlp, ffmpeg-related tooling). Recommend reviewing the catt package source (GitHub repo listed) and PyPI metadata before installing.
Credentials
The skill requests no environment variables or external credentials. This is proportional: controlling local Chromecast devices does not require cloud API keys. The only filesystem/config interaction is the user's catt config in their home directory, which is appropriate.
Persistence & Privilege
always is false (no forced inclusion). The skill will read/write its own config (~/.config/catt/catt.cfg) when using commands like set_default — this is expected but worth noting because it persists device aliases/defaults to the user's home config. Autonomous invocation by the agent is allowed (platform default); that is normal but increases impact if the installed package were malicious.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install chromecast-control
  3. After installation, invoke the skill by name or use /chromecast-control
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of Chromecast Control skill. - Discover and manage Chromecast devices on your local network. - Cast media from URLs, local files, or websites to your devices. - Control playback: play, pause, seek, stop, volume, and mute functions. - Manage YouTube queues and playlists; add, remove, or clear items. - Save and restore device playback state, including position and volume. - Provides commands for device status and detailed info.
Metadata
Slug chromecast-control
Version 1.0.0
License
All-time Installs 5
Active Installs 3
Total Versions 1
Frequently Asked Questions

What is Control Chromecast?

Control Chromecast devices on your local network - discover, cast media, control playback, manage queues, and save/restore states. It is an AI Agent Skill for Claude Code / OpenClaw, with 2090 downloads so far.

How do I install Control Chromecast?

Run "/install chromecast-control" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Control Chromecast free?

Yes, Control Chromecast is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Control Chromecast support?

Control Chromecast is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Control Chromecast?

It is built and maintained by morozRed (@morozred); the current version is v1.0.0.

💬 Comments