# nasa-jpl/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.

Repository: https://github.com/nasa-jpl/rosa
Canonical: https://ross.abutalabs.com/products/rosa
Homepage: https://github.com/nasa-jpl/rosa/wiki
Language: Python
License: Apache-2.0
License Family: permissive
Topics: agents, ai, developer-tools, robotics, ros, ros2, jpl, nasa, llm
Last push: 2026-03-17T17:50:58+00:00

## Health v2 (maintenance only)
Score: 58/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 72, release rhythm 43, longevity 54
- inputs: {"age_days": 758, "days_push": 169, "days_rel": 169, "gap_med": 193, "n_releases_24m": 4}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1619, forks 176 (observed 2026-08-28T04:05:12.265481+00:00)

## What it is
ROSA is a Python library and AI agent built on LangChain that lets developers interact with ROS1 and ROS2 robotics systems using natural language queries. It helps inspect, diagnose, understand, and operate robots through an LLM-powered conversational interface.

## Use cases
- query ros topics with natural language
- debug ros2 node issues conversationally
- inspect publishers and subscribers on a robot
- diagnose why my robot's topic has no subscribers
- build a custom ai agent for my robot
- control a ros robot using plain english

## When to choose
- you develop or debug ROS1/ROS2 systems and want natural-language tooling
- you want an extensible LLM agent framework tailored to robotics
- you need to inspect robot state without memorizing ROS CLI commands

## When to avoid
- your project does not use ROS or ROS2
- you need hard real-time robot control rather than inspection and diagnostics
- you cannot provide an LLM backend or have strict data-privacy constraints around sending robot data to an LLM

## Facets
- artifact type: library
- maturity: active
- function: agent-framework, llm-inference, developer-tools, chatbot
- domain: robotics, developer-tools, large-language-models
- platform: python, cli
- tags: ros, ros2, robotics-agent, natural-language, langchain, nasa-jpl, robot-debugging, ai-agents, linux

## Member repositories
- nasa-jpl/rosa (main) score 58

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:05:12.265481+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T03:49:36.546712+00:00, confidence not recorded.
  - readme: https://github.com/nasa-jpl/rosa (fetched 2026-08-28T04:05:12.265481+00:00, sha d6ce0fe620ba)
  - homepage: https://github.com/nasa-jpl/rosa/wiki (fetched 2026-08-29T11:22:03.093489+00:00, sha 5f40754fa439)
- Data as of 2026-08-30T08:39:29.467469+00:00.
