Skip to content
Skillpedia
Misc51k · #1922

opentrons-integration

Enables your agent to work with Opentrons lab robots. It helps write, review, and test code for liquid handling and robotic equipment setup.

What it does

This tool helps create and test programs (called 'protocols') for Opentrons lab robots. It ensures robots perform liquid handling tasks accurately.

When to use it

  • ✓When creating a new protocol for an Opentrons robot.
  • ✓When testing if a protocol works correctly before running it on the robot.
  • ✓When adapting a protocol for a different robot model (Flex or OT-2).

Example of what to ask your AI

“Create a protocol to transfer 100 microliters of liquid from reservoir A1 to well A1 of the plate, using a Flex robot.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/opentrons-integration/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/K-Dense-AI/scientific-agent-skills/blob/main/skills/opentrons-integration/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

You provide details about the robot, labware, and liquid. The tool then generates the necessary Python code and allows simulation of the run to check for errors.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add K-Dense-AI/scientific-agent-skills --skill opentrons-integration

Or download just the file:

curl -L https://raw.githubusercontent.com/K-Dense-AI/scientific-agent-skills/main/skills/opentrons-integration/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Opentrons Integration

Overview

Create production-minded Python Protocol API v2 protocols for Opentrons Flex and OT-2. This skill covers protocol structure, hardware and deck configuration, liquid handling, runtime customization, module control, simulation, and safe deployment.

The verified baseline as of 2026-10-01 is:

  • opentrons==10.0.0 for reproducible Flex simulation.
  • opentrons==9.0.0 for local OT-2 API 2.28 compatibility simulation.
  • Flex supports API levels 2.15 through 2.30 on current software.
  • OT-2 supports API levels 2.0 through 2.28 on current software.
  • API 2.29 and later are Flex-only at this baseline. Keep OT-2 at 2.28 or lower.
  • Bundled Flex templates retain API 2.29 because step grouping is their newest required feature. API 2.30 fixes start-only meniscus aspiration.
  • The 10.0.0 library reports a local maximum of 2.31, ahead of the documented robot maximum 2.30. Do not infer robot support from that constant.

Read references/sources.md for the upstream documentation used for this snapshot. Recheck the official versioning page before targeting newer robot software.

Safety Boundary

Opentrons protocols control physical equipment. Never treat successful Python syntax or local simulation as permission to run on a robot.

Before live execution:

  1. Simulate locally with the same pinned opentrons version used for authoring.
  2. Import the protocol into the correct Opentrons App and require successful analysis.
  3. Verify robot model, software, pipettes, mounts, modules, adapters, labware definitions, deck fixtures, tip count, source volumes, dead volumes, and destination capacity.
  4. Review the run preview and deck map with the operator.
  5. Perform a slow dry run with nonhazardous liquid when geometry, custom labware, partial tip pickup, or gripper moves are new.
  6. Keep the emergency stop accessible and follow site-specific biosafety, chemical-safety, and contamination-control procedures.

Simulation cannot verify physical calibration, liquid properties, meniscus behavior, labware manufacturing tolerances, cap or seal removal, tubing, or all possible collisions.

Choose the Right Interface

Use this skill for Python files imported into the Opentrons App and run through the Protocol API.

  • Use Protocol Designer for supported no-code workflows.
  • Use PyLabRobot for a hardware-agnostic workflow spanning vendors.
  • Treat the robot's HTTP API as a separate integration surface. If direct HTTP control is explicitly required, use the OpenAPI document served by the target robot and do not infer endpoints from Protocol API methods.

Required Intake

Do not write final protocol code until these facts are known:

  • Robot: Flex or OT-2, plus installed robot software.
  • Pipette model, volume range, channel count, and mount.
  • Modules and generations; Flex Gripper or Stacker availability.
  • Exact labware API load names and custom definition files, if any.
  • Deck fixtures: Flex trash bin, waste chute, staging slots, or Stackers.
  • Source volumes, destination volumes, dead volume, mixing needs, and liquid characteristics.
  • Tip policy: contamination boundaries, reuse policy, filters, partial pickup, and total tips.
  • Operator interventions, incubation timing, runtime parameters, and output files.
  • Acceptance criteria: tolerated volume error, required controls, and dry-run plan.

If any physical configuration is uncertain, produce a parameterized draft and an explicit assumptions list rather than guessing.

Install and Simulate

Flex:

uv run --no-project --isolated --python 3.12 --with "opentrons==10.0.0" opentrons_simulate protocol.py

OT-2 API 2.28:

uv run --no-project --isolated --python 3.12 --with "opentrons==9.0.0" opentrons_simulate protocol.py

The 10.0.0 package rejects OT-2 protocols after the Flex/OT-2 release-line split. Always complete OT-2 analysis in the current OT-2 App.

For a dedicated Flex environment:

uv venv --python 3.12 .venv-opentrons
uv pip install --python .venv-opentrons/bin/python -r skills/opentrons-integration/requirements-flex.txt
.venv-opentrons/bin/opentrons_simulate protocol.py

Use requirements-ot2.txt instead for an OT-2 compatibility environment. On Windows, invoke the executable from .venv-opentrons\Scripts\opentrons_simulate.exe. Local simulation is for Python protocols; import Protocol Designer JSON files into the appropriate Opentrons App instead.

…

FAQ

What are 'protocols'?

Protocols are the step-by-step instructions that tell lab robots what to do, like moving liquids between containers.

What is the difference between Flex and OT-2?

Flex and OT-2 are two different models of Opentrons robots, each with its own specifications and software versions that need to be considered.

What is 'simulation'?

Simulation is like a virtual test run. The tool executes the protocol on a computer to see if it works as expected, without using the actual robot.

Details

Original description by the author

Authors, reviews, migrates, simulates, and troubleshoots official Opentrons Python Protocol API v2 protocols for Flex and OT-2 robots. Use for robot-specific liquid handling, deck and labware setup, pipettes, modules, runtime parameters, liquid classes, and Opentrons App analysis. Use pylabrobot instead when one workflow must support multiple robot vendors.

repo: K-Dense-AI/scientific-agent-skills

Popularity

GitHub stars
51k
Ranking position
#1922
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills