A program which helps a user carry out some computer-related task. For example, an agent might be used to remind the user of a network that he or she should be sending a message to another user by a certain time. There are a number of categories of agents. reactive agents just respond to stimuli. A simple example of this type of agent is one that initiates a sound such as a beep when an email arrives. A deliberative agent is one that uses some knowledge of an application area such as airline ticket booking to aid the user in carrying out a task such as booking an airline ticket or scheduling a meeting. This type of agent usually employs artificial intelligence technology. collaborative agents are collections of agents which work together. For example, an agent which carries out the process of planning the diary of a user may collaborate with an agent used for booking airline tickets in order to achieve an optimal spread of a user's time for a journey. A mobile agent is a program which moves from one computer to another carrying out some task for a user. For example, such an agent, used by a computer manufacturer, might visit the sites of components suppliers, find out how many components are in stock, and then return to its home computer and order an optimal mix of components to minimize some function of delivery time and price. Agents are very similar in concept to bots; indeed the two communities overlap considerably, and there is no consistent definition of what is a bot and what is an agent.