Skip to main content

JaKtA: BDI Agents Made Simple

Build robust, reactive, and proactive systems with Kotlin.
Multi-paradigm and multi-platform by design.

What is JaKtA?

JaKtA is an agent-oriented programming framework for building robust intelligent agents using the Belief-Desire-Intention (BDI) cognitive architecture. It's implemented in Kotlin and aims to simplify the development of complex agent-based systems by leveraging the language's modern features and concise syntax. Thanks to Kotlin multi-paradigm design, JaKtA agents seamlessly interoperate with Object-Oriented and Functional Programming, making BDI agents approachable for a wide range of developers. Kotlin multiplatform support also opens the door for JaKtA agents to run on various platforms, from servers to mobile devices.

If you intend to use JaKtA for a research project, make sure to cite it.

JaKtA Logo

Paradigm Blending

Mix Functional and Object-Oriented programming within your MAS codebase

Multi Platform

Write once, run on JVM, JS, Native, Android, and iOS

Configurable

Control concurrency and knowledge representation models

Meet the JaKtA Team

We are a group of researchers from the University of Bologna, in the Department of Computer Science and Engineering (DISI), based in Cesena, Italy

Martina Baiardi

Martina Baiardi

Maintainer

Samuele Burattini

Samuele Burattini

Contributor

Danilo Pianini

Danilo Pianini

Contributor

Giovanni Ciatto

Giovanni Ciatto

Contributor

Discover more about what we and our colleagues do on the Pervasive Software Lab website!

About JaKtA

Please make sure to cite JaKtA if you use it in a research project!
If you're interested in research developments check out the other publications.

@article{DBLP:journals/sncs/BaiardiBCP24,
author = {Martina Baiardi and Samuele Burattini and Giovanni Ciatto and Danilo Pianini},
title = {Blending {BDI} Agents
with Object-Oriented and Functional Programming with JaKtA},
journal = {{SN} Comput. Sci.},
volume = {5},
number = {8},
pages = {1003},
year = {2024},
url = {https://doi.org/10.1007/s42979-024-03244-y},
doi = {10.1007/S42979-024-03244-Y},
timestamp = {Mon, 03 Mar 2025 22:23:02 +0100},
biburl = {https://dblp.org/rec/journals/sncs/BaiardiBCP24.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}

Join the JaKtA Community!

Be a part of our open-source journey. Collaborate, contribute, and connect with fellow MAS and BDI enthusiasts.

Join on GitHub
Background Photo: Jakta From Slogen by Berland, licensed under CC BY-SA 2.5, via Wikimedia Commons.