Manual

Author
Affiliation

Paolo Bosetti

University of Trento

Published

July 7, 2026

Modified

July 27, 2026

Contents

MADS commands

  • mads — the command dispatcher and its built-in subcommands
  • broker — the ZeroMQ proxy and settings service at the hub of a MADS network
  • plugin — scaffold a new plugin, or migrate an existing one to a newer protocol
  • source, filter, sink — the three generic plugin-loader agents
  • logger — persists every topic to MongoDB and/or a file
  • feedback, perf_assess — a generic subscriber and publisher for testing, plus the default plugins
  • inspect_plugin — diagnose a compiled .plugin file (protocol version, ABI mismatches)
  • federate — relay selected topics between two independent MADS networks
  • fsm — generate a finite-state-machine agent skeleton from a Graphviz description
  • package — list, inspect, and install pre-compiled community packages
  • dealer, worker — round-robin load balancing across multiple worker processes
  • rsource, rfilter, rsink — Rust-plugin loaders (not on Windows)

MADS concepts

How to start

Download MADS latest version from https://git.new/MADS and follow the installation guide. Depending on your OS, you will need a developer toolchain to build plugins and custom agents.

The MADSCode Visual Studio Code extension provides useful tools for MADS development.

Linux

You need clang compiler and cmake build system installed, plus git and CMake. Visual Studio Code is the suggested development platform.

Warning

GCC compiler is not officially supported. Even if you install clang on linux, some distributions may still use gcc as the default compiler. In that case, you need to set the environment variable CC=clang before running cmake to build a plugin or custom agent or — preferably — use the update-alternatives command to set clang as the default compiler:

sudo update-alternatives --install /usr/bin/cc cc /usr/bin/clang 100
sudo update-alternatives --install /usr/bin/c++ c++ /usr/bin/clang++ 100

or interactively with:

sudo update-alternatives --all

Windows

You need Visual Studio 2022 (Community Edition is fine) or later, with the C++ development tools installed, plus CMake. Visual Studio Code is the suggested development platform.

macOS

You need Xcode and the command line tools installed, plus git and CMake. Visual Studio Code is the suggested development platform.

Back to top