the CLI a lab runs its whole fleet from

SEGA fleet orchestration.

Boot, build, ship, watch, and sync a whole fleet of services. One grammar, one config.

source-available · not a status page · you run it, not us

sega · fleet
sega fleet add payments -d pay.example.com
 added payments (id 4)  api :8004  frontend :3004  db :5004

sega local up
# booting the fleet from config/sega.toml
 shared postgres   timescaledb   :5000-5004
 shared redis      native        :6000-6004
 atlas · hermes · orion · payments   up in 8.2s
# whole fleet, one command. no compose sprawl. 
The fleet

Your whole fleet, one view

Every service gets its id, ports, host, and domain from one config file. Ports compute from the id, so nothing collides. sega fleet ls and the dashboard render exactly this.

atlasprod-01
api :8000web :3000
hermesprod-01
api :8001
orionprod-02
api :8002web :3002
paymentslocal
api :8004web :3004
postgresshared
:5000-5004
redisshared
:6000-6004
The grammar

One grammar, every project

The same verbs work across every service in the fleet, whatever its type. SEGA detects the project and routes it.

Boot

Your entire multi-service stack (shared Postgres/Redis, every backend, every frontend), locally, in one command.

sega local up sega local status sega local down

Build

Desktop apps (Electron, signed and notarized), mobile, compiled CLIs, and obfuscated engine packages, per project or fleet-wide.

sega forge build sega desktop sega binaries

Ship

Deploy any project to its configured host. Secrets, nginx routing, and topology all come from config.

sega ship deploy sega secrets pull sega fleet deploy

Watch

sysmon tracks disk, CPU, memory, and Docker across every host with cleanup hints; probe scans live health across the fleet.

sega sysmon status --all sega probe scan sega dashboard

Sync

Move work across machines without ever losing it. SEGA commits WIP as a real commit, never a stash, and aborts on a genuine conflict instead of auto-resolving.

sega sysnc run sega fleet status

Grow

Add a service to the fleet in one command: it allocates the id, computes the ports, and writes the config. Adding a service is a few lines, not a new toolchain.

sega fleet add web sega fleet ls sega fleet remove web
The fit

Built for fleet-shaped teams

SEGA assumes you run many sibling services and nails that shape, instead of being the sixth generic CI tool. That opinion is the point.

SEGA is for you if

  • You run a portfolio: a studio, agency, research lab, or multi-product startup
  • Your services are siblings: same patterns, different products
  • You want one CLI to boot, build, ship, and watch all of them
  • You're tired of per-project compose and deploy-script sprawl

It's not for you if

  • You have a single app: nothing here helps
  • You're a pure-JS monorepo shop: Nx fits better
  • You're all-in on k8s GitOps: Argo fits better
What it is

An internal developer platform, as a CLI

Without SEGA, a portfolio accumulates a per-project, per-machine pile of tribal knowledge: this service's boot script, that host's cleanup cron, this project's deploy runbook, that machine's sync ritual. SEGA collapses all of it into one grammar over one config file. A new teammate runs sega local up and has the whole stack.

Where Backstage is a portal you host, SEGA is a doer you run. It sits above task runners, below build systems, and wraps, never replaces, Terraform, Ansible, Kubernetes, and the hardware toolchains.

Battle-tested running a real fleet across software, embedded/FPGA hardware, and ML-model distribution. We label maturity honestly, so you know what to lean on:
local · watch · build · secrets · sync: stableship: betahardware · models: experimental