Skip to content

dendros config

dendros config opens a full-screen interactive TUI for managing global defaults.

dendros config

Settings are written to ~/.config/dendROS/defaults.yaml and apply across all packages as a baseline. Per-package dendROS.yaml defaults: sections override them.

Settings are grouped into tabs — Output, CLI, Unmatched, System, Diagnostics, Param Alerts, Init — matching the section headers below.


Interface

Note

Screenshot below predates the tabbed layout — pending a refresh.

dendros config

dendros config


Keyboard reference

Key Action
Tab / L Next tab
Shift+Tab / H Previous tab (Shift+Tab isn't sent by every terminal — use h if it doesn't respond)
19 Jump directly to tab N
Up / K Move to previous field (within the current tab)
Down / J Move to next field (within the current tab)
Right / Space / Enter Cycle option forward
Left Cycle option backward
E Open inline text editor for the current field
S Save to ~/.config/dendROS/defaults.yaml
Q / Esc Quit (prompts if there are unsaved changes)

Settings reference

Output (launch / run)

Setting Values Description
Color mode tag_only / full_line tag_only colors prefix + badge, preserving severity colors. full_line colors the entire line.
Show tag (launch/run) on / off Show [TAG] badges in ros2 launch and ros2 run output. Overridable per-group with show_tag: false.
Tag position after / before Badge position: after[node-N] [TAG] … · before[TAG] [node-N] ….
Tag style normal / inverted normal = colored text on default background. inverted = colored background with empty letters (like crash alert banners). Overridable per-group with tag_style:.
Colorize launch msgs on / off When off, [INFO] [node-N]: process started … lines pass through unchanged.
Show timestamp on / off Show the [timestamp] bracket in node log lines ([node-N] [INFO] [timestamp] [logger]: msg). Off strips it.
Show logger name on / off Show the [logger_name] bracket — the ROS graph name registered via get_logger(), which can differ from the [node-N] launch process name. Off strips it.

CLI commands

Setting Values Description
Show tag (CLI) on / off Show [TAG] badges in ros2 node list, ros2 node info, ros2 service list, ros2 action list, and ros2 topic list.
Show default services on / off When off, standard ROS 2 system services (set_parameters, get_parameters, get_loggers, …) are hidden from ros2 service list output entirely. When on, they appear dimmed.
Topic list sort default / group default preserves ros2's alphabetical order. group places system topics first, then groups topics by their publisher's color group (groups in first-occurrence order, alphabetical within each group), with unmatched topics last. See ros2 topic list.

Unmatched nodes

Setting Values Description
Unmatched color color / null Color for nodes not in any group. null = pass through.
Unmatched tag string / null Badge for unmatched nodes (e.g. ?[?]). Requires unmatched_color.
Dim unmatched on / off Dim unmatched nodes. Only when unmatched_color is null.

System

Setting Values Description
Debug mode on / off Print config summary to stderr on startup. Equivalent to DENDROS_DEBUG=1.
Config merge on / off Parse launch files for referenced packages and merge their configs.

Diagnostics

Crash alert and traceback highlighting — how node failures surface in the terminal.

Setting Values Description
Crash alert on / off Print an inline banner when a node dies unexpectedly. See Crash Alert.
Crash alert color node / red node uses the group color; red always uses bold red.
Crash alert interval integer (seconds) Seconds between periodic banner reprints. 0 = only on new crash events.
Traceback color fancy / red / off fancy = bold red header + dim red frames; red = all bold red; off = passthrough. See Traceback Highlighting.

Parameter change alert

Setting Values Description
Param change alert on / off Print an inline notification whenever a node's parameter changes at runtime. See Parameter Change Alert.
Param alert scope tracked / all tracked = only nodes with a config group; all = entire ROS graph.
Param alert style inline / inverted inline = compact colored line; inverted = full white-background strip, harder to miss in busy logs.

Init defaults

Setting Values Description
Init: modify build on / off Auto-patch build files when running dendros init.
Init: on existing abort / merge / overwrite What to do when a config already exists.
Init: color palette / null Assign cycling palette colors or leave as null.
Init: bold colors on / off Prefix every palette color with bold.
Init: auto label on / off Auto-generate labels (same as --labels flag).

Config file

# ~/.config/dendROS/defaults.yaml
color_mode: tag_only
show_tag_launch: true
show_tag_cli: true
tag_position: after
tag_style: normal
unmatched_color: null
unmatched_tag: null
dim_unmatched: false
show_default_services: true
topic_sort: default
debug: false
config_merge: true
colorize_launch_msgs: true
show_timestamp: true
show_logger_name: true
crash_alert: true
crash_alert_color: node
crash_alert_interval: 30
traceback_color: fancy
param_change_alert: true
param_change_alert_scope: tracked
param_change_alert_style: inline
init_modify_build: true
init_on_existing: abort
init_color: palette
init_color_bold: false
init_label: false