Registry / communication / python-roborock

python-roborock

JSON →
library5.9.0pypypiunverified

An async Python package to control Roborock vacuums and mops. Version 5.9.0 supports Python >=3.11 and <4. Released under GPL-3.0. Active development with frequent releases.

communication
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

from roborock import RoborockClient

Authenticate with Roborock cloud credentials and list all devices.

import asyncio from roborock import RoborockClient async def main(): client = RoborockClient(username="your_email", password="your_password") devices = await client.get_devices() for device in devices: print(f"Device: {device.name}, IP: {device.ip}") await client.close() asyncio.run(main())
Debug
Known footguns
breakingIn v5, the library switched to protobuf 6.x required runtime. Ensure you have protobuf>=6.0.0 installed.
breakingPython 3.11 minimum; Python 3.10 and below are no longer supported.
gotchaAlways call `await client.close()` after finishing to avoid hanging connections.
gotchaSome device status fields are only available when a specific schema code is active (e.g., dock state). Accessing missing fields may raise KeyError or return None.
Upgrade
Version history

Breaking-change detection hasn't run for this library yet.

Audit
Security & dependencies

CVE tracking and dependency tree are planned for a later release.

Agent activity
0 hits · last 30 days

No traffic data recorded yet.

Resources