Product Release November 13, 2026

convex 1.50.0

convex v1.50.0
David Winer

David Winer

Published on November 13, 2026

Overview

  • Multiple CLI accounts: The CLI can now switch between Convex accounts saved under aliases like work and personal. Log into another account and select it for the current directory with npx convex login --account work --select, then select an account for another directory with npx convex account select work. Your current login becomes the default account. CONVEX_ACCOUNT overrides a directory's selection. Project commands use these selections once the project's convex dependency is on 1.50.0. In projects with an older CLI installed, manage accounts with npx convex@latest. Run npx convex@latest account --help or see the account reference for details.
  • Scheduled mutations can't cancel themselves: Starting with convex 1.50.0, a scheduled mutation that calls ctx.scheduler.cancel on its own scheduled function ID throws ScheduledFunctionCancelingItself. If the error isn't caught, the mutation rolls back and its scheduled function is marked as failed. Older versions keep the previous behavior: the cancellation does nothing and logs a deprecation warning. To end a scheduled mutation early, return from it. See Scheduled Functions.
  • Owner-only credential files: On macOS and Linux, CLI credential files are now readable only by their owner. This includes existing ~/.convex/config.json files and account credentials in ~/.convex/accounts/.
  • Exports without a local download: npx convex export can create an export without downloading it. Omit --path to download it later from the dashboard link, or pass --path to download it right away. Canceled exports are now reported as failures.
  • signJwt types: The types of ctx.auth.signJwt now match what deployments accept. claims is required and must include an aud claim: a non-empty string or a non-empty array of non-empty strings. jti is typed as a string. If you don't pass one, Convex sets a random one.
  • Fixes: - npx convex dev --once --start now fails when the command passed to --start fails. - npx convex dev --once --skip-push no longer leaves a local backend running after it exits. - Child component import paths in a component's _generated/api.ts now point to the right directory.

convex@1.50.0 on npm

Included Features (1)

#332
Support signin in to multiple accounts in the CLI

I have many convex projects in different convex accounts (personal, work, university). I currenlty cannot easily work on them simultaneously because I need to log out from one first to log into the other. This is partially solved by creating a deployment key using the api but there isn't any quick way of handling multiple dev deployments in the same machine from different accounts at the same time. I would be nice to be able to log in into multiple accounts at the same time in the CLI and choose (or it can be automatic) what account to use in what project locally.

255 (8)
Completed