What makes teamwork tick? Cooperation matters, in daily life and in complex applications. After all, many tasks need more than a single agent to be effectively performed. Therefore, teamwork rules! Teams are social groups of agents dedicated to the fulfilment of particular persistent tasks. In modern multiagent environments, heterogeneous teams often consist of autonomous software agents, various types of robots and human beings. Teamwork in Multi-agent Systems: A Formal Approach explains teamwork rules in terms of agents' attitudes and their complex interplay. It provides the first comprehensive logical theory, TeamLog, underpinning teamwork in dynamic environments. The authors justify design choices by showing TeamLog in action. The book guides the reader through a fascinating discussion of issues essential for teamwork to be successful: What is teamwork, and how can a logical view of it help in designing teams of agents? What is the role of agents' awareness in an uncertain, dynamic environment? How does collective intention constitute a team? How are plan-based collective commitments related to team action? How can one tune collective commitment to the team's organizational structure and its communication abilities? What are the methodological underpinnings for teamwork in a dynamic environment? How does a team and its attitudes adjust to changing circumstances? How do collective intentions and collective commitments arise through dialogue? What is the computational complexity of TeamLog? How can one make TeamLog efficient in applications? This book is an invaluable resource for researchers and graduate students in computer science and artificial intelligence as well as for developers of multi-agent systems. Students and researchers in organizational science, in particular those investigating teamwork, will also find this book insightful. Since the authors made an effort to introduce TeamLog as a conceptual model of teamwork, understanding most of the book requires solely a basic logical background.