Large-scale distributed environments, such as the Internet, achieve advantages in exploiting software agents for applications, thanks to their autonomy in carrying out tasks. In such a scenario, interactions among agents are an issue that must be faced in an appropriate way. In the BRAIN project, interactions among agents are frutfully modelled on the basis of roles, which define a set of capabilities and an expected behaviour. This approach achieves several advantages. First, it is an agent-oriented approach since it respects all features of agency. Then, it enables separation of concerns between the algorithmic issues and the interaction issues. Finally, roles promote the reuse of solutions and experiences in different applications. In this paper we propose an interaction infrastructure, called Rolesystem, which relies on the above mentioned rolebased interaction model. This system allows agents to assume roles and interact accordingly. An application example and the comparison with...