This paper describes an approach in improving the usability of computer-aided design (CAD) applications by adding an intelligent agent that assists the user in his/her interaction with the system. To implement the agent, we use ConGolog [GLL97, LLR99] -- a very high-level programming language for developing knowledge-based agents that are embedded in complex environments. ConGolog supports the specification of a task-level model of a dynamic environment, the description of complex behaviors, and the synthesis of new plans at run-time. A prototype intelligent agent is being developed to work with an existing 3D CAD system [GS99]. This agent is intended to help the user in designing an office layout that satisfies his goals.