Skip to main content
EdgeSpark keeps auth configuration in configs/auth-config.yaml. This file controls sign-up policy, session behavior, email/password auth, and which OAuth providers are enabled.

Pull, inspect, and apply config

Start from the live project config:
Edit configs/auth-config.yaml, then apply it:
Use edgespark auth get --json when you want the current applied config in machine-readable form.

Typical development flow

When you change auth configuration, use this order:
  1. Run edgespark auth pull if you want to start from the current live config.
  2. Edit configs/auth-config.yaml.
  3. If you are enabling a social OAuth provider, prepare the provider app, redirect URLs, client ID var, and secret first.
  4. Run edgespark auth apply.
  5. Run edgespark deploy so your app uses the updated auth behavior.
For OAuth providers, that usually means:
  • set the client ID with edgespark var set ...
  • set the client secret with edgespark secret set ...
  • reference those keys from configs/auth-config.yaml

Example config

configs/auth-config.yaml

What each section controls

Keep OAuth values out of the YAML file

For step-by-step walkthroughs of creating the provider OAuth app, entering the callback URL, and storing the client ID and secret for each of Google, GitHub, GitLab, and Discord, see add social OAuth login. configs/auth-config.yaml can reference vars and secrets, but it should not contain sensitive secret values. For OAuth providers: Set those inputs with the CLI:
When you run edgespark secret set, the secret value never goes through terminal output, agent context, or third-party LLM APIs such as Anthropic, Google, or OpenAI. EdgeSpark opens a secure browser URL so the human owner can enter the value directly.

How this affects your frontend

The managed auth UI in @edgespark/web reads the applied config automatically. After you apply and deploy:
  • enabled OAuth providers appear automatically
  • disabled providers disappear
  • sign-up availability follows disableSignUp
  • verification and password-reset flows follow the email/password config
That lets you keep auth policy in one file instead of hard-coding it into your frontend.

Troubleshooting

  • If edgespark auth apply fails, check for unknown fields or wrong fixed ref names such as GOOGLE_CLIENT_SECRET.
  • If validation errors mention unsupported or newer fields, compare your file against https://schemas.edgespark.dev/v1/auth-config.schema.json and update the CLI with npm update -g @edgespark/cli.
  • If a provider is enabled but login still fails, make sure both the var and secret exist in the target environment.
  • If the UI still shows old provider settings, deploy after applying the config.

See also

Build auth UI

Use the managed @edgespark/web auth UI so provider and sign-up settings flow straight from project config.

Development workflow

See where auth config fits into the repo-based loop for schema, storage, vars, secrets, and deploys.
Last modified on April 16, 2026