1. A computer-implemented method for enabling user-robot collaboration, comprising: providing a composition of a robot capability and one or more user interaction capabilities, wherein the robot capability models at least one functionality of a robot for performing a type of task action based on a set of one or more parameters; specializing the robot capability with an information kernel, wherein the information kernel encapsulates the set of one or more parameters; providing a robot capability element based on the robot capability and the information kernel, wherein the robot capability element is an instance of the robot capability; providing one or more interaction capability elements based on the one or more user interaction capabilities, wherein, the one or more interaction capability elements are instances of the one or ore user interaction capabilities; connecting the robot capability element, to the one or more interaction capability elements; providing, based on the one or more interaction capability elements, one or more UIs to acquire user input associated with the set of one or more parameters; and controlling, based on the user input and the information kernel, the at least one functionality of the robot via the robot capability element to perform a task action of the type of task action.