Basilisk for VS Code
English · 简体中文
The open-source Pylance replacement.
The only Python type checker with a perfect 100% score on the official python/typing conformance results.
Complete language server, type checker, debugger, and profiler — strict by default. Built in Rust — single bundled binary, no runtime.
Website •
Quick Start •
Rules •
Conformance •
GitHub
100.0% PEP conformance — 141 of 141 tests in the official
python/typing
conformance suite, scored on the wheel-installed CLI in its default config by the real upstream harness. The only checker on the board at 100%.
The only 100% checker — and the fastest
Basilisk is the only Python type checker with a perfect score on the official
python/typing conformance suite:
100.0% (141/141 files, 970 required errors caught, 0 false positives),
measured by the real upstream harness on the wheel-installed CLI in its default config.
And it is the fastest checker we’ve measured — median cold full-file check, from scratch:
| Type checker |
Median cold check |
| ⚡ Basilisk |
12 ms |
| zuban |
27 ms |
| ty |
37 ms |
| Pyrefly |
145 ms |
| Pyright |
568 ms |
| mypy |
588 ms |
Median cold full-file check across 26 single-construct typing-spec stress fixtures on an Apple M4 Max — lower is better; inside the editor a warm re-check is faster again. Every figure is produced by hyperfine and committed per machine, so nothing here is hand-typed. Clone the repo, run make bench on your own hardware, and send us the CSV — independent audits are welcome. Full benchmarks & methodology →
Everything in one extension
One extension replaces Pylance and gives you the whole workflow — no Node.js, no Python runtime, no pip, no npm. A single bundled Rust binary drives it all:
- Strict-by-default diagnostics — inline as you type, incremental analysis powered by Salsa (the rust-analyzer engine)
- Autocomplete, hover, go-to-definition, find references, rename
- Refactoring code actions — extract, inline, move symbol, organize imports
- Integrated debugging — F5 to debug via bundled debugpy; no separate extension
- Integrated profiling — CPU heat map, flame graph, and a memory dashboard with leak detection
- Activity panel — module tree with per-module type-health coverage, plus feature toggles
- Inlay hints and Ruff formatting/import-organization, built in
Every diagnostic teaches: rustc-style output with a help, a note, and a link to a per-rule explainer, so a red squiggle always tells you why. Other checkers default to permissive; Basilisk starts strict and stays strict.
Zero install
The Basilisk binary is bundled with this extension for macOS (Apple Silicon), Linux (x86_64, aarch64), and Windows (x86_64, aarch64). Install the extension and go.
Want the basilisk CLI on your PATH too (for CI or the terminal)? brew install Nimblesite/tap/basilisk, scoop install basilisk (after scoop bucket add nimblesite https://github.com/Nimblesite/scoop-bucket), or grab a binary from GitHub Releases. Point basilisk.executablePath at it to use your own build.
Acknowledgments
Built on Ruff by Astral (MIT) and typeshed (Apache-2.0); bundles debugpy (Microsoft, MIT). Full notices: NOTICES.
License
MIT.
Built by NIMBLESITE PTY LTD.