Orbit for VS Code
Understand and trust your Python code, especially code an AI wrote for you.
Orbit is a free, offline-first coding companion for people learning Python. It explains errors
in plain words, suggests fixes you approve, checks AI-written code for invented packages, leaked
secrets and risky calls, and explains code line by line. It works without AI. When you turn AI
on, a model on your own computer (Ollama) is the default.
What you get
- Run with explanations. Press ▶ Run (or
Ctrl+Alt+R). Output streams into the Orbit
panel. If the program crashes, you see what happened, why, and how to fix it, plus a
red squiggle on the line that failed.
- Fixes you approve. When Orbit knows a fix, it shows the diff. Nothing changes until you
press Apply fix and confirm. You can undo with
Ctrl+Z.
- Orbit Check. Finds invented or misspelled packages, deprecated calls, leaked API keys,
eval, shell=True and other risky code. Problems appear as squiggles, in the Problems view
and in the panel. Quick fixes (the light bulb) apply Orbit's safe fixes.
- Checks as you type. Offline checks run while you type; on save Orbit also asks PyPI
whether your imports exist (only package names are sent; turn it off with
orbit.network).
- Explain This. Select code and press
Ctrl+Alt+E, or hover a line and click Explain this
line / Explain this function. Explanations come from your AI model and are always
labelled as AI output.
- Programs that ask for input. Terminal runs the file with
orbit run in a terminal, so
input() works.
- Run on save.
Orbit: Toggle Run on Save reruns the last file every time you save it, like
orbit watch.
- Your Orbit theme. The panel uses the theme you picked with
orbit theme use …. In VS
Code's high-contrast themes, VS Code's colours win. With game mode on, the panel shows the XP,
badges and ranks you earn.
Requirements
Orbit's engine is the orbit-dev Python package. Install it, with editor support, into the
Python you use in VS Code:
python -m pip install "orbit-dev[lsp]"
If it's missing, the Orbit panel shows the exact command for the Python you selected and can
type it into a terminal for you (you press Enter).
The Python extension is
recommended: Orbit uses the interpreter you select there. AI explanations need a provider; run
orbit ai status in a terminal to see what to install.
Commands
| Command |
What it does |
| Orbit: Run File with Orbit |
Run the file in the Orbit panel (Ctrl+Alt+R) |
| Orbit: Run File in Terminal (for input()) |
Run it with orbit run in a terminal |
| Orbit: Stop the Running Program |
Stop it (the whole process tree) |
| Orbit: Orbit Check (workspace) |
Check every Python file in the workspace folder |
| Orbit: Orbit Check (this file) |
Check only this file |
| Orbit: Explain This |
Explain the selected lines with AI (Ctrl+Alt+E) |
| Orbit: Toggle Run on Save (watch mode) |
Rerun the last file whenever you save it |
| Orbit: Show the Orbit Panel |
Open the panel |
| Orbit: Restart Orbit |
Restart Orbit's language server (after installing or upgrading) |
Settings
| Setting |
Default |
What it does |
orbit.server.command |
[] |
Command that starts Orbit's language server. Empty: the selected Python, then orbit on your PATH |
orbit.python |
(empty) |
Python that runs your code. Empty: the interpreter selected in the Python extension |
orbit.checkOnType |
on |
Check the file while you type (offline checks only) |
orbit.network |
on |
On save, ask PyPI whether imported packages exist (only package names are sent) |
orbit.linters |
on |
Include ruff's checks when ruff is installed |
orbit.hoverExplain |
on |
Show Explain this line / Explain this function links on hover |
orbit.runOnSave |
off |
Rerun the last file you ran every time you save it |
orbit.level |
(empty) |
beginner or expert. Empty: your Orbit setting |
Privacy
Your code stays on your computer. The extension talks only to Orbit's language server, which
runs locally. Orbit sends code somewhere only when you ask it to explain code and you chose
a cloud AI provider (orbit ai use anthropic, for example); even then it sends only the lines
being explained. Orbit Check's PyPI lookup sends package names, never code.
Orbit runs your program like Python does. It isn't a sandbox: only run code you trust.
License
MIT