warpdotdev/warp · error

Cannot list agents: authorization required but no auth flow

Error message

Cannot list agents: authorization required but no auth flow provided

What it means

The GitHub auth-status check said authorization is required, but the response carried no auth_url (the match's `_` arm at app/src/ai/agent_sdk/agent_config.rs:199 — both the (Some, Some) polling branch and the (Some, None) print-URL branch need an auth_url). The CLI therefore has no flow to offer and force-terminates. It indicates a server/client contract mismatch or an integration state the CLI cannot self-heal.

Source

Thrown at app/src/ai/agent_sdk/agent_config.rs:199

                                        ctx.terminate_app(
                                            TerminationMode::ForceTerminate,
                                            Some(Err(anyhow::anyhow!(
                                                "Error polling OAuth status: {err}"
                                            ))),
                                        );
                                    }
                                }
                            });
                        }
                        (Some(auth_url), None) => {
                            println!("\nAuthorize access here: {auth_url}\n");
                            println!("After authorizing, please re-run this command.");
                            ctx.terminate_app(TerminationMode::ForceTerminate, None);
                        }
                        _ => {
                            ctx.terminate_app(
                                TerminationMode::ForceTerminate,
                                Some(Err(anyhow::anyhow!(
                                    "Cannot list agents: authorization required but no auth flow provided"
                                ))),
                            );
                        }
                    }
                }
                Err(e) => {
                    ctx.terminate_app(
                        TerminationMode::ForceTerminate,
                        Some(Err(e.context("Failed to check GitHub auth status"))),
                    );
                }
            }
        });
    }

    fn fetch_and_display_agents(&self, repo: Option<String>, ctx: &mut ModelContext<Self>) {
        let ai_client = ServerApiProvider::handle(ctx).as_ref(ctx).get_ai_client();

View on GitHub (pinned to e72fd7aacb)

Solutions

  1. Authenticate the GitHub integration from the Warp app settings, which runs the full flow, then re-run the command
  2. Update to a current build to remove version skew with the integrations API
  3. Run the list command without --repo (it skips the GitHub auth check) to confirm the rest works
Defensive patterns

Strategy: validation

Validate before calling

// Before scripting `list --repo`, confirm the integration already reports authorized
// (via the integrations client) so the no-auth_url path is never exercised.

Prevention

When it happens

Trigger: Server returns an auth-required status without an auth_url in the payload; an older client not understanding a newer response shape; the integration stuck in a broken server-side state.

Common situations: Client/server version skew; partial integration state after a revoked grant; environments where the integrations API behaves differently.

Related errors


AI-assisted analysis of warpdotdev/warp@e72fd7aacb (2026-08-16). Data as JSON: /api/errors/8bd2508ada383aee. Report an issue: GitHub.