Official Fly.io CLI for launching, deploying, scaling, and operating apps and machines on Fly.io.
$brew install flyctl
Agent Compatibility
JSON Output
Agent Skill
MCP Support
AI Analysis
flyctl is Fly.io's official CLI for creating, deploying, and operating apps, Machines, networking, storage, and managed services on the Fly.io platform. It spans first deploy setup from local source through day-2 operations like scaling, logs, secrets, certificates, and machine lifecycle control.
What It Enables
- Launch new Fly.io apps from local source or a template repo, generate app config, provision attached services, and perform first deploys.
- Inspect and operate running apps with app lists, machine status, releases, logs, secrets, certificates, IPs, volumes, and organization-level controls.
- Change platform state directly from the shell by deploying new versions, scaling VM or count settings, restarting or cloning Machines, and managing attached storage.
Agent Fit
- Repeated
--jsonsupport across app, machine, status, log, secret, certificate, org, volume, and other resource commands, plus localfly.tomldiscovery, make inspect, change, and verify loops practical. - Once auth and app context are in place, most operational commands are stable shell primitives, but
auth login,launch, and watch or streaming flows still introduce browser, prompt, or live-session friction. - Can also expose a built-in MCP server and proxy when a team wants that integration model.
Caveats
- You need a Fly.io account and auth context, and many commands assume either
-aor a localfly.tomlto resolve the target app. - Bootstrap paths like
launchare more interactive than steady-state operations, so unattended automation is strongest after the app and config already exist.