Roboflare

Roboflare

Cloudflare for robots — enroll fleets, ship releases, roll out config from a single typed API.

Roboflare is a control plane for fleets of mobile robots. It gives your robot software the same loop you already expect from cloud apps: enroll a device, observe it live, ship a release, watch the rollout, roll back on failure.

It is a single Cloudflare Worker. There is no separate dashboard, API, and agent broker — web/ owns all of them. Robots open a single persistent WebSocket to the Worker; everything else (logs, shell, camera, OTA, config sync) is multiplexed inside that tunnel.

The loop

  1. Provision a site, a fleet inside the site, and an enrollment key.
  2. Enroll a robot. The agent on the robot exchanges the key for a robot token, connects to the tunnel, and shows up in your dashboard.
  3. Observe the robot: live health, structured logs, remote shell, camera, ROS diagnostics, rosbag history.
  4. Release a new robot application as a container image or app tarball.
  5. Deploy the release to one robot or a whole fleet, with an idempotency key. The agent pulls the artifact, swaps the container, and watches for 30s. If the new process exits, it rolls back to the previous image.
  6. Configure robot behavior with versioned config blobs. Deployed configs land at ~/.roboflare/robot-configs/<namespace>.json on the robot.

What's in this site

Status

Roboflare is v0. The end-to-end loop runs against a real Raspberry Pi from a local laptop. The control plane targets Cloudflare (D1 + Durable Objects); the robot-side agent is Rust, with a Python compatibility agent kept temporarily for parity work. Anything documented here reflects code that exists today — not a roadmap.

On this page