Every Supabase account, one terminal.

The Supabase CLI only remembers one login. sbx remembers all of them and switches to the right account when you cd into a project.

git clone https://github.com/m2ximus/supa-cli.git ~/supa-cli && ~/supa-cli/install.sh

Runs on macOS with zsh and the Supabase CLI. Everything installs and runs on your own machine.

Set it up

  1. Install

    Paste the command above into Terminal, then open a new tab.

  2. Add each account

    Run sbx add work and paste an access token from your Supabase account page. Repeat for every account.

  3. Use supabase as normal

    In a linked project, sbx finds which of your accounts owns it. Run sbx status any time to see which one it picked.

Where your tokens go

The whole tool is one readable shell script. Read the source on GitHub.

Questions

What do I need first?

macOS 15 or later, zsh (the macOS default), git, and the Supabase CLI. You can install the CLI with brew install supabase/tap/supabase.

Where do I get a token?

Log in to Supabase as the account you want to add, open the access tokens page, click Generate new token, and copy it. It starts with sbp_.

I pasted my token and nothing appeared

That's intended. The prompt hides what you type. Paste once and press Enter.

How do I add a second account?

Log out of the Supabase dashboard, log in as the other account, make a token there, and run sbx add with a different name, like sbx add client-x.

"command not found", or supabase isn't switching accounts

Open a new terminal tab. The installer's changes only load in new tabs. If it still fails, check that ~/.local/bin is on your PATH.

How do I know which account was used?

Each supabase command first prints sbx → account (reason). Run sbx status in any folder to check without running anything.

It says "no account for this folder"

The folder isn't linked to a Supabase project and you haven't set a default. Run supabase link in the project, pin it with sbx pin name, or set a fallback with sbx default name.

It says "no saved account owns project"

None of your saved accounts can see that project. Add the account that owns it with sbx add, then try again.

It says "token rejected by Supabase API"

The token was mistyped or revoked, or you're offline. Make a new token and try again.

Is it safe to paste my token?

Only into the hidden sbx add prompt. Never paste tokens into chats, websites, issues or screenshots. You can revoke a token any time on the tokens page.

How do I remove an account or uninstall?

sbx remove name deletes that account's token from your Keychain. To uninstall, remove every account, delete the eval "$(sbx init zsh)" line from ~/.zshrc, then run rm ~/.local/bin/sbx && rm -rf ~/.config/sbx ~/supa-cli.

Does it work on Linux or Windows?

No. It relies on the macOS Keychain.