Skip to content
Lobby
Esc
↑↓navigate↵open⌘Jpreview
On this page

Authentication

Sign in to Lobby automation without copying browser cookies or agent capabilities.

Local CLI and MCP

Run browser login once for each Lobby origin:

lobby login

Confirm the terminal code and approve in your browser, then select your account in the terminal. A sole account is selected automatically; --account ID chooses one explicitly. --email EMAIL keeps the legacy interactive email-code flow.

The CLI verifies the identity with Lobby and saves an owner-readable session in the local user’s configuration directory. Browser sign-in is separate. Never copy the saved session into a repository, command argument, MCP configuration, prompt, or another user’s account.

Run lobby logout to revoke the CLI session at Auth and remove it locally. An unsuccessful server logout retains the local credential so you can retry. Sign in again after the session expires. For a non-production deployment, pass the same --site HTTPS_ORIGIN to login and later commands; login and logout also accept --auth-url HTTPS_ORIGIN when that deployment uses another Auth origin.

Inspect the CLI identity

lobby auth status

This reads the saved CLI session and returns site, user (id, email, name), account (id, role), and observedAt. It never creates an account or returns a cookie. A missing local session requires lobby login; HTTP 401 means the session or membership is unavailable. An authentication outage returns an error rather than an empty account.

{"site":"https://lobby.abloatai.com","user":{"id":"user-id","email":"you@example.com","name":"You"},"account":{"id":"account-id","role":"member"},"observedAt":"2026-10-09T12:00:00.000Z"}

observedAt is the response timestamp. Lobby’s existing identity reader can reuse successful session and membership answers for up to five minutes while Auth is rate-limited or unavailable. An explicit denial clears the relevant cached answer. This is not an immediate-revocation guarantee during an outage.

Organizations and invitations

Auth owns organization membership, invitations, acceptance, roles, and account switching. Open Members through Lobby to reach the shared Auth service. Owners and admins can invite; only owners can change member/admin roles. The invited person must accept. A matching email domain does not grant membership.

The CLI has its own session. Switching organizations in a browser does not switch the CLI’s organization. Use lobby accounts list and lobby accounts switch ACCOUNT_ID to choose the CLI account, then lobby auth status to inspect it. Invitation commands are documented in Accounts and Members. When a session has no active organization, Lobby resolves the first organization whose membership Auth proves.

lobby logout revokes only the CLI session, then deletes its local cookie file. Separate browser sessions remain signed in.

Account membership and each person’s GitHub repository permission are checked by the server. A conversation ID selects scope; it does not grant access. Discover authorized IDs with:

lobby conversations list

Inside a Lobby agent

Lobby supplies short-lived, conversation-scoped authority to eligible agents. Commands inherit the account, repository, conversation, run, and actor; omit --site, --conversation, and --repository when the command says scope is inherited. The agent cannot turn that capability into broader or durable access.

Which credential is which?

Credential Owner and purpose
CLI login session Your local CLI and MCP access to Lobby.
Agent capability Short-lived authority for a specific Lobby workspace/run and actor.
Personal MCP OAuth/bearer credential Your upstream provider connection; Lobby brokers explicitly enabled tools for the active sender.
Model provider API key Your OpenAI/Anthropic model billing; it does not authenticate callers to Lobby.
Repository service credential Owner/admin-managed AWS role or environment binding for an approved service or supported diagnostic read.

Use Model Key Connections for private CLI input and status reads. Logging out of the CLI does not disconnect these integrations. Each has its own disconnect/revocation behavior. See identity and access and development environments.

API keys

The member API-key implementation adds cookie-free account and VM-status reads through Better Auth. It requires a coordinated Auth migration and release before deployment. Keys bind one person, account and explicit repositories. Logout does not revoke them. Service accounts and lifecycle writes remain separate work. Cookies and runner capabilities do not authenticate the versioned API.

Was this page helpful?