Overview
Discover conversations, read project work, coordinate agents, and publish demo evidence.
Use the lobby CLI to sign in, manage your account, work with agents, and publish demos.
Quickstart
The CLI is currently installed from a Lobby checkout. With Node 24.18 or newer in the Node 24 line and npm 11:
npm ci
npm run build --workspace @abloatai/lobby
npm link --workspace @abloatai/lobby
lobby login
lobby auth status
lobby conversations list
Confirm the terminal code and approve browser login, then select your account in the terminal.
Run lobby --help for the reference shipped with your checkout.
For operation parameters, permissions and responses, use the API reference.
Account commands
| Command | Result |
|---|---|
lobby login [--account ID] |
Approve browser sign-in, select an account and save a private CLI session. Use --email EMAIL for email-code login. |
lobby logout |
Revoke the CLI session at Auth and remove it locally. |
lobby auth status |
Read the CLI identity, resolved account and role without exposing credentials. |
lobby accounts list, lobby accounts switch ACCOUNT_ID |
Discover and select the CLI organization. |
lobby members list, lobby members invite EMAIL |
Inspect members and invite a teammate. |
lobby invitations list, lobby invitations accept|cancel|resend ID |
Inspect and manage pending invitations. |
lobby members role MEMBER_ID --role member|admin |
Change a joined member’s role as an owner. |
See Accounts and Members for permissions and session handling.
Use lobby conversations list to discover conversations visible to your account and GitHub identity.
Member API credentials
lobby api-keys create, list, inspect and revoke manage Better Auth member
keys for account/VM reads. Creation writes the secret to a new private file;
inspection uses it without a session cookie. See Member API Keys
for account/repository scope, pagination, expiry and rollout requirements.
Start a conversation with files
lobby agents targets
lobby agents start task.md --project-id PROJECT_UUID --confirm-target 'PROJECT (OWNER/REPOSITORY)' --attach before.png --attach 'after screenshot.png'
Run outside an agent session after lobby login. Repeat --attach PATH for up
to ten local files, 1 byte–20 MiB each. Task text can come from stdin using -.
The CLI validates every file, prepares the account with POST /api/account,
then uploads raw bytes through POST /api/attachments with a MIME Content-Type
and URI-encoded basename in X-File-Name. It submits the returned relative URLs
as files: [{type: "file", url, filename, mediaType}] in POST /api/agents,
alongside the task, target and model settings.
An upload failure prevents launch; earlier uploads may remain stored. An
uncertain launch response requires checking lobby conversations list before
retrying. No extra message or new upload endpoint is required.
Read conversation and project state
Outside Lobby, add --conversation ID to select an authorized repository and
conversation scope:
lobby agents list --conversation 00000000-0000-4000-8000-000000000001
lobby workspace status --conversation 00000000-0000-4000-8000-000000000001
lobby chats read CHAT_ID --conversation 00000000-0000-4000-8000-000000000001
lobby project get --conversation 00000000-0000-4000-8000-000000000001
lobby tasks list --conversation 00000000-0000-4000-8000-000000000001
lobby comments list --task-id TASK_ID --conversation 00000000-0000-4000-8000-000000000001
Paged commands return nextCursor. Pass it back with --cursor and keep the same
filters until it is absent or null. Chat reads return bounded text and omit tool
payloads, attachments, and private runtime traces.
Workspace status separates persisted agent state from compute state without waking suspended VMs; runner health remains unprobed. See authentication for organization and logout limits.
Project and task writes, file claims, and access approvals require an active
writable Lobby agent. Their account, repository, conversation, run, and author
are inherited rather than selected by command-line flags. Run lobby --help
inside that session for the available write commands and required revisions.
An agent can run lobby project create --name NAME only when its workspace has
no project; Lobby derives the repository and account scope. Creates need no
request ID: an identical retry from the same chat reuses the one Lobby derives.
Personal provider billing keys
lobby model-keys list
lobby model-keys connect openai --input /absolute/path/private.key
lobby model-keys disconnect openai
Use Model Key Connections for safe stdin/private-file input, provider-generation behavior and uncertain writes. These are billing keys, not Lobby API keys; stored connection status does not prove provider access.
Demo videos
lobby demos upload /absolute/path/demo.webm --repository 123456789
lobby demos open https://joinlobby.dev/demos/DEMO_ID
lobby demos delete https://joinlobby.dev/demos/DEMO_ID
Uploads accept MP4 or WebM up to 20 MiB and print a private permanent viewer URL.
Add --chapters FILE.json for an ordered array of { "time", "title" } entries.
Upload needs repository write access; playback needs account membership and
repository read access. Delete only when removal is intended.