// For teams building robots

Build the robot.We'll build everything underneath it.

One command ships software to any robot. CI runs on real embedded hardware. Your fleet lives in one view. Nothing to rewrite.

Trusted by

BurroGather AITempo Works

Backed by

  • Y Combinator
  • NVIDIA Inception
  • Browder Capital
  • Pioneer Fund

The problem

Everyone has a robot to build. Nobody has time for the plumbing.

Robotics teams keep hitting the same five infrastructure problems. Each one slows down how fast the robot itself can improve.

Open issues · every robotics team5 unresolved
  • Homegrown deploy tools break at scale

    Your engineers rebuilt a deploy tool from scripts and docker pull. It worked for five robots. At fifty it fails at 2 a.m.

    CostEngineers up at 2 a.m.

  • Big updates fail on field networks

    A one-line fix means a 12GB image over LTE. The layer drops at 80% and starts from zero. Your LTE bill notices before you do.

    CostHours of retries and data overages

  • Tests never run on the real hardware

    Your CI passes on x86. The robot runs a Jetson. You find out what broke when it is 600 miles away.

    CostBugs found by customers

  • Only a few people know how it works

    Three people know which scripts to run and which errors to ignore. One of them is interviewing.

    CostOne resignation from a stalled fleet

  • Infrastructure never becomes the priority

    The infrastructure backlog is a page long. It is also everyone's third priority, forever.

    CostEvery release gets slower

Every robotics company rebuilds the same foundation. We're building it once.

Cloud and IoT tools weren't made for robots, so every team patches them together and the next team starts over. We're building the shared layer instead.

Engineering drawing of an inventory drone, an agricultural cart robot, and a floor grinding robot, stacked vertically at the same scale.
Fig 05Illustrative

How it works

From a robot on the bench to a fleet across the world, in five moves.

01/05

Step 01 · Install

Install with one line

On any robot, from the one on your bench to a fleet across the world. It appears in your fleet view in minutes. No OS swap, no re-packaged images, no infrastructure project.

You getA robot in your fleet view within minutes.

Step 02 · Push

Push whatever you ship today

An OS image, a container, a file tree, a model. Only the changed bytes move, compressed, and directly to the robot in front of you if that is where it is.

You getA one-line change delivered as megabytes, not gigabytes.

Step 03 · Test

Test on the hardware you actually ship

Point your existing GitHub Actions or GitLab pipeline at hosted Jetson runners and catch target-hardware bugs before they leave the lab.

You getBugs found on the bench, not by a customer.

Step 04 · Roll out

Roll out by any filter

Group, channel, version, or anything you can query, with calibration and config matched to each machine and approval chains for anything headed to a customer.

You getThe right build and calibration on every robot.

Step 05 · Operate

Operate from one view

Every robot reports what it runs and when it changed. Several versions stay staged on the machine, and switching back is one atomic step.

You getA known-good version one step away, always.

Scroll to advance
Terminal · bench-01ssh
$ curl -fsSL https://get.agencytool.com | shinstalling atc-agent 1.8.2 … okregistering bench-01 → fleet/lab … ok✓ ready in 41s · no OS changes · no image rebuild
RobotGroupLinkState
burro-0412orchard-7LTEonline
gather-d07dc-14WiFionline
bench-01lablocalonline · new
Push · v2.14.3 → bench-01local
$ atc ota push v2.14.3 user@bench-01comparing v2.14.2 → v2.14.3 (oci image, 9.8 GB)computing byte-level delta …
Full image 9.8 GBDelta 11.2 MB · −99.9%
sent 11.2 MB over the bench link · 3.1shook: systemctl restart robot.service✓ v2.14.3 running · v2.14.2 kept for rollback
CI · runs-on: atc-buildJetson Orin AGX
GitHub Actionscommit 8f3a12cCUDA onemulation none
✓checkout 8f3a12c0.8s
✓build ros2 workspace (cached)41s
✓perception tests on CUDA · 212 passed2m 04s
✓perf profile · 12.4 ms p99 on target38s
→artifact tagged release-candidate · ready for Deploy—
Rollout · v2.14.3 · channel orchards-west0 / 312
group orchard-7version < 2.14.3link anycalibration per-robotapproved ops-lead
Fleet · orchards-west312 online
RobotRunningChangedStaged
burro-0412v2.14.3v2.14.214:112.14.2
burro-0418v2.14.3v2.14.214:142.14.2
gather-d07v2.14.3v2.14.214:092.14.2
tempo-118v2.14.3v2.14.214:122.14.2
14:02 approved14:03 rollout14:14 312/312 activated

Readouts

What changes when the foundation is solid

Transfer time · 10GB image · 10 Mbps
7min

Updates in minutes, not afternoons.

A 10GB image update over a 10 Mbps link drops from hours of retries to under ten minutes, because 95% fewer bytes move.

Hours of retries→under 10 min
Engineering time reclaimed
1day / week

A day a week back to the robot.

Launch partners report reclaiming roughly one engineer-day per week that used to go to babysitting installs, debugging failed transfers, and reconciling the version spreadsheet.

