Agent skill · software engineering · jeremylongshore
flyio-local-dev-loop
Build a repeatable local Fly.io development loop with containers, config validation, private-service access, and disposable remote verification. Use when aligning local behavior with Fly Machines. Trigger with: "develop Fly app locally", "proxy Fly database", "test fly.toml before deploy".
Why this skill is useful
Adds specific commands and configurations for local development with Fly.io that the AI wouldn't reliably generate on its own.
What it needs
Requires docker installed locally. Requires fly.io account access. About 3k tokens when loaded. Last updated 2026-08-07. 2,604 stars on the source repository.
What this skill does
Fly.io Local-to-Remote Development Loop Overview Keep local unit and container checks separate from provider integration checks. Use synthetic fixtures by default, validate configuration before deployment, and treat fly proxy or WireGuard access to a remote service as production-adjacent even when initiated from a laptop. Prerequisites Local build and test commands plus expected runtime port Development-only app or isolated process group and disposable test data Approved remote-service access path with data handling and teardown rules Instructions Step 1: Define the parity contract Record runtime image, architecture, process command, port, environment names, health route, filesystem expectations, and provider-only dependencies. Step 2: Build and test locally Use deterministic dependencies and synthetic fixtures. Exercise startup, health, shutdown, migration, and failure paths without Fly.io credentials. Step 3: Validate configuration separately Review fly.toml against the app contract, including process groups, services, checks, signals, resources, and mounts. Keep secrets out of the file. Step 4: Connect to remote services narrowly If remote access is necessary, target a development service through an approved proxy or WireGuard path, bind locally, limit time, and never copy remote data into fixtures. Step 5: Deploy to a disposable boundary Use a dedicated development app or temporary Machine, immutable image, modest resource size, and clear expiry. Do not reuse the production app as a test target. Step 6: Reconcile and tear down Compare local and remote health, logs, architecture, and timing; capture differences, then stop or remove approved disposable resources. Authentication Use an interactive operator session or a development-app token with no production scope. Database credentials remain in the secret manager and are injected only for the bounded session. Close proxies and revoke temporary access after use. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills jeremylongshore/flyio-local-dev-loop