Autonomy
Adds autonomy to an AgentPlatform, with the ability to choose goals and agents dynamically, given user input. Then calls the AgentPlatform to execute.
Types
Functions
Choose a goal based on the user input and try to achieve it. Open execution model. May bring in actions and conditions from multiple agents to help achieve the goal. Doesn't need reified types because we don't know the type yet.
Choose an agent based on the user input and run it. Closed execution model: Will never mix actions and goals from different agents. Doesn't need reified types because we don't know the type yet.
Open mode. Create an agent to accomplish this goal from the given user input
Indicate which goal we'd use for this intent, and what agent we'd create. Dry run capability available externally.