The JAM WEB interface provides a programming and execution interface for JAM nodes. The JAM WEB GUI can be used in any WEB browser and can communicate with other JAM nodes via HTTP communication.

The WEB interface consists of the following components:

  1. A JAM shell interpreter featuring remote execution of LuaOS commands.
  2. A JAM script editor featuring syntax highlighting and remote execution of scripts.
  3. Message logging windows for remote script execution
  4. Integrated help system
  5. A WEB clipboard using an external WEB clipboard server providing sharing of program code directly from the editor window


The agent behaviour is modelled according to an Activity-Transition Graph (ATG) model. The behaviour is composed of different activities representing sub-goals of the agent, and activities perform perception, computation, and inter-action with the environment (other agents) by using tuple spaces and signals. Using tuple spaces is a common approach for agent communication, as proposed by Chunlina (2002), much simpler than Bordini (2006) proposed with AgentSpeak. The transition to another activity depends on internal agent data (body variables). The ATG is entirely programmed in JavaScript (AgentJS, see Bosse (2016B) for details).

JAM agents are mobile, i.e., a snapshot of an agent process containing the entire data an control state including the behaviour program, can migrate to another JAM platform. JAM provides a broad variety of connectivity, available on a broad range of host platforms. JAM can be used as a simulation platform integrated in the SeJAM simulator. JAM is capable to execute thousands of agents. The SeJAM simulator is built on top of a JAM node adding simulation control and visualization, and can be included in a real-world closed-loop simulation with real devices.


JAM Laboratory
JAM shell embedded in an IDE that can be used with any WEB Browser, version 1.2.2