Conventional computer numerical controllers used for machine tools are not amenable to the adaptation to dynamic changes in operations and environments due to the proprietary closed architecture. This paper presents the design and development of a distributed open architecture controller for machine tools, which exhibits openness, modularity, and other desirable characteristics. With application of the object-oriented methodology, fundamental agents related to machine tool systems are identified and distributed system architecture is achieved. In addition to the overall system design, a main environment of the open architecture controller is developed to integrate existing function modules and to provide an application developing platform. Process monitoring and control schemes developed within this system, as a case study, are presented.