CyberAgents FTP Software, Inc. Kevin Clougherty David Gibbons Ray Burns Abstract: Mobile agents are programs that travel among hosts on a network and perform pre- or dynamically defined tasks on visited hosts. Mobile agents are useful only when users and platforms are protected from malicious or accidental damage by adequate security services. Important applications of mobile agents include intranet management, database operations and electronic commerce. CyberAgents are a general-purpose class of mobile agents developed by the Intelligent Agent Group at FTP Software, Inc. as a commercial product. The CyberAgent product line includes a Software Development Kit (SDK) that provides an integrated facility for development, deployment and management of CyberAgents. Other components of the product line include a suite of CyberAgents to perform some of the most basic tasks for which CyberAgents are suited. A CyberAgent is a mobile, autonomous program written in the Java programming language that includes calls to CyberAgent Application Programming Interface (API) Java classes. CyberAgent APIs transform an arbitrary Java application into a platform-independent CyberAgent that can travel from computer to computer within TCP/IP networks under the sender's control but subject to security restrictions. The "CyberAgents" term refers both to FTP's mobile agents and the mobile agent system (infrastructure) that supports their mobility and provides a secure and controllable execution environment. CyberAgents is a secure yet flexible mobile agent system that provides for mobile agent development, deployment, and management. CyberAgents feature a secure agent execution environment, agent activity control, and travel management, secure agent transportation, and limited inter-agent communication and collaboration. The system provides a user interface that allows users to register and launch agents, view agents execution results and status reports, set security options and manage security information. Applications using CyberAgent are under development for network management tasks such as automatic software update, virus checking, and platform inventory information collection as well as an IP conflict resolution application. Efforts to improve and enhance the system are currently centered on alternative user-interfaces, system performance and inter-agent communications. We understand that the current product capabilities address only the most basic of mobile agent potential capabilities; however, the current product is a robust basis from which to expand and encompass much of the promise of mobile agents while maintaining adequate security levels. Cross-platform agent communications are planned and the incorporation of an agent communication language such as KQML is under consideration. We are also interested in inter-operation between CyberAgents and other mobile agent systems such as Telescript-based systems and Agent-Tcl, possibly through a common agent platform or a standard agent transport protocol.