agent: use AgentReconciler model to drive Agent