Xonsh
A cross-platform shell whose language is a superset of Python 3 with shell commands built in.
These buttons open the developer's own site, repository or store listing in a new tab. wares.gg does not host downloads.
1 more ways to get Xonsh
Package managers
- Homebrew
brew install xonsh
About Xonsh
Xonsh (pronounced "consh") is a shell that combines Python and traditional shell use. You can run commands, build pipelines and redirect input and output as in a Unix shell. You can also write Python expressions, import modules and use third-party libraries in the same session, for example to process command output directly in Python.
It runs on Linux, macOS, Windows, BSD, Android, Raspberry Pi and Nix, and inside Jupyter. Extensions called xontribs add features such as output search and argument completion.
Strengths
- Python code and shell commands mix in one language
- Access to the full Python library ecosystem from the prompt
- Runs on Linux, macOS, Windows, BSD and Android
- Extensible through xontrib plugins
Limitations
- Syntax differs from POSIX shells, so existing Bash scripts need changes
- Most useful to people who already know Python
Details
- Pricing
- FreeFree to use, with optional sponsorship through GitHub Sponsors.
- License
- Open source, license not stated
- Developer
- The Xonsh contributors
- Platforms
- Windows, macOS, Linux, Android, Command line
- How it runs
- Downloadable app
- Account
- Not required
- Works offline
- Yes
- Best suited for
- Python users who want to script and work at the command line in one language
- Categories
- Terminals, CLI tools, Developer tools
- Last verified
- Added
- Provenance
- Facts checked against the developer's own pages and store listings, 1 sources on file.
Alternatives to Xonsh
Compare allSoftware that can replace Xonsh for an important use case, and what changes if you switch.
Nushell
Shell that pipes structured tables instead of untyped text.
Nushell pipes structured tables instead of mixing in Python, behaves the same on Windows, macOS and Linux, and its language still breaks between releases.
fish
A shell that autosuggests commands from your history, highlights syntax as you type and has tab completions that work without configuration.
fish gives autosuggestions and highlighting with no configuration, but uses its own language rather than Python and has no official Windows build.
Zsh
Interactive shell with powerful completion, globbing and prompt theming.
Zsh offers powerful completion and globbing in a conventional shell language, without Xonsh's Python integration, and runs on macOS and Linux.
Elvish
A scripting language and interactive shell with data structures and built-in interactive features.
Elvish provides its own scripting language with lists, maps and early error checks, shipped as a single static binary instead of relying on Python.
Murex
A command-line shell with native support for JSON, YAML, CSV and other structured data.
Murex handles JSON, YAML and CSV natively with error handling and unit tests for scripts, but runs only on macOS and Linux.
Oils
A Unix shell project combining OSH, a bash-compatible shell, and YSH, a new shell language.
Oils runs existing bash scripts through OSH and offers the newer YSH language, keeping bash compatibility that Xonsh lacks, though still pre-1.0.
Similar software
Related functionality, not necessarily a direct replacement.
Starship
A shell prompt that shows the git branch, language version and other context, configured once and working in every shell.
McFly
Replaces the shell's Ctrl-R history search with context-aware suggestions.
ble.sh
A line editor written in pure Bash that adds syntax highlighting, autosuggestions and vim modes.