Skip to main content

Roborock 扫地机 CLI 控制工具

Project description

roborock-cli

Roborock 扫地机 CLI 控制工具,也可作为 MCP 服务器使用。

功能

提供 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

# 列出设备
roborock-cli devices

# 查看状态
roborock-cli status

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

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

# 回充电座
roborock-cli go-home

作为 MCP 服务器使用

roborock-cli 也可以作为 MCP 服务器运行,供 Claude Desktop/Code 等客户端使用:

roborock-cli mcp

配置 Claude Code

在项目目录创建 .mcp.json

{
  "mcpServers": {
    "roborock": {
      "command": "uvx",
      "args": ["roborock-cli@latest", "mcp"]
    }
  }
}

开发模式

# 需要先 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            # 认证
roborock-cli mcp             # 启动 MCP server

输出格式

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.1.tar.gz (148.1 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.1-py3-none-any.whl (196.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: roborock_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 148.1 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.1.tar.gz
Algorithm Hash digest
SHA256 0b9eb697e2f5ce8231148511c025d9b85b164b5564913497f6ef826b43d8b395
MD5 eb44ea0feeb26df74992f1bfe5097ba9
BLAKE2b-256 6cce309a99406ee13ad3f13eeb42d8a5fd2d6c0698184a48502abb3b242fe218

See more details on using hashes here.

File details

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

File metadata

  • Download URL: roborock_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 196.5 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 58dc968dbf003a5da4c55610d556609588b8c972c9be0703a4fcadab7c8a8c95
MD5 0ebe452509d815ff5d0fa4328934bb0f
BLAKE2b-256 d7c79bc3f0e16203f8a8fba1d077fbe9d3657223c6e0c73f64acf12e5e59bfe6

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