1. A method of integrating a new robot into a work environment, comprising receiving, by a controller, a signal indicating a presence of the new robot in the work environment; in response to the signal, establishing a negotiation channel between the controller and the new robot; negotiating, by the controller via the negotiation channel, with the new robot a set of robotic functions controllable by the controller; selecting a set of selected interface primitives by comparing function attributes of the set of robotic functions to interface attributes of interface primitives; generating a robot user interface, by the controller, from the set of selected interface primitives, wherein the robot user interface is configured to control the set of robotic functions; and configuring the controller to provide access to the robot user interface within the work environment.