It plans hierarchically at different levels of abstraction, replans during execution, can generate parallel plans, so it can allow for multiple agent planning, posts constraints and reasons about resources within the plan, and interacts with users through a graphical interface. 