Skip to main content

Roborock 扫地机 CLI 控制工具

Project description

roborock-cli

Roborock 扫地机 CLI 控制工具。

功能

提供 15 个 CLI 命令,支持多设备(通过设备名称模糊匹配选择目标设备)。

查询命令(5 个)

命令 说明
roborock-cli devices 列出所有设备(名称、型号、DUID、固件版本)
roborock-cli status 设备精简状态(电量、清洁进度、耗材、房间列表等)
roborock-cli map 获取地图元数据和图片
roborock-cli routines 列出智能场景
roborock-cli auth 交互式认证(需要 TTY)

控制命令(10 个)

命令 说明
roborock-cli start-clean 开始清洁(全屋或指定房间)
roborock-cli stop-clean 停止清洁
roborock-cli pause-clean 暂停清洁
roborock-cli resume-clean 恢复清洁
roborock-cli go-home 回充电座
roborock-cli find-robot 寻找机器人(发出声音)
roborock-cli dock-action 基座操作(集尘/洗拖布)
roborock-cli set-volume 设置音量(0-100)
roborock-cli set-dnd 设置勿扰模式
roborock-cli execute-routine 执行智能场景

安装使用

前置:安装 uv

本项目通过 uvx 运行,需要先安装 uv

macOS / Linux

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

安装后终端输入 uvx --version 验证。

通过 uvx(推荐)

1. 首次认证

uvx roborock-cli auth

按提示输入 Roborock 账户邮箱和验证码,认证信息保存在 ~/.cache/roborock-cli/

2. 使用 CLI

# 列出设备
uvx roborock-cli devices

# 查看状态
uvx roborock-cli status

# 开始全屋清洁
uvx roborock-cli start-clean

# 开始房间清洁(房间 ID 通过 status 命令获取)
uvx roborock-cli start-clean -s 1 2 3

# 回充电座
uvx roborock-cli go-home

3. 查看帮助

所有命令都支持 -h 查看用法:

roborock-cli -h              # 查看所有可用命令
roborock-cli start-clean -h  # 查看子命令的参数说明

4. 更新版本

uvx --upgrade roborock-cli -V

永久安装到 PATH

不执行此步骤的话,所有命令都需要加 uvx 前缀,例如 uvx roborock-cli devices

如果不想每次都加 uvx 前缀,可以永久安装:

uv tool install roborock-cli

之后直接使用裸命令:

roborock-cli devices
roborock-cli status
roborock-cli start-clean

更新已安装的版本:

uv tool upgrade roborock-cli

开发模式

# 需要先 clone python-roborock 到 ./python-roborock/
uv venv --python 3.12
source .venv/bin/activate
uv pip install -e .

roborock-cli --help          # CLI 帮助
roborock-cli auth            # 认证

输出格式

CLI 命令默认输出 JSON 格式,便于程序解析:

{
  "count": 2,
  "devices": [
    {"name": "客厅扫地机", "duid": "abc123", "model": "roborock.vacuum.a75", "firmware": "02.00.01"},
    {"name": "卧室扫地机", "duid": "def456", "model": "roborock.vacuum.s8", "firmware": "02.00.02"}
  ]
}

错误退出码

退出码 含义
0 成功
1 通用业务错误
2 认证错误(需重新运行 roborock-cli auth
3 设备错误
4 参数无效
5 内部错误

要求

  • Python >= 3.12
  • Roborock 账户(国际版,邮箱注册)

许可证

GPL-3.0-only(由于 vendoring 了 python-roborock

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

roborock_cli-0.1.5.tar.gz (148.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

roborock_cli-0.1.5-py3-none-any.whl (197.2 kB view details)

Uploaded Python 3

File details

Details for the file roborock_cli-0.1.5.tar.gz.

File metadata

  • Download URL: roborock_cli-0.1.5.tar.gz
  • Upload date:
  • Size: 148.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for roborock_cli-0.1.5.tar.gz
Algorithm Hash digest
SHA256 440f787b44cf0efda0d8bf4642078478aa0b8028bf8bdfaac1a8ca5e3032f64c
MD5 362bf3958305e47c02164c990cc3b136
BLAKE2b-256 7b37be6e404e501c24438be1bf1cf1f1142a5291f9f13f18c32ea12f627cfba9

See more details on using hashes here.

File details

Details for the file roborock_cli-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: roborock_cli-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 197.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.11

File hashes

Hashes for roborock_cli-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 6b7699078dc3948da0bfba18c7f5592b6edd699d6322aced309e94e9123ab05e
MD5 f97fce86a96d17641aae370f2fbc055a
BLAKE2b-256 77d5141da7cfb464194dd5617f1fe5a277e6229bff86564d3521959acca693b1

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page