Los Agentes de Software poseen un conjunto de características que deben tenerse en cuenta para su desarrollo:
- Autonomía. Permite que los agentes puedan operar sin la intervención directa de nadie, ya sea de humanos o de software.
- Sociabilidad o Cooperación. Permite a los agentes interactuar con otros agentes y/o con humanos. En la cooperación entre agentes, intercambian conocimientos, experiencias, opiniones y planes.
- Reacción. Los agentes están inmerso en un determinado entorno, del que perciben estímulos y ante los que deben reaccionar en un tiempo preestablecido.
- Iniciativa. Los agentes no sólo debe reaccionar a los cambios que se produzcan en su entorno, sino que deben poseer un carácter emprendedor y tomar la iniciativa para actuar guiados por los objetivos que deben satisfacer.
- Movilidad. Es la principal característica de los agentes que se implementan en Internet. La movilidad proporciona a los agentes la cualidad de transportarse, pueden cambiar de localización de un entorno a otro a través de una red. El cambio de ubicación de los agentes no altera su conocimiento adquirido.
- Continuidad temporal. Es otra de las características que diferencia a los agentes con respecto a los simples ejecutores de acciones, ya que continúan ejecutándose mientras dura su ciclo de vida. Una vez creados, los agentes pasan a un estado de espera hasta que un evento provocado por otro agente, por un usuario o cualquier cambio producido en el entorno, los haga despertar para realizar alguna acción.
- Adaptabilidad. Esta propiedad es consecuencia de la característica reacción antes mencionada, ya que los cambios producidos en el entorno provocan que los agentes se estén continuamente adaptando a dichos cambios para poder así llevar a cabo sus objetivos eficientemente.
- Personalizables. Los agentes deben permitir realizar cualquier trabajo a los usuarios de forma eficiente. Los usuarios realizan distintas tareas, y en caso de realizar similares tareas pueden diferir en algún paso. Por esto los agentes deben configurar las operaciones y la manera en que llevarán a cabo dichas operaciones, adaptándose a las necesidades y preferencia de cada usuario.
- Veracidad. Proporciona la certeza de que los agentes no comunican información falsa intencionalmente.
- Benevolencia. Esta característica de los agentes asegura que estén dispuestos a ayudar a otros agentes siempre y cuando esto no genere conflicto con sus propios objetivos.