The on-host agent for Orbit — Byte8's zero-downtime deployment automation for Magento 2.
This repository hosts the public installer + release binaries. The agent sits on your deploy host, pulls deployment tasks from the Orbit server, and executes them with Capistrano-style atomic releases, automatic rollback, and real-time status streaming back to the dashboard.
One-liner — auto-detects OS + arch, installs to /usr/local/bin (root) or
~/.local/bin (non-root):
curl -fsSL https://get.byte8.io/orbit-agent | shInstall and run orbit-agent init in one shot (greenfield or migrating
from a single-dir Magento install):
curl -fsSL https://get.byte8.io/orbit-agent | sh -s -- \
--token=obt_... \
--server-url=https://orbit.byte8.io \
--deploy-path=/var/www/your-storeGet a token by creating an environment in the Orbit dashboard at orbit.byte8.io → environment detail → Add Token.
If you'd rather skip curl | sh, grab a release tarball directly from the
Releases page and extract
the orbit-agent binary onto your path. Each release publishes:
orbit-agent-x86_64-unknown-linux-musl.tar.gz(x86_64, static — runs on any Linux)orbit-agent-x86_64-unknown-linux-gnu.tar.gz(x86_64, glibc 2.35+)orbit-agent-aarch64-unknown-linux-musl.tar.gz(ARM64, static — runs on any Linux)orbit-agent-aarch64-unknown-linux-gnu.tar.gz(ARM64, glibc 2.35+)
The installer defaults to the musl (static) build, which has no glibc
dependency and runs on older distros too. Override with ORBIT_LIBC=gnu only
if you specifically want the glibc build and know your host's glibc is 2.35 or
newer. Each tarball ships with its own .sha256 for verification.
- Clones your repo on each deploy, builds in
releases/<timestamp>/, swaps thecurrentsymlink atomically when the build is healthy. - Reuses the previous release's
generated/andpub/static/via hardlink-copy when fingerprints match (~50 s saved per skipped phase). - Detects new themes / modules and runs
setup:upgradeonly when needed. - Auto-rolls back if the post-deploy health check fails or any command errors.
- Streams stdout / stderr line-by-line to the dashboard for live progress.
All configuration lives in the Orbit dashboard — per-environment fields for SSH
target, deploy path, shared files / dirs, Magento themes, locales, hooks, build
optimization, etc. The agent fetches it from the server on every deploy poll,
so there's nothing to edit in orbit-agent.env beyond the bootstrap
credentials (server URL + token + environment ID).
The agent's Rust source lives in a private monorepo. Binaries published here
are cross-compiled in CI on tag push (orbit-agent-v*). If you want to audit
the install script before piping it to your shell, read it first:
curl -fsSL https://get.byte8.io/orbit-agent- Docs: byte8.io/orbit
- Issues: github.com/byte8io/orbit-agent/issues
- Email: hello@support.byte8.io
MIT — see LICENSE.