Skip to content

Commit fdef682

Browse files
committed
docs: update README.md, create debugging_assistant.md docs
1 parent d62af4b commit fdef682

File tree

2 files changed

+57
-0
lines changed

2 files changed

+57
-0
lines changed

README.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ The RAI framework aims to:
4949
- [Features](#features)
5050
- [Setup](#setup)
5151
- [Usage examples (demos)](#simulation-demos)
52+
- [Debugging Assistant](#debugging-assistant)
5253
- [Developer resources](#developer-resources)
5354

5455
## Features
@@ -66,6 +67,7 @@ The RAI framework aims to:
6667
- [x] Improved Human-Robot Interaction with voice and text.
6768
- [x] Additional tooling such as GroundingDino.
6869
- [x] Support for at least 3 different AI vendors.
70+
- [x] Debugging assistant for ROS 2.
6971
- [ ] SDK for RAI developers.
7072
- [ ] UI for configuration to select features and tools relevant for your deployment.
7173

@@ -153,6 +155,10 @@ Once you know your way around RAI, try the following challenges, with the aid th
153155
- Implement additional tools and use them in your interaction.
154156
- Try a complex, multi-step task for your robot, such as going to several points to perform observations!
155157

158+
## Debugging Assistant
159+
160+
Use the [debugging assistant](./docs/debugging_assistant.md) to inspect ROS 2 network state and troubleshoot issues.
161+
156162
### Simulation demos
157163

158164
Try RAI yourself with these demos:

docs/debugging_assistant.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
# ROS 2 Debugging Assistant
2+
3+
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.
4+
5+
![Debugging Assistant Interface](imgs/debugging_assistant.png)
6+
7+
## Features
8+
9+
- Interactive chat interface for debugging ROS 2 systems
10+
- Real-time streaming of responses and tool executions
11+
- Support for common ROS 2 debugging commands:
12+
- Topic inspection and manipulation
13+
- Service inspection
14+
- Node information
15+
- Action server details
16+
- Interface inspection
17+
18+
## Running the Assistant
19+
20+
1. Make sure you have RAI installed and configured according to the [setup instructions](../README.md#setup)
21+
22+
2. Launch the debugging assistant:
23+
24+
```sh
25+
source setup_shell.sh
26+
streamlit run src/rai/rai/tools/debugging_assistant.py
27+
```
28+
29+
## Usage Examples
30+
31+
Here are some example queries you can try:
32+
33+
- "What topics are currently available?"
34+
- "Show me the message type for /cmd_vel"
35+
- "List all active nodes"
36+
- "What services does the /robot_state_publisher node provide?"
37+
- "Show me information about the /navigate_to_pose action"
38+
39+
## How it Works
40+
41+
The debugging assistant uses RAI's conversational agent capabilities combined with ROS 2 debugging tools. The key components are:
42+
43+
1. **Streamlit Interface**: Provides the chat UI and displays tool execution results
44+
2. **ROS 2 Tools**: Collection of debugging tools that wrap common ROS 2 CLI commands
45+
3. **Streaming Callbacks**: Real-time updates of LLM responses and tool executions
46+
47+
## Limitations
48+
49+
- The assistant can only execute safe, read-only commands by default
50+
- Some complex debugging scenarios may require manual intervention
51+
- Performance depends on the chosen LLM vendor and model

0 commit comments

Comments
 (0)