RoboDiag Harness
ROS 2 robot diagnostics CLI where an optional agent uses Jev to choose which read-only evidence tool to call next.
Overview
RoboDiag Harness brings ROS 2 robot telemetry, deterministic health checks, diagnostic history in SQLite and AI-assisted investigation into one terminal interface. It inspects the live ROS 2 graph, reads /diagnostics, samples topics and runs repeatable health tests. A Robot Diagnostic Capability Description (RDCD) declares which capabilities apply to a given robot, so missing declared data is a finding while undeclared capabilities are simply not applicable. The normal CLI needs no AI model.
An optional diagnostic agent gathers evidence through the same tools and explains it. When TYPESAFE_API_KEY is set, Jev acts as a fast decision layer that chooses which read-only evidence tool to call next during a diagnosis; if Jev tries to stop before required live measurements are collected, it is not allowed to. Jev never executes motion or write operations, and measured data and deterministic code remain the source of truth.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Choice | Which read-only evidence tool should be called next for this diagnosis? | — |
| Yes / no | Is there enough evidence to stop collecting?(inferred) | — |
How it works
- Load the robot's RDCD capability description
- Run deterministic health checks and sample topics
- Jev picks the next read-only evidence tool
- Stopping is blocked until required measurements exist; the agent explains the evidence
Strengths
- Jev cannot trigger motion or writes
- Deterministic checks remain the source of truth
- Works without AI for normal use
Caveats
- Jev routing is optional and needs a key
- Demonstrated on Mini Pupper 2
At a glance
- Type
- CLI
- Status
- beta
- Language
- Python
- Runtime
- Terminal app for ROS 2
- Has code
- yes
- License
- Apache-2.0
Use cases and integrations
How curated lists describe it
Command-line diagnostics for ROS 2 robots: an evidence-gathering agent whose tool calls are gated by typed decisions before anything touches the robot.
MrJev/awesome-jev
Frequently asked questions
What does Jev decide in RoboDiag?
Which read-only evidence tool to call next during a diagnosis.
Can Jev move the robot?
No; the README says Jev does not execute motion or write operations.
Do I need AI to use RoboDiag?
No, the normal CLI works without a model.
Related projects
Python library and CLI that turns noisy sources like CI logs, diffs and web pages into small, traceable Jev briefings.
BenchmarkbetaPythonMeasured runs of Jev triaging incidents for a simulated 10,000-robot warehouse fleet, with cost and a ModernBERT comparison.
ServiceresearchPythonOne CLI to command a flock of robots with an LLM per robot, plus an optional decision LLM such as Jev that picks among known skills.
CLIbetaPythonGo CLI for managing WordPress sites at scale, with typesafe commands that ask Jev questions and a scan --triage that ranks malware findings.
ProjectproductionGoComposio agent SDK with an optional TypeSafe provider that uses Jev to shortlist and pick tools and closed-set arguments.
ProjectproductionTypeScriptPython multi-agent runtime with native Jev support: agents ask typed questions via a decision client separate from the text model.
LibraryproductionPython