Babysitting installs→building the robot
Release cadence
1× / week

Weekly releases instead of quarterly.

With one-step rollback and full deployment history, operations teams stop blocking updates. One partner went from a fleet update every six weeks to every week within two months.

Every 6 weeks→every week
20×
faster than a docker pull
750+
robots in partner fleets
0
changes to your OS, images, or drivers
1
line to install

Already convinced?

Ready to spend your time on the robot?

In the field

Built with teams whose robots already earn their keep

Site · agricultureLTE · marginal
Engineering drawing of a four-wheeled agricultural cart robot carrying a harvest crate, with numbered callouts for its lidar, sensor bar, crate, compute enclosure, antenna, and hub motor.

Burro

More than 750 robots working alongside people in orchards and vineyards, most on marginal LTE. Before: updates were scheduled around coverage maps and customer availability. After: resumable delta updates land overnight without moving a single robot.

Avg update, before4.5 h→After11 min
Site · warehouse dronesWiFi · shared
Engineering drawing of a quadcopter inventory drone with guarded propellers, with numbered callouts for its camera, compute module, propeller guard, antenna, and battery.

Gather AI

Drones counting inventory at 99.9% accuracy on shared warehouse WiFi. After: updates queue, resume, and activate between flights, so the fleet stays on one version without anyone chasing it.

Fleet versions, before4→After1
Site · industrial grindingUS · Canada
Engineering drawing of an autonomous floor grinding robot, with numbered callouts for its grinding head, dust shroud, lidar, antenna, calibration sensor, and drive wheel.

Tempo Works

Machines at customer sites across several US states and Canada. Per-machine calibration that used to travel on USB sticks now ships through targeted channels with a full audit trail.

Calibration byUSB→NowChannel
Transmission · 01
"We used to ask customers to bring robots to the parking lot for updates. Now we don't ask anything. It's just done by morning."
Head of Software · agricultural robotics partner
Transmission · 02
"The first time I pushed a fix and it landed on 40 machines before I finished my coffee, I realized how much time we'd been burning."
Robotics Engineer · warehouse automation partner
Transmission · 03
"Rollback being one step is the reason ops lets us ship weekly now."
VP Operations · industrial robotics partner

What we hear before teams switch

Fair questions. Straight answers.

We'll build it ourselves.

You will, and then you will build it again when the fleet doubles and the first version breaks. Your best engineers are worth more on the robot. Keep your scripts, and let the foundation handle the parts that fail at scale.

We'd have to change our OS, rebuild images, or rewrite drivers.

No. It ships the artifacts you already produce, on Ubuntu, Jetson, x86, ROS 2, plain Docker, or Nix. Your images stay in your registry, and a push to the robot on your bench never leaves the room.

We only have a dozen robots. This is overkill.

A dozen is when the spreadsheet starts lying. Install is one line, the first robots are free, and your test techs get their afternoons back on day one.

You're a small company in beta. What if you disappear?

Everything exports in open formats at any time, and uninstall is one command. Your images, your configs, and your deployment history are yours, on the robot and off it. Nothing about your stack changes to adopt it, so nothing about your stack breaks if you leave.

Questions

Integrations, data, setup, and support. Anything else, reach us at mailbox@agencytool.com.

atc help · logistics5 topics

$atc help works-with

What does it work with?

Artifacts
OS imagesDocker / OCITarballsFile treesModel weights
Stack
ROSROS 2LeRobotDimOSNixCUDAZenoh
Hardware
Jetson Orin NanoOrin NXOrin AGXThorx86Raspberry Pi
CI
GitHub ActionsGitLab CI
Exploded engineering drawing of an embedded compute module: fan, heatsink, module, and carrier board, with a USB-C cable.

$atc help data

Where does my data go?

  • ✓Releases are signed and delivered over TLS.
  • ✓Images stay in your registry.
  • ✓Local pushes stay local.
  • ✓Role-based access controls who can approve and deploy.
  • ✓A self-hosted relay is available for air-gapped or regulated fleets.
  • ◐SOC 2 Type I.In progress

$atc help setup

How long is setup?

$curl -fsSL https://get.agencytool.com | shPer robot
  1. One commandInstall on each robot.
  2. One fileAdd a single configuration file.
  3. 30 minutesMost teams push their first update within 30 minutes of signing up.

$atc help offline

What if a robot is offline?

  1. The update waits. Nothing fails while the link is down.
  2. It resumes from where it stopped. No transfer restarts from zero.
  3. It activates only when your rules say so. Downloads can be throttled so they never compete with teleoperation.
  4. No link at all? USB-drive updates work for robots that never connect.

$atc help support

What support do we get?

  • Shared SlackA channel with the engineers who built it.
  • Same dayResponses during beta.
  • OnboardingHelp migrating your existing deploy scripts.

Ready when you are

Build the robot. We'll build everything underneath it.

Your first five robots are free during beta. No contract, cancel anytime, uninstall with one command.

First 5 robots freeNo contractCancel anytimeUninstall in one command