This paper describes the AAA architecture for intelligent agents reasoning about, and acting in, a changing environment. The architecture is based on a simple control loop. Both the description of the domain's behavior and the reasoning components are written in Answer Set Prolog. The architecture is designed to make the agents capable of planning and of detecting, interpreting, and recovering from, unexpected observations. Overall, the design and the knowledge bases are elaboration tolerant. Another distinguishing feature of the architecture is that the same domain description is shared by all the reasoning components.