Skip to content

Authentication

Authentication connects the runner to your Skippr account. Once authenticated, you get a hosted LLM key by default (no OpenAI account needed), cloud-backed control-plane services, and usage metering.

Quick start

For local development, log in interactively:

bash
skippr user login

You'll verify via SMS. That's it -- you're ready to run pipelines.

What authentication does and does not do

  • Does: authenticate the runner, unlock hosted LLM access by default, and connect the run to Skippr's cloud-backed control plane.
  • Does not: send row-level source data through Skippr's cloud path.
  • By default: AI-assisted modeling uses schema metadata. Data samples are optional and off by default.

CI/CD and automation

Create an API key for non-interactive environments:

bash
skippr user create-api-key --name "github-actions"

The key (prefixed sk_live_) is shown once -- save it securely. Then set it in your CI environment:

bash
export SKIPPR_API_KEY="sk_live_..."
skippr run   # authenticates automatically

No setup scripts, no token refresh logic. skippr run detects the key and handles the rest.

Managing API keys

bash
skippr user list-api-keys
skippr user revoke-api-key --key-id <id>

Details

Auth priority

When skippr run starts, it resolves credentials in this order:

  1. SKIPPR_API_KEY env var -- exchanged for session tokens (CI/CD)
  2. ~/.skippr/credentials.json -- from interactive login

If neither is present, the CLI exits with a clear error.

Credential storage

Interactive login stores tokens in ~/.skippr/credentials.json. These are session tokens, not passwords.

Credits

Every run checks your account balance. If you're out of credits:

bash
skippr user buy-credits --amount 25

See skippr user for all account commands.