Programany robot.

One tool for every robot you’ll ever program.

Describe the job once and it arrives in the controller’s own language, validated and diffed for review. Program it, connect it and commission it in one place. Deploy nothing unsigned.

Everything it takes to program a robot cell.

Robot.io — Cell 04ABB IRC5 · RAPID 6.10 · UR5e ATTACHED
pick_place.modcell04.twinio.mapflow.json● VALIDATED · NO ERRORS
>
8! Cell 04 · pick and place · reviewed by j.marek
9PROC pick()
10 MoveJ pHome, v200, fine, tGrip;
11 MoveL Offs(pPick,0,0,60), v200, z10;
12 MoveL pPick, v50, fine, tGrip;
13 SetDO doGrip, 1;
14 WaitTime 0.3;
15 MoveL pDrop, v200, fine, tGrip;
16ENDPROC
AxisdoGrip is wired to output 5 in this cell; line 13 writes to 3. Fix both lines
LIVE I/O
di_fence1
di_estop1
do_grip0
ai_press4.1
j6_deg−12.4
TEACH POINTS
pHomecaptured
pPickcaptured
pDropjogging…
CONNECTED · INTERLOCKS CLOSED · DIFF +18 / −4◆ DEPLOY IS RESTRICTED
Editor
Write in your controller's own language.
Validation
Catches mistakes before they reach the robot.
Teach points
Capture real poses from the robot and reuse them.
Live I/O
See the cell's signals as they change.
Digital twin
See the cell in 3D before you commit.
Flow builder
Lay out the sequence instead of hand-writing it.
Variable inspector
See what every value in the program is doing.
Program templates
Working starting points, ready to adapt.
Diff & deploy
Read the change, hold the gate, then ship.
Live connection
Talks to the controller directly — proven on real hardware.
Cell discovery
Finds the robots on your network for you.
Multi-robot cells
Program a whole cell, not one arm.

Axis proposes.

Axis is an agentic assistant — not an autopilot. It reads your cell, proposes the work, and explains itself — then hands you the gate. It never moves hardware on its own.

Say it once. It compiles to the controller you own.

● SYNTAX VALIDATED
Plain English
✦ AXIS PROPOSED
reach
Both targets inside the UR5e envelope.
i/o
doGrip → digital_out[0], readback confirmed.
retry
One re-approach on grip-fail, then hold.
pick_place · RAPID+18 / −4
MODULE pick_place
  PROC main()
    MoveJ pPick, v1000, z50, tool0;
    SetDO doGrip, 1;
    WaitTime 0.3;
    MoveL pPlace, v500, fine, tool0;
    Reset doGrip;
  ENDPROC
ENDMODULE
Cell 04 · UR5e
interlock.fence● CLOSED
estop.chain● OK
risk.class◆ RESTRICTED
audit — awaiting human signature
1.2s · release early to reset
chatplanvalidateexplain
✦ AXIS NEVER SIGNS

One language between AI and controller.

Robot Context Protocol gives any model a typed, permissioned vocabulary for a real cell — and gives every call a risk class before it reaches hardware. The Python SDK is Apache-2.0 and installable today; the specification is available on request.

● SAFERead a joint angle, validate a program, diff a file. No gate.
▲ GUARDEDSet an output, change tool data. Human confirmation.
◆ RESTRICTEDStart a program, jog, move to a pose. Confirmation and a safety-interlock check — verified twice, because a cell can change in between.
⬢ PROHIBITEDOverride a safety configuration, disable an e-stop. The protocol refuses. There is no flag.

None of this makes a robot safe — the physical safety system does that, and nothing in software replaces it. It makes sure software never becomes the weakest link in a chain that already has real guarantees in it. Every gated call is written to an append-only, hash-chained audit trail.

Request access →Usually same day. No NDA.
$ pip install rcp-sdk
ResourcesSpec v1.0
Shipped
robot://
controller://
vision://
gripper://
learning://
rcp://cell/state
Reference adapters
sensor://
conveyor://
plc://
safety://

The published v1.0 spec covers robot:// — nine resource types, addressable across thirteen controller families, two of them validated on physical robots. The device namespaces run in the host today and land in the spec with v2.

Join the waitlist.