This paper describes research focused on the design of an agent-based virtual environment architecture that allows developers to create applications that can ease the burden of interfacing to complex systems. We are concerned with designing an architecture that supports applications that can integrate multiple, heterogeneous systems into one consistent user interface and to function as a collaborative tool so that concurrent users can share information, expertise, and resources. At the heart of our architecture is a Virtual Environment CORBA Facility. This facility provides an improved method of distribution and most importantly, explicitly supports the integration of information from external systems and provides a method for interacting with those systems by using the virtual environment as a user interface. What we present in this paper is a method from representing and distributing a virtual environment so that it can support advanced agent functionality. The nature of that functionality is ultimately left to the discretion of virtual environment developers. We have developed a granular, object-oriented representation for virtual environments that allows developers to incorporate agent technology into a web-based distributed virtual environment.