flyctl

August 6, 2026 ยท View on GitHub

flyctl is a command-line interface for fly.io.

Note: Most installations of flyctl also alias flyctl to fly as a command name, and this will become the default name in the future. During the transition, note that where you see flyctl as a command, it can be replaced with fly.

Installation

Using a Package Manager

Homebrew (macOS, Linux, WSL)

brew install flyctl

To upgrade to the latest version:

brew upgrade flyctl

Install Script

Download flyctl and install it into a local bin directory.

macOS, Linux, WSL

Installing the latest version:

curl -L https://fly.io/install.sh | sh

Installing the latest pre-release version:

curl -L https://fly.io/install.sh | sh -s pre

Installing a specific version:

curl -L https://fly.io/install.sh | sh -s 0.0.200

Windows

Run the PowerShell install script:

iwr https://fly.io/install.ps1 -useb | iex

Downloading from GitHub

Download the appropriate version from the Releases page of the flyctl GitHub repository.

Getting Started

  1. Sign into your Fly account:

    fly auth login
    
  2. List your apps:

    fly apps list
    
  3. View app status:

    fly status -a {app-name}
    

App Settings

flyctl will attempt to use the app name from a fly.toml file in the current directory. For example, if the current directory contains this file:

$ cat fly.toml
app: banana

flyctl will operate against the banana app unless overridden by the -a flag or another app name setting in the command line.

Releases

flyctl is automatically released at 3 PM Eastern Standard Time, Monday - Thursday. If needed, you can bump a release by running ./scripts/bump_version.sh.

Building on Windows

There is a simple PowerShell script, winbuild.ps1, which will run the code generation for the help files, format them, and run a full build, leaving a new binary in the bin directory.

Contributing Guide

See CONTRIBUTING.md