pylabrobot
Vendor-agnostic lab automation framework. Use when controlling multiple equipment types (Hamilton, Tecan, Opentrons, plate readers, pumps) or needing unified programming across different vendors. Best for complex workflows, multi-vendor setups, simulation. For Opentrons-only protocols with official API, opentrons-integration may be simpler.
Author
Category
Development ToolsInstall
Hot:18
Download and extract to your skills directory
Copy command and send to AI Agent for auto-install:
Download and install this skill https://openskills.cc/api/download?slug=k-dense-ai-skills-pylabrobot&locale=en&source=copy
PyLabRobot — a Hardware-Independent Laboratory Automation Python Framework
Skill Overview
PyLabRobot is a pure Python laboratory automation software development kit (SDK). It controls a wide variety of lab equipment—liquid handling robots, plate readers, pumps, shaking incubators, centrifuges, and more—through a unified interface, and supports cross-platform execution (Windows, macOS, Linux).
Use Cases
1. Unified Control of Laboratory Equipment from Multiple Vendors
When you need to integrate lab devices from multiple brands into a single system, PyLabRobot provides a hardware-agnostic abstraction layer. Whether it’s Hamilton STAR/STARlet, Opentrons OT-2, or Tecan EVO, you can program using the same Python API without learning different interfaces for each manufacturer.
2. Automation of Complex Liquid Handling Workflows
Ideal for developing laboratory protocols that require precise control of pipetting, sample preparation, dilutions, and plate operations. It supports advanced techniques such as multi-channel pipetting, continuous serial dilutions, and plate replication. It also provides automatic pipette head tracking and liquid volume tracking to ensure experimental repeatability.
3. Protocol Simulation and Verification
Without physical hardware, you can use the ChatterboxBackend for protocol testing and validation. With the built-in browser visualization tools, you can observe the instrument status, pipette positions, and liquid volumes in real time, and detect and fix protocol issues before running experiments.
Core Features
Unified Device Control Interface
Provides a cross-vendor unified Python API supporting devices such as liquid handling robots, plate readers, balances, heating shakers, incubators, centrifuges, and pumps. Swapping equipment only requires changing the backend—no need to rewrite protocol code—greatly improving code reuse.
Laboratory Resource Management System
Hierarchical resource management supports various consumable types including culture plates, pipette head racks, reservoirs, and tubing. It enables precise management of deck layout, resource status, and liquid volumes, and supports layout and state serialization in JSON format, making it easy to share and reproduce protocols.
Visualization and Simulation Capabilities
Built-in browser visualization tools provide real-time 3D rendering showing deck status, pipette head positions, and liquid volumes. It supports running protocols in simulation mode. Combined with a graphical deck editor, you can design layouts intuitively and verify protocol logic.
Common Questions
Which laboratory equipment brands does PyLabRobot support?
PyLabRobot uses a backend abstraction design. It currently supports Hamilton STAR/STARlet (fully supported), Opentrons OT-2, Tecan EVO, and various analytical devices such as the BMG CLARIOstar plate reader, Mettler Toledo balances, Hamilton and Inheco heating shakers, multiple incubator types, and centrifuges. For the exact supported list, refer to the official documentation.
How can I test laboratory protocols without physical equipment?
Use PyLabRobot’s ChatterboxBackend to fully run protocols without hardware. Together with the browser visualization tools, you can observe pipette movements, liquid transfers, and volume changes in real time. This lets you verify protocol correctness before deploying to real hardware, saving time and consumable costs.
How does PyLabRobot differ from the official Opentrons API?
PyLabRobot is a hardware-agnostic framework that supports equipment from multiple vendors, while the Opentrons API is only for Opentrons robots. If your lab only uses Opentrons devices and you want official support, the Opentrons API may be simpler. However, if you need to integrate devices from multiple brands or switch between different manufacturers, PyLabRobot’s unified interface and cross-platform capabilities offer major advantages.