No version for distro humble showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro jazzy showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro kilted showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro lyrical showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro ardent showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro bouncy showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro crystal showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro eloquent showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro dashing showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro galactic showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro foxy showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro iron showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro lunar showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro jade showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro indigo showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro hydro showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro kinetic showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro melodic showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file

No version for distro noetic showing rolling. Known supported distros are highlighted in the buttons above.
Repo symbol

rosmon2 repository

rosmon2

ROS Distro
rolling

Repository Summary

Checkout URI https://github.com/GibsonHu/rosmon2.git
VCS Type git
VCS Version main
Last Updated 2026-07-24
Dev Status DEVELOPED
Released UNRELEASED
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Packages

Name Version
rosmon2 0.1.0

README

rosmon2

rosmon2 is a rosmon-style launcher and terminal process monitor for ROS 2. It runs launch files through the native ROS 2 launch engine, so existing Python, XML, and YAML launch files keep their normal arguments, substitutions, and includes.

rosmon2 is inspired by xqms/rosmon, but is an independent ROS 2 implementation and does not require ROS 1.

Screenshot

rosmon2 terminal process monitor

Installation and quick start

Add this repository to a ROS 2 workspace, install its dependencies, and build it with colcon:

mkdir -p ~/ros2_ws/src
cd ~/ros2_ws/src
git clone https://github.com/GibsonHu/rosmon2.git

cd ~/ros2_ws
source /opt/ros/${ROS_DISTRO}/setup.bash
rosdep install --from-paths src --ignore-src -r -y
colcon build --packages-select rosmon2
source install/setup.bash

Then launch the included talker/listener demo:

mon2 launch rosmon2 demo.launch.py

Launch arguments use the standard ROS 2 name:=value syntax:

mon2 launch rosmon2 demo.launch.py namespace:=demo

You can launch a file by package and filename, as above, or by path:

mon2 launch path/to/system.launch.py use_sim_time:=true

The rosmon2 executable is an alias for mon2, so this is equivalent:

rosmon2 launch rosmon2 demo.launch.py

Terminal controls

While a launch is running, the status bar shows each process and its state. Select a process with its displayed key (a-z, A-Z, or 0-9), then press:

Key Action
s Start the selected process
k Stop the selected process
m Mute the selected process
u Unmute the selected process
d Start the selected process under gdb

Global controls are available without selecting a process:

Key Action
F5 Toggle namespace mode
F6 Start all processes
F7 Stop all processes
F8 Toggle WARN-and-higher output
F9 Mute all process output
F10 Unmute all process output
/ Search nodes by full name
Ctrl-C Gracefully stop the complete launch

Node search matches substrings against full names, including namespaces. Type / to start searching, use Tab or the arrow keys to select a match, and press Enter to open its node actions. Press Escape to cancel the search.

Namespace mode groups processes by their top-level ROS namespace, including nodes in child namespaces. Each namespace displays [alive:dead] process counts. Its background is green when all processes are alive, yellow when only some are alive, and red when all are dead.

Select a namespace with its displayed key, then press:

Key Namespace action
s Start every process in the namespace
k Stop every process in the namespace
m Mute output from the namespace
u Unmute output from the namespace

File truncated at 100 lines see the full file