The paper introduces tATAmI-2, an agent development framework that allows the creation of modular agents and permits a great deal of flexibility with respect to the manner in which various functionality, such as agent communication, is implemented. The framework strikes a good balance between flexibility and ease of use, by offering several pre-implemented agent components and communication platforms. The architecture of the framework relies on three elements: the ability to simultaneously start multiple platforms for agent management and communication; the ability to load agents in a number of manners; and, in the case of composite agents, the ability to customize the component set of an agent, including the possibility to add application-specific components, or to use components recommended by the platform for certain functionalities (such as communication).