1. A method performed by a system comprising a processor, the method comprising: receiving a request from a robotic device for access to a data library to receive a data element stored in the data library, the request including information associated with a task of the robotic device and the data library storing data elements that include information configured for use by a given robotic device and that are associated with instructions executable by the given robotic device to perform a heuristic for interaction with an environment the data elements being further associated with respective metadata that is indicative of a requirement of the given robotic device for using a given data element to perform at least a portion of an associated heuristic for interaction with the environment, and the metadata indicating the requirement for the robotic device to include or have access to one or more of a sensor or a mechanical actuator required to perform a given task via execution of the given data element; determining instructions of data elements that are executable to perform at least a portion of the task of the robotic device; determining data elements from among the data elements stored in the data library that include the instructions executable by the robotic device to perform the portion of the task of the robotic device; determining which of the determined data elements are associated with metadata indicating one or more requirements for the robotic device that match capabilities of the robotic device so as to determine one or more matching data elements; and causing one of the matching data elements to be conveyed to the robotic device.