Support matrix
- Robot OS: Ubuntu 20.04+ / Debian 11+
- ROS 2: Humble / Iron / Jazzy
- Developer machine: macOS, Linux, or Windows for the CLI
- Primary promise: remote debugging for ROS 2 robots behind NAT
1. Install the CLI
curl -fsSL https://downloads.robotunnel.io/install.sh -o install-robotunnel.sh
bash install-robotunnel.sh
robotunnel init "<platform-token>"
Use https://downloads.robotunnel.io/install.ps1 on Windows if you prefer the PowerShell install path.
2. Install the agent on the robot
curl -fsSL https://downloads.robotunnel.io/agent/install-agent.sh -o install-agent.sh
curl -fsSL https://downloads.robotunnel.io/agent/install-agent.config.example -o install-agent.config
# Edit install-agent.config:
# - RT_KEY
# - ROBOT_NAME (optional; defaults to hostname)
# - PLATFORM_BASE_URL (optional; only for self-hosted platform)
chmod +x install-agent.sh
./install-agent.sh ./install-agent.config
The installer registers the robot, writes the local config, fetches the initial trust bootstrap, and starts the agent.
3. Start the managed debug session
robotunnel list
robotunnel debug start <robot> --mode foxglove
robotunnel debug open <robot> --launch
robotunnel connect still exists, but it is the expert low-level tunnel path. The recommended first-run workflow is the managed debug-session path.
Verify and troubleshoot
./scripts/webrtc-preflight.sh \
--api-url https://api.robotunnel.io \
--api-key <robot_api_key> \
--robot-id <robot_uuid>
- Use
robotunnel list to confirm the robot is online.
- Use
robotunnel debug status <robot> after starting a session.
- If WebRTC fails, run the agent-side preflight check and then read the full Troubleshooting guide.
- If you need lower-level control, fall back to
robotunnel connect.
- If you want robot-side actions beyond the first session, continue to Skills.