The ROS 2 Debugging Assistant is an interactive tool that helps developers inspect and troubleshoot their ROS 2 systems using natural language. It provides a chat-like interface powered by Streamlit where you can ask questions about your ROS 2 setup and execute common debugging commands.
- Interactive chat interface for debugging ROS 2 systems
- Real-time streaming of responses and tool executions
- Support for common ROS 2 debugging commands:
ros2 topic
: topic inspection and manipulationros2 service
: service inspection and callingros2 node
: node informationros2 action
: action server details and goal sendingros2 interface
: interface inspectionros2 param
: checking and setting parameters
-
Make sure you have RAI installed and configured according to the setup instructions
-
Launch the debugging assistant:
source setup_shell.sh
streamlit run src/rai/rai/tools/debugging_assistant.py
Here are some example queries you can try:
- "What topics are currently available?"
- "Show me the message type for /cmd_vel"
- "List all active nodes"
- "What services does the /robot_state_publisher node provide?"
- "Show me information about the /navigate_to_pose action"
The debugging assistant uses RAI's conversational agent capabilities combined with ROS 2 debugging tools. The key components are:
- Streamlit Interface: Provides the chat UI and displays tool execution results
- ROS 2 Tools: Collection of debugging tools that wrap common ROS 2 CLI commands
- Streaming Callbacks: Real-time updates of LLM responses and tool executions
- The assistant can only execute safe, read-only commands by default
- Some complex debugging scenarios may require manual intervention
- Performance depends on the chosen LLM vendor and model