核心功能
该Skill是一个基于ADB(Android Debug Bridge)的命令行工具,用于远程控制Chromecast with Google TV(4K版)设备。主要功能包括:
- 设备状态检测:通过
./run status查看ADB连接状态 - 视频播放控制:支持播放/暂停/恢复操作
- 多平台内容投屏:
- YouTube:直接通过视频ID或URL启动YouTube TV应用
- Tubi TV:通过HTTPS URL启动Tubi应用
- 其他流媒体(Hulu、Max、Disney+等):使用全局搜索回退机制,需指定应用名、季数和集数
技术实现特点
该Skill采用纯Python标准库编写,无需pip依赖,通过uv运行以规避系统包限制。核心依赖四个外部工具:
adb:Android平台工具,用于设备通信scrcpy:屏幕镜像工具,用于全局搜索自动化操作yt-api:Go编写的YouTube API CLI,用于视频ID解析uv:Python项目运行器
智能设备发现机制
支持多级设备选择策略:
1. 命令行显式指定IP和端口
2. 环境变量CHROMECAST_HOST/CHROMECAST_PORT覆盖
3. 本地缓存.last_device.json自动复用
4. ADB mDNS服务自动发现(首结果)
重要安全设计:明确禁止端口扫描,仅连接指定端口,避免与Google ADB端口轮换机制冲突。
显著优点
1. 零Python依赖:仅使用标准库,部署极度轻量
2. 灵活的设备管理:多级回退机制,从显式配置到自动发现
3. 多平台覆盖:原生支持YouTube/Tubi,通过scrcpy自动化扩展至主流流媒体
4. 非破坏性设计:本地缓存机制,不修改系统配置
5. 交互式故障恢复:ADB连接失败时提示用户输入新端口并自动更新缓存
潜在局限性与风险
1. 环境依赖复杂:需同时安装adb、scrcpy、uv、yt-api四个独立工具链
2. 平台限制:当前仅支持macOS和Linux(Darwin/Linux),Windows未明确支持
3. Google TV Streamer兼容性未知:文档明确标注对新设备支持状态不确定
4. 全局搜索稳定性:依赖scrcpy的UI自动化,受界面变化影响较大
5. Hulu特殊处理缺失:未实现Hulu账户选择逻辑
6. 网络依赖:yt-api解析和Tubi URL搜索均需外网连接
适用人群
- 熟悉命令行和ADB操作的进阶用户
- 希望自动化电视控制的家庭影院爱好者
- 需要集成Google TV到Home Assistant等自动化平台的开发者
- 愿意接受手动工具链安装配置的技术用户
安全评估
该Skill本质上是ADB命令的封装层,安全风险主要源于ADB本身:
- 需开启设备的ADB调试模式,增加攻击面
- 网络传输虽可加密,但ADB认证机制较弱
- 无端口扫描行为降低了网络层风险
- 建议仅在可信内网环境使用,避免公网暴露5555端口