✈️ Fly.io
Fly.io edge deployment platform — manage apps, machines, volumes, secrets, and certificates via the Fly.io Machines API.
Features
- App management — create, list, configure apps
- Machine operations — start, stop, restart machines
- Volume management — persistent storage provisioning
- Secret management — secure environment secrets
- Certificate management — SSL/TLS auto-provisioning
- Scaling — scale machines up/down, auto-stop
- Region selection — deploy to specific global regions
- Health checks — monitor machine health
- Network config — IP allocation, private networking
- Deployment — rolling deploys with canary support
Requirements
| Variable | Required | Description |
|---|---|---|
FLY_API_TOKEN | ✅ | API key/token for Fly.io |
Quick Start
# List apps
python3 {baseDir}/scripts/flyio.py apps --limit 20
# Get app details
python3 {baseDir}/scripts/flyio.py app-get my-app
# Create an app
python3 {baseDir}/scripts/flyio.py app-create '{"app_name":"my-service","org_slug":"personal"}'
# List machines
python3 {baseDir}/scripts/flyio.py machines --app my-app
Commands
apps
List apps.
python3 {baseDir}/scripts/flyio.py apps --limit 20
app-get
Get app details.
python3 {baseDir}/scripts/flyio.py app-get my-app
app-create
Create an app.
python3 {baseDir}/scripts/flyio.py app-create '{"app_name":"my-service","org_slug":"personal"}'
machines
List machines.
python3 {baseDir}/scripts/flyio.py machines --app my-app
machine-get
Get machine details.
python3 {baseDir}/scripts/flyio.py machine-get --app my-app mach_abc123
machine-start
Start a machine.
python3 {baseDir}/scripts/flyio.py machine-start --app my-app mach_abc123
machine-stop
Stop a machine.
python3 {baseDir}/scripts/flyio.py machine-stop --app my-app mach_abc123
machine-create
Create a machine.
python3 {baseDir}/scripts/flyio.py machine-create --app my-app '{"config":{"image":"nginx:latest","guest":{"cpus":1,"memory_mb":256}}}'
volumes
List volumes.
python3 {baseDir}/scripts/flyio.py volumes --app my-app
volume-create
Create a volume.
python3 {baseDir}/scripts/flyio.py volume-create --app my-app '{"name":"data","size_gb":10,"region":"ord"}'
secrets
List secrets.
python3 {baseDir}/scripts/flyio.py secrets --app my-app
secret-set
Set a secret.
python3 {baseDir}/scripts/flyio.py secret-set --app my-app "DATABASE_URL" "postgres://..."
certs
List certificates.
python3 {baseDir}/scripts/flyio.py certs --app my-app
regions
List available regions.
python3 {baseDir}/scripts/flyio.py regions
status
App status overview.
python3 {baseDir}/scripts/flyio.py status --app my-app
Output Format
All commands output JSON by default. Add --human for readable formatted output.
# JSON (default, for programmatic use)
python3 {baseDir}/scripts/flyio.py apps --limit 5
# Human-readable
python3 {baseDir}/scripts/flyio.py apps --limit 5 --human
Script Reference
| Script | Description |
|---|---|
{baseDir}/scripts/flyio.py | Main CLI — all Fly.io operations |
Data Policy
This skill never stores data locally. All requests go directly to the Fly.io API and results are returned to stdout. Your data stays on Fly.io servers.
Credits
Built by M. Abidi | agxntsix.ai YouTube | GitHub Part of the AgxntSix Skill Suite for OpenClaw agents.
📅 Need help setting up OpenClaw for your business? Book a free consultation