The RobotAbstraction
Workcell Dashboard
A full-stack operator interface combining a React dashboard, a Google ADK agent service, a Node.js bridge, and a Webots simulation. Run it locally to control UR and SCARA robots through plain-language commands.
Four services,
one workcell
RobotAbstraction is a multi-service application. A React operator dashboard communicates via WebSocket with a Node.js bridge that speaks TCP to a Webots supervisor. A separate Python agent service powered by Google ADK translates natural-language factory goals into safe, robot-agnostic tool calls.
All four services run locally. Once the stack is up, open the dashboard, connect to the coordinator, and start issuing intent — no motor commands required.
Get running in
five steps
git clone https://github.com/tnkumar/20260513-hackathon.git cd 20260513-hackathon git checkout feat/agentic_robot_workcell
cd agent_service python3 -m venv .venv . .venv/bin/activate pip install -r requirements.txt export GOOGLE_API_KEY="your_api_key_here" cd ..
cd frontend npm install cd ..
# macOS (if installed outside /Applications) export WEBOTS_HOME="/Applications/Webots.app"
./start_all.sh # Dashboard opens at http://127.0.0.1:5173/
Default ports
| Service | Port | Open |
|---|---|---|
| React Dashboard (hosted) | Vercel | https://robot-abstraction-dashboard.vercel.app ↗ |
| React Dashboard (local) | :5173 | http://127.0.0.1:5173 ↗ |
| Agent HTTP endpoint (local) | :8787 | internal only |
| ADK Planner endpoint (local) | :8790 | internal only |
| Browser WebSocket bridge (local) | ws :8765 | internal only |
| Webots coordinator TCP (local) | :9099 | internal only |
Open the hosted dashboard
The UI is live on Vercel. For a fully connected simulation, run the local stack with ./start_all.sh and open http://127.0.0.1:5173/.