![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |
System Dependencies
Dependant Packages
Launch files
Messages
Services
Plugins
Recent questions tagged fkie_mas_gui at Robotics Stack Exchange
![]() |
fkie_mas_gui package from fkie_multi_agent_suite repofkie_mas_daemon fkie_mas_discovery fkie_mas_gui fkie_mas_meta fkie_mas_msgs fkie_mas_pylib fkie_mas_sync |
ROS Distro
|
Package Summary
Version | 4.6.15 |
License | MIT |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/fkie/fkie-multi-agent-suite.git |
VCS Type | git |
VCS Version | master |
Last Updated | 2025-09-30 |
Dev Status | UNMAINTAINED |
Released | UNRELEASED |
Contributing |
Help Wanted (-)
Good First Issues (-) Pull Requests to Review (-) |
Package Description
Additional Links
Maintainers
- Alexander Tiderko
- Carlos Tampier
Authors
- Francisco Garcia
- Carlos Tampier
- Alexander Tiderko
MAS GUI
New Node Manager for ROS (1/2).
The MAS GUI is composed by two main parts: A Back-End component (daemon with WebSocket), and a Front-End Component (powered by Electron and ReactJS).
Install
We need to first install dependencies and run both Front and Back-End components:
Install dependencies
You need a running TTYD to show screen or log output of the nodes.
sudo snap install ttyd --classic
Update nodejs to v20
The code have been tested with NodeJS v20.15.0
:
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
Server Side (Back-End)
cd ros_workspace/src
git clone https://github.com/fkie/fkie-multi-agent-suite.git fkie-multi-agent-suite
rosdep update
rosdep install -i --as-root pip:false --reinstall --from-paths fkie-multi-agent-suite
Then build all packages:
catkin build fkie_mas_meta
or
colcon build --packages-select fkie_mas_meta
Client Side (Front-End)
Only for developer mode: Download and install JavaScript module dependencies:
cd fkie_mas_gui
npm install
npm run build
Usage
Run the app in developer mode:
npm run dev:ns
The app will start automatically the local daemon and master discovery nodes.
Start only as node (without GUI)
Starts a server on default port 6274. You can change the port in electron.vite.config.ts.
npm run server:ns
Then open in browser http://localhost:6274
Websocket communication
Action | Message Format | Description |
---|---|---|
Message | {“uri”: str, message: JSONObject } | Publish messages to given topic (URI) |
Subscribe to an URI | {“sub”, [str]} | Receive all messages published to this URI |
Unsubscribe from an URI | {“unsub”, [str]} | Stop receiving messages send to this URI |
Remote procedure call (RPC) | {“uri”: str, “id”: number, “params”: []} | id is unique request. params is a is list with parameters for the remote procedure call. |
Reply for successful RPC | {“id”: number, “result”: JSONObject } | id is unique request id. |
Reply with error while RPC | {“id”: number, “error”: str } | id is unique request id. |
Supported interface URIs
Interface URI | Type | Function | Description |
---|---|---|---|
ros.daemon.ready | PUB | => {'status': bool, "timestamp": float} |
Sent by the daemon at an interval |
ros.discovery.ready | PUB | => {'status': bool} |
|
ros.daemon.get_version | RPC | () => DaemonVersion |
see fkie_mas_pylib/interface/runtime_interface/DaemonVersion |
ros.file.get | RPC | (path: str) => FileItem |
see fkie_mas_pylib/interface/file_interface/FileItem |
ros.file.save | RPC | (file: FileItem) => number |
write file content to providers file system. Return count of written bytes. |
ros.nodes.get_list | RPC | () => RosNode[] |
see fkie_mas_pylib/interface/runtime_interface/RosNode |
ros.nodes.get_services | RPC | () => RosService[] |
see fkie_mas_pylib/interface/runtime_interface/RosService |
File truncated at 100 lines see the full file
Changelog
4.6.15 - 30.09.2025
Fixed crash of the daemon on exception while load_launch Fixed updating the package list when a package is selected
4.6.14 - 25.09.2025
Disabled pop-outs for headless mode Changed location of the info box in the packages tab Fixed join operator for headless mode Fixed “Missing rate limiting” reported by CodeQL
4.6.13 - 23.09.2025
Fixed open connect dialog if daemon is not running and ros_domain_id is not set
4.6.12 - 23.09.2025
Fixed load included link decorations Fixed open date context menu
4.6.11 - 23.09.2025
Added button to show daemon log for ros2 if start was failed Fixed show_ros_log parameter (for ROS2 daemon) Fix to avoid showing multiple local provider Ensure that no two items with the same ID are inserted into the launch history Do not use the RMW_IMPLEMENTATION by default from environment
4.6.10 - 22.09.2025
Fixed update debian packages with external terminal
4.6.9 - 22.09.2025
Added host command line option Added commandline parameters for headless mode Added headless server to debian package Added warning if multiple nodes with same name are defined in a launch file Add info dialog if ros was not sourced
4.6.8 - 18.09.2025
Added start in headless mode Added echo for deb build script Fixed icon of installed mas gui Updated parameter panel design Fixed double click handling in nodes tab the sudo password is requested at the beginning of the installation.
4.6.7 - 16.09.2025
Fixed icon for lifecycle of composable node Fixed update lifecycle state of composable nodes Improved update ros2 state Fixed start node with multiple launch files Fixed rendering of the log tab
4.6.6 - 16.09.2025
Fixed update screens for ros1 nodes Fixed update group state in nodes tab Fixed group state with groups only Fixed render error with ros1 nodes Fixed format xml
4.6.5 - 15.09.2025
Fixed show capability groups for ros1 Fixed load launch files with arguments inside eval block Fixed reload topic and service list Show launch file icons only, if more then one or zero are loaded Added option to differ launch with default and zero domain id
4.6.4 - 10.09.2025
Fixed force refresh for nodes Update MAS even without TTYD running. Fixed wait option in install debian script
4.6.3 - 10.09.2025
Fixed determination of the port based on the ROS domain ID for ROS1
4.6.2 - 09.09.2025
Fixed location info shown in gui (discovery node for ROS1) Added launch file indicator for nodes Fixed a selection of launch-file when multiple are available Fixed start node witch multiple launch files (daemon node for ROS2) Changed group of some parameter settings
4.6.1 - 05.09.2025
added rosout_to_diag script to daemon fixed losing focus in the editor after saving reduced rate of file modification events
File truncated at 100 lines see the full file
Package Dependencies
Deps | Name |
---|---|
catkin | |
ament_cmake |