The administrator account

How the first manager account is created, what it can reach, and how it differs from a project's own users.

What the admin account is

The administrator is a manager account, not a project user. It signs in to the dashboard, owns the projects it creates, and can reach every project through the front door. Project auth users are a different store: they belong to a managed Supabase project's own authentication service and never sign in to the manager.

The first administrator is seeded from ADMIN_EMAIL and ADMIN_PASSWORD at first boot. If the password is empty, the backend generates one and writes it to a file beside the manager database, logging only the path. Setup normally generates and prints the credential instead.

First sign-in

  1. Run setup

    npm run setup writes the environment file and prints the administrator email and password once.

  2. Copy the password

    Store it before closing the terminal. It is not printed again.

  3. Sign in

    Open the dashboard and use the seeded account.

  4. Change the password

    Use Profile Settings to set a password you will remember, or keep the generated one in a password manager.

  5. Create the accounts you need

    Admin users can create further manager accounts and assign roles from the admin area.

Roles and lifecycle

Manager users carry a role. Administrator access reaches admin settings and every project; a regular account reaches its own projects. Accounts can be deactivated without being deleted, which keeps their records while stopping sign-in. Deleting an account is a separate, confirmed action. Sessions are signed tokens with a token version, so a change that invalidates sessions is possible without deleting the account.

If you lose access

If the password is lost and no other administrator exists, stop the manager, set ADMIN_PASSWORD in the environment file, and start it again against a fresh manager database only as a last resort. For an existing database, the supported recovery is to keep another administrator account or to restore the manager database from a backup. The manager database decides which accounts exist; the environment seeds it only on first boot.

If the signing key is rotated, existing sessions become invalid. That is the intended effect of a rotation, not a bug.

Variables involved

<code>ADMIN_EMAIL</code>
Email of the seeded administrator.
<code>ADMIN_PASSWORD</code>
Password of the seeded administrator; generated if empty.
<code>JWT_SECRET</code>
Signs manager sessions; required and at least 32 characters.
<code>VAULT_MASTER_KEY</code>
Protects stored secrets; required and at least 32 characters.
Keep at least two administrator accounts on a machine you rely on. A single account plus a lost password is a manager database recovery, not a password reset.