17. A method comprising: identifying, by a computing device, that a first natural language user input, received at the computing device, comprises a request to perform a first dialog task; determining a first hierarchical order for arranging execution of a first plurality of task agents corresponding to the first dialog task; initiating execution, by the computing device and based on the first hierarchical order, of the first plurality of task agents; responsive to a determination that a second natural language user input, received at the computing device during execution of the first plurality of task agents, comprises a request to perform a second dialog task, determining, by the computing device, that the second dialog task is to be executed before execution of the first plurality of task agents is completed; determining a second hierarchical order for arranging execution of a second plurality of task agents corresponding to the second dialog task; initiating execution, by the computing device, prior to completion of the execution of the first plurality of task agents, and based on the second hierarchical order, of the second plurality of task agents; and preventing, based on a determination that execution of a task agent of the second plurality of task agents would cause a runtime error, execution of the task agent.
17. A method comprising: identifying, by a computing device, that a first natural language user input, received at the computing device, comprises a request to perform a first dialog task; determining a first hierarchical order for arranging execution of a first plurality of task agents corresponding to the first dialog task; initiating execution, by the computing device and based on the first hierarchical order, of the first plurality of task agents; responsive to a determination that a second natural language user input, received at the computing device during execution of the first plurality of task agents, comprises a request to perform a second dialog task, determining, by the computing device, that the second dialog task is to be executed before execution of the first plurality of task agents is completed; determining a second hierarchical order for arranging execution of a second plurality of task agents corresponding to the second dialog task; initiating execution, by the computing device, prior to completion of the execution of the first plurality of task agents, and based on the second hierarchical order, of the second plurality of task agents; and preventing, based on a determination that execution of a task agent of the second plurality of task agents would cause a runtime error, execution of the task agent. 20. The method of claim 17 , further comprising retrieving user inputs received during execution of the first plurality of task agents.