The Problem
Antigravity doesn’t seem to properly initialize environment when running shell commands brew, mise, uv, etc., or any other commands related to tools managed by brew or mise. Antigravity claims that brew and mise are not in PATH. However, they are in PATH when running the same commands in a regular terminal, because they are initialized in env variables in ~/.zshrc.
I tried to add ~/.gemini/antigravity/env_init.sh with the following content:
#!/bin/bash
export PATH="/opt/homebrew/bin:/Users/user/.local/bin:/Users/user/.local/share/mise/shims:$PATH"
if [ -x "/opt/homebrew/bin/brew" ]; then
eval "$(/opt/homebrew/bin/brew shellenv)"
export DYLD_LIBRARY_PATH="$HOMEBREW_PREFIX/lib:$DYLD_LIBRARY_PATH"
fi
if [ -x "$HOME/.local/bin/mise" ]; then
eval "$($HOME/.local/bin/mise activate bash)"
fi
This didn’t help, because when it is run under the hood in Antigravity, macOS blocks running brew, mise or any other tools, according to Gemini.
Consequently, Antigravity cannot work with Python envs (.venv) in monorepo projects.
Demo project
I created a tiny monorepo to isolate the problem:
- The project structure:
.
├── .tool-versions
├── .vscode
│ └── settings.json
├── LICENSE
├── Makefile
├── README.md
├── package.json
├── packages
│ └── ts-thingy
│ ├── package.json
│ ├── src
│ │ └── index.ts
│ └── tsconfig.json
├── pnpm-lock.yaml
├── pnpm-workspace.yaml
├── services
│ └── py-thingy
│ ├── .python-version
│ ├── .venv
│ │ ├── .lock
│ │ ├── CACHEDIR.TAG
│ │ ├── bin
│ │ ├── lib
│ │ └── pyvenv.cfg
│ ├── README.md
│ ├── py_thingy
│ │ ├── __init__.py
│ │ └── main.py
│ ├── pyproject.toml
│ ├── pyrightconfig.json
│ └── uv.lock
├── tsconfig.base.json
└── tsconfig.json
Opening the project in VS Code is OK:
- venv is discovered in Python Environments extension sidebar. I can expand it and see dependencies.
- no popups or yellow error buttons,
- the Python interpreter is selected correctly: [py-thingy (3.14.3)]
In Antigravity, the same Python Environments extension fails: when expanding venv → “No environment found, click to create” is displayed.
In status bar: yellow [Select Python Interpreter]
Click it → select services/py-thingy/.venv/bin/python
→ Yellow button stays there +
Popup: Unable to handle /Users/user/.local/share/mise/installs/python/3.14.3/bin/python3.14
Source: Python Environment
Adding services/py-thingy with the command [Add Folder to Workspace…] doesn’t help.
Other findings
In the Python Environments log output, there is an error message:
2026-04-16 23:33:43.035 [info] Pyenv not found, turning off pyenv features. [Error: Python Environment Tools (PET) failed after 3 restart attempts. Please reload the window or check the output channel for details. To debug, run "Python Environments: Run Python Environment Tool (PET) in Terminal" from the Command Palette.
at S.ensureProcessRunning (/Users/user/.antigravity/extensions/ms-python.vscode-python-envs-1.20.1-universal/dist/extension.js:2:535872)
at S.doRefresh (/Users/user/.antigravity/extensions/ms-python.vscode-python-envs-1.20.1-universal/dist/extension.js:2:540575)
at c.workerFunc (/Users/user/.antigravity/extensions/ms-python.vscode-python-envs-1.20.1-universal/dist/extension.js:2:535168)
at o.workFunc (/Users/user/.antigravity/extensions/ms-python.vscode-python-envs-1.20.1-universal/dist/extension.js:2:287619)
at o.start (/Users/user/.antigravity/extensions/ms-python.vscode-python-envs-1.20.1-universal/dist/extension.js:2:286434)]
Python log output is flooded with:
2026-04-16 23:26:41.909 [error] Failure during activation. [Error: Python Environment Tools (PET) is currently restarting. Please try again.
2026-04-16 23:33:43.035 [error] [
'Failed to activate a workspace, Class name = v, completed in 76151ms, has a falsy return value, Arg 1: <Uri:/Users/user/Dev/github/milichev/agy-monorepo-troubleshooting/services/py-thingy/py_thingy/main.py>, Return Value: undefined',
[Error: Python Environment Tools (PET) failed after 3 restart attempts. Please reload the window or check the output channel for details. To debug, run "Python Environments: Run Python Environment Tool (PET) in Terminal" from the Command Palette.
This confirms that the Python Environment Tool is missing from the extension’s installation, which is why neither auto-discovery nor manual selection worked.
