Switch Your Mac to zsh

Macs have used zsh as their standard shell since 2019. But if your account was migrated from an older Mac — or you've been upgrading the same machine for years — your account may still be set to the old default, bash. Everything mostly works, until a setup command assumes zsh and quietly does nothing.

Check which shell you're on

Open the terminal and look at the end of the prompt line:

  • Ends with % — you're on zsh. No need to switch, you're done here.
  • Ends with $ — you're on bash.

Another giveaway: bash prints this notice every time it starts on a Mac:

The default interactive shell is now zsh.
To update your account to use zsh, please run `chsh -s /bin/zsh`.

Switch to zsh

Run the command Apple suggests:

chsh -s /bin/zsh

It asks for your Mac password (the one you use to log in on reboot). You won't see characters as you type — that's normal. Press Enter when done.

How to read the result:

  • No message at all — success.
  • chsh: no changes made — your account is already set to zsh. Also success.
  • Credentials could not be verified — password typo. Try again, slowly.

Prefer clicking over typing? Open System Settings → Users & Groups, Control-click your user name, choose Advanced Options…, and set Login shell to /bin/zsh.

Restart VS Code completely

Open terminals keep running the old shell, and VS Code remembers the environment it started with. Quit VS Code fully with ⌘Q · Alt+F4 — not just closing the window — then reopen it. New terminals will show the % prompt.

echo $SHELL may still print /bin/bash until you log out of your Mac and back in. That's a leftover label from your current login session, not the shell that's actually running. Trust the % prompt.