# [[Cursor-VSCode Terminal shell fix]]
_Created: 2025-12-06_ | #editor/cursor #editor/vscode | [[020 Programming MOC|Programming]]
## Problem
Cursor (and VS Code) integrated terminals default to `/bin/bash` (on my Mac, version 3.2.57) instead of respecting the user's configured default shell, even when:
- `$SHELL` is set to a different shell (e.g., `/opt/homebrew/bin/bash`)
- The shell is properly configured via `chsh -s`
- The shell is listed in `/etc/shells`
### Symptoms
- `echo $BASH_VERSINFO` shows `3` instead of `5+`
- Bash completions from Homebrew `bash-completion@2` don't work (requires bash 4.2+)
### Why This Happens
- VS Code/Cursor don't automatically read from macOS user database or `$SHELL`
- Particularly common where user uses modern Homebrew shells in `/opt/homebrew` instead of `/usr/local`
## Solution
Add to Cursor/VS Code settings (`settings.json`):
```json
"terminal.integrated.defaultProfile.osx": "bash",
"terminal.integrated.profiles.osx": {
"bash": {
"path": "/opt/homebrew/bin/bash",
"args": ["-l"]
}
}
```
**NOTE**: Replace `/opt/homebrew/bin/bash` with your desired shell path (e.g., `/opt/homebrew/bin/zsh`, `/bin/zsh`, etc.)
After Applying Fix in a new editor terminal verify that `echo $BASH_VERSINFO` should show correct version.
## Related Issues
- https://github.com/microsoft/vscode/issues/145233 - Integrated terminal does not honour system `$SHELL` on macOS