OpenVibe.Bot
Imported, written with AI assistance. Imported from the OpenVibe repository README and STATUS files at the cited commits, summarised with AI assistance; originally by OpenVibers. Not yet reviewed by a person.
OpenVibe.Bot is "The open control panel for robots" at openvibe.bot on port 4630. It pairs a robot's machines, keeps their state and gates every operator command: a device opens one outbound WebSocket to /device, and a person drives it from /control or the REST API through the same gate of roles, per-robot limits, cooldowns and the turn budget.
What it does
Bot owns robots, their profiles, per-robot limits, allow lists, roles and operators; the curated kit catalogue; devices and their hashed credentials; pairing codes; the /device and /control WebSockets, the command gate and the latched e-stop; and a command audit kept 30 days. A sim.rover robot is driven by an in-process simulator so the panel works before hardware exists, and server-side ONVIF cameras attach in-process. The panel renders from the robot's profile, with a touch joystick, keyboard and gamepad, a latency meter and one camera tile per camera. Owner-only streaming and recording toggles record live sessions to OpenVibe.Media or mirror them to the owner's OpenVibe.Live channel, where the robot's read-only panel can also be embedded.
Since its first release Bot has added:
- a public robot directory at
/robots, and/try, where anyone drives a rover that runs in their own browser, without an account; - a phone as the robot: the pairing page shows a QR code that makes the phone's browser the device;
- routines: the owner writes a robot's steps one per line and runs them on demand, on a schedule or when the robot comes online, each step through the same gate;
- the owner's OpenVibe.Actor agent can read and drive the robot once the owner turns that on in the panel's Your agent card;
- webhooks for a robot's events, and community robots whose driver is their own OpenVibe.Node plugin;
- a person's own computer for their agents: a machine set up with OpenVibe.Node's
computerplugin takes commands, file access and screen reads at the level its owner set, and the owner can watch its screen live.
What it does not do yet
Bot does not own identity, which is OpenVibe.Network's, or video: a device publishes over WHIP to OpenRestream. When OpenVibe.Billing is unset, job usage readings wait in run_usage_outbox rather than being dropped.
How it fits the network
Bot depends on OpenVibe.Network for user and service tokens, node tokens and identity resolution, OpenRestream for the WHIP ingest base devices publish to, and OpenVibe.Billing for job usage readings. A device's installer command points at the released OpenVibe.Node script.
Status
Production runs the Node process under systemd as openvibe-bot.service on port 4630 behind nginx, which terminates TLS and upgrades the WebSockets. PostgreSQL applies migrations/ at boot; Valkey is optional for shared per-actor limit counters. STATUS.json records stage alpha and the service deployed.
Sources
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
The open control panel for robots (openvibe.bot).
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
the same panel on a rover that runs in the visitor's own browser
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
A phone as the robot (`phone.camera`, driver `phone`)
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
or each time the robot comes online
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
Let my OpenVibe.Actor agent drive this robot
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
runs OpenVibe.Node's `computer` plugin as the person's own account
- OpenVibe.Bot README (commit 7f1b5ce), retrieved
to the pages that may frame a robot's read-only panel
Inspect these sources (retrieval times, where each was first cited, what changed between revisions)