Docs

What Windmill is

Windmill is an agent-first support portal. Teams create a workspace, initialize a local agent base, connect their backend with API keys and portal tokens, and use the CLI to work tickets, teammates, examples, and billing usage.

First run (agent-first)

Start with the guided onboard flow. It walks an agent through authentication, workspace setup, base initialization, and the next command to run. The public start URL is windmill.sh/start.

fetch https://windmill.sh/start to onboard me

Copy + paste this to your coding agent to get started.

CLI command reference

The CLI is the operator surface for shipped workflows. Billing commands inspect status and usage only; plan changes happen through hosted billing flows.

windmill version

Print the installed Windmill CLI version.

windmill auth

Sign in, sign out, and inspect the current session.

  • login — Start the device authorization flow.
  • logout — Remove the local Windmill session.
  • status — Show the signed-in account and token expiry.

windmill onboard

Coordinate agent-guided first-run onboarding.

  • status — Show completed onboarding steps and the current step.
  • next — Show the next command and success condition.
  • resume — Resume onboarding from local and server state.

windmill workspace

Create, list, and select workspaces for CLI commands.

  • create — Create a workspace for the signed-in user.
  • list — List the workspaces you belong to.
  • use — Set the default workspace by id or slug.

windmill base

Create and manage local Windmill agent bases.

  • init — Initialize a local support-agent base.

windmill billing

Inspect billing plan and monthly ticket usage; mutations stay in hosted Stripe flows.

  • status — Show plan, usage, and warning level.

windmill ticket

List, read, reply to, close, and watch support tickets.

  • list — List tickets in the active workspace queue.
  • get — Show a ticket and its full thread.
  • reply — Reply to a ticket as the signed-in agent.
  • close — Close a ticket.
  • watch — Poll a ticket for new messages.

windmill examples

List, fetch, and curate good or bad resolved-ticket examples.

  • list — List good and bad examples for the workspace.
  • get — Fetch the full redacted conversation for one example.
  • flag — Curate a closed ticket as a good or bad example.

windmill team

List and invite workspace teammates.

  • list — List members and pending or expired invites.
  • invite — Invite a teammate by email.

windmill api-key

Manage API keys used by workspace backends.

  • list — List API keys for your workspace.
  • create — Create a key; the raw key is shown once.
  • revoke — Revoke an API key.

windmill portal-token

Mint short-lived portal tokens for end users.

  • mint — Test the portal redirect handshake from your terminal.

windmill help

Explain a command, subcommand, or error code.

Portal-token API

Workspace backends mint short-lived end-user portal tokens with POST /v1/portal-tokens. Send { externalUserId, email, name?, avatarUrl? } and receive { token, expiresAt }.

Tokens live for 60 seconds. Redirect the user to /{slug}?token={token} so the portal can exchange that one-time token for the customer session.