Manual
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
.pluginfile (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.
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++ 100or interactively with:
sudo update-alternatives --allWindows
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.