Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Install flyctl CLI and configure Fly.io authentication with API tokens. Use when setting up a new Fly.io project, configuring deploy tokens, or initializing the Machines API for edge compute deployments. Trigger: "install fly.io", "setup flyctl", "fly.io auth", "fly.io API token".
.claude/skills/jeremylongshore-flyio-install-auth/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-14 | ✗→✓ | ▲ Improved | 19% | 0% |
| case-17 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-01 | ✓→✓ | = Same ✓ | 94% | 0% |
| case-02 | ✓→✓ | = Same ✓ | 150% | 0% |
| case-03 | ✓→✓ | = Same ✓ | 1% | 0% |
Separate interactive login from automation credentials. Current Fly.io guidance provides scoped deploy, organization, read-only, SSH, Machine-exec, and WireGuard token types; choose the smallest authority and lifespan that satisfies the workflow.
Use browser login for a human workstation. For automation, map required actions to app deploy, organization deploy, read-only, SSH, Machine-exec, or WireGuard scope.
Follow the provider installation method for the operating system, then record fly version and the provider-maintained release tag. Pin CI setup where reproducibility matters.
Prefer fly tokens create deploy for one app and fly tokens create readonly for observation. Use organization scope only for justified multi-app operations.
Place the token in the approved secret manager and expose it only as FLY_API_TOKEN or FLY_ACCESS_TOKEN to the intended process.
Confirm effective identity and scope through a non-mutating app or Machine read. Distinguish an empty scoped listing from a failed credential.
Record token ID, owner, scope, expiry, dependents, overlap procedure, emergency revocation, and post-rotation verification.
Machines API requests send Authorization: Bearer <token> to the public https://api.machines.dev endpoint outside the private network. The hidden deprecated fly auth token output is an all-powerful short-lived login token and must not be used as the routine CI credential.
Use Read and Grep to inspect application configuration, deployment evidence, provider documentation, fixtures, logs, schemas, and existing tests before proposing a change. Use Write or Edit only for an approved plan, configuration, implementation, test, or redacted receipt. Do not create, deploy, scale, restart, stop, suspend, destroy, rotate, revoke, expose, or migrate live Fly.io resources without explicit operator approval.
Return the target organization, app, environment, region set, Machine or database identifiers, source-contract fingerprint, evidence, unresolved risks, rollback state, and final decision without exposing tokens, secrets, connection strings, or customer data.
A single-app production pipeline receives a 30-day app deploy token in its protected environment. A monitoring job receives a separate organization read-only token. Both record token IDs and owners, while values remain only in the secret manager.
| Failure | Response | | --- | --- | | Identity appears valid but listings are empty | Check scope filters and target app before broadening access; scoped tokens can hide out-of-scope resources. | | Token is exposed | Revoke by token ID, rotate dependents, inspect access evidence, and avoid repeating the value in the incident record. | | flyctl behavior differs from docs | Record the installed version, compare with the current provider release, and revalidate commands before use. |
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-01 | pass→pass | 9,718 | 9,380 | -3% | 1 | 1 | 0% | 794 | 1,544 | +94% | 0 | 0 | — |
case-02 | pass→pass | 8,186 | 7,711 | -6% | 1 | 1 | 0% | 508 | 1,272 | +150% | 0 | 0 | — |
case-03 | pass→pass | 12,929 | 8,741 | -32% | 1 | 1 | 0% | 1,375 | 1,391 | +1% | 0 | 0 | — |
case-04 | pass→pass | 8,034 | 7,726 | -4% | 1 | 1 | 0% | 459 | 1,232 | +168% | 0 | 0 | — |
case-05 | pass→pass | 12,462 | 10,829 | -13% | 1 | 1 | 0% | 1,301 | 1,861 | +43% | 0 | 0 | — |
case-06 | pass→pass | 8,486 | 7,802 | -8% | 1 | 1 | 0% | 568 | 1,316 | +132% | 0 | 0 | — |
case-07 | pass→pass | 10,216 | 7,833 | -23% | 1 | 1 | 0% | 844 | 1,282 | +52% | 0 | 0 | — |
case-08 | pass→pass | 32,783 | 8,500 | -74% | 1 | 1 | 0% | 1,279 | 1,238 | -3% | 0 | 0 | — |
case-09 | pass→pass | 8,429 | 7,517 | -11% | 1 | 1 | 0% | 568 | 1,181 | +108% | 0 | 0 | — |
case-10 | pass→pass | 14,164 | 10,072 | -29% | 1 | 1 | 0% | 1,731 | 1,676 | -3% | 0 | 0 | — |
case-11 | pass→pass | 8,528 | 7,547 | -12% | 1 | 1 | 0% | 645 | 1,315 | +104% | 0 | 0 | — |
case-12 | pass→pass | 13,126 | 11,406 | -13% | 1 | 1 | 0% | 1,289 | 1,841 | +43% | 0 | 0 | — |
case-13 | pass→pass | 12,130 | 8,228 | -32% | 1 | 1 | 0% | 1,053 | 1,359 | +29% | 0 | 0 | — |
case-14 | fail→pass | 12,975 | 8,759 | -32% | 1 | 1 | 0% | 1,212 | 1,441 | +19% | 0 | 0 | — |
case-15 | pass→pass | 12,409 | 10,041 | -19% | 1 | 1 | 0% | 1,269 | 1,753 | +38% | 0 | 0 | — |
case-16 | pass→pass | 7,825 | 7,452 | -5% | 1 | 1 | 0% | 427 | 1,191 | +179% | 0 | 0 | — |
case-17 | fail→pass | 18,960 | 10,513 | -45% | 1 | 1 | 0% | 2,206 | 1,746 | -21% | 0 | 0 | — |
case-18 | pass→pass | 9,286 | 7,548 | -19% | 1 | 1 | 0% | 771 | 1,242 | +61% | 0 | 0 | — |
case-19 | pass→pass | 16,274 | 8,218 | -50% | 1 | 1 | 0% | 1,680 | 1,342 | -20% | 0 | 0 | — |
case-20 | pass→pass | 15,806 | 15,138 | -4% | 1 | 1 | 0% | 1,790 | 2,486 | +39% | 0 | 0 | — |
case-21 | pass→pass | 8,851 | 12,500 | +41% | 1 | 1 | 0% | 1,441 | 2,137 | +48% | 0 | 0 | — |
case-22 | pass→pass | 12,965 | 11,996 | -7% | 1 | 1 | 0% | 1,585 | 2,122 | +34% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted. The headline lift of +9 percentage points is the difference between those two pass rates over the 22 comparable cases.
The publisher has shipped newer versions since this run, so these numbers describe v2, not the version currently listed.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
| Model | Method | Date | Lift |
|---|---|---|---|
| gemini-3.6-flash | verified | 8/30/2026 | — |
Other measured skills in the registry, with their headline benchmark lift.