Rosa
ROSA π€ is an AI Agent designed to interact with ROS1- and ROS2-based robotics systems using natural language queries. ROSA helps robot developers inspect, diagnose, understand, and operate robots.
Install / Use
/learn @nasa-jpl/RosaREADME
[!IMPORTANT] π New to ROSA? Check out our Wiki for documentation, guides and FAQs!
ROSA is your AI-powered assistant for ROS1 and ROS2 systems. Built on the Langchain framework, ROSA helps you interact with robots using natural language, making robotics development more accessible and efficient.
ROSA Demo: NeBula-Spot in JPL's Mars Yard (click for YouTube)
π Quick Start
Requirements
- Python 3.9+
- ROS Noetic or higher
Installation
pip3 install jpl-rosa
Usage Examples
from rosa import ROSA
llm = get_your_llm_here()
agent = ROSA(ros_version=1, llm=llm)
agent.invoke("Show me a list of topics that have publishers but no subscribers")
For detailed information on configuring the LLM, please refer to our Model Configuration Wiki page.
Adapting ROSA for Your Robot π§
ROSA is designed to be easily adaptable to different robots and environments. You can create custom agents by either inheriting from the ROSA class or creating a new instance with custom parameters.
For detailed information on creating custom agents, adding tools, and customizing prompts, please refer to our Custom Agents Wiki page.
TurtleSim Demo π’
We have included a demo that uses ROSA to control the TurtleSim robot in simulation. To run the demo, you will need to have Docker installed on your machine. π³
The following video shows ROSA reasoning about how to draw a 5-point star, then executing the necessary commands to do so.
https://github.com/user-attachments/assets/77b97014-6d2e-4123-8d0b-ea0916d93a4e
For detailed instructions on setting up and running the TurtleSim demo, please refer to our TurtleSim Demo Guide in the Wiki.
IsaacSim Extension (Coming Soon)
ROSA is coming to Nvidia IsaacSim! While you can already use ROSA with robots running in IsaacSim (using the ROS/ROS2 bridge), we are adding direct integration in the form of an IsaacSim extension. This will allow you not only to control your robots in IsaacSim, but control IsaacSim itself. Check out the video below to learn mroe.
ROSA Demo: Nvidia IsaacSim Extension (click for YouTube)
π Learn More
Changelog
See our CHANGELOG.md for a history of our changes.
Contributing
Interested in contributing to our project? Please see our: CONTRIBUTING.md
For guidance on how to interact with our team, please see our code of conduct located at: CODE_OF_CONDUCT.md
For guidance on our governance approach, including decision-making process and our various roles, please see our governance model at: GOVERNANCE.md
License
See our: LICENSE
Support
Key points of contact are:
<div align="center"> ROSA: Robot Operating System Agent π€<br> Copyright (c) 2024. Jet Propulsion Laboratory. All rights reserved. </div>
Related Skills
next
A beautifully designed, floating Pomodoro timer that respects your workspace.
product-manager-skills
33PM skill for Claude Code, Codex, Cursor, and Windsurf: diagnose SaaS metrics, critique PRDs, plan roadmaps, run discovery, and coach PM career transitions.
devplan-mcp-server
3MCP server for generating development plans, project roadmaps, and task breakdowns for Claude Code. Turn project ideas into paint-by-numbers implementation plans.
