1.3k★by morozred
chromecast – OpenClaw Skill
chromecast is an OpenClaw Skills integration for data analytics workflows. Control Chromecast devices on your local network - discover, cast media, control playback, manage queues, and save/restore states
Skill Snapshot
| name | chromecast |
| description | Control Chromecast devices on your local network - discover, cast media, control playback, manage queues, and save/restore states OpenClaw Skills integration. |
| owner | morozred |
| repository | morozred/chromecast-control |
| language | Markdown |
| license | MIT |
| topics | |
| security | L1 |
| install | openclaw add @morozred/chromecast-control |
| last updated | Feb 7, 2026 |
Maintainer

name: chromecast description: Control Chromecast devices on your local network - discover, cast media, control playback, manage queues, and save/restore states homepage: https://github.com/skorokithakis/catt metadata: {"clawdbot":{"emoji":"📺","requires":{"bins":["catt"]},"install":[{"id":"pip","kind":"uv","package":"catt","bins":["catt"],"label":"Install via pip/uv"}]}}
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 <url> | Cast video/audio |
catt pause / play | Pause/resume |
catt stop | Stop playback |
catt status | Current playback info |
catt volume <0-100> | Set volume |
Use -d <device> 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 scanfails
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)
No README available.
Permissions & Security
Security level L1: Low-risk skills with minimal permissions. Review inputs and outputs before running in production.
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
Configuration
Config file: `~/.config/catt/catt.cfg` ```ini [options] device = Living Room TV [aliases] tv = Living Room TV bedroom = Bedroom Speaker ```
FAQ
How do I install chromecast?
Run openclaw add @morozred/chromecast-control in your terminal. This installs chromecast into your OpenClaw Skills catalog.
Does this skill run locally or in the cloud?
OpenClaw Skills execute locally by default. Review the SKILL.md and permissions before running any skill.
Where can I verify the source code?
The source repository is available at https://github.com/openclaw/skills/tree/main/skills/morozred/chromecast-control. Review commits and README documentation before installing.
