Oxide Terminal documentation
Oxide Terminal is a native macOS terminal emulator written entirely in Rust — GPU-rendered, with a file-tree drawer you drive like vim and a status bar that knows where your shell is. These pages cover how to install it, how to use it, and every key you can put in its config file.
Installation
Download the notarized DMG, or build from source.
Configuration
Every key in config.toml, with defaults.
Keybindings
The full built-in keymap, grouped by context.
What Oxide is
Oxide is one Rust binary. Rendering and window management come from GPUI, Zed's GPU UI framework; the PTY and VT parsing come from alacritty_terminal, the engine behind Alacritty. Everything on top — the drawer, tabs, splits, workspaces, the prompt compiler, the status bar — is Oxide's.
The PTY reader and parser run on their own thread and mutate a shared terminal grid; the main thread locks it briefly during paint, copies the visible grid out, and paints batched text runs directly. Directory scans, git queries, and file watching happen on a background pool, so a slow repository never stalls typing.
It is macOS-only today. A Linux port is sketched out but not built.
Requirements
- macOS 12 or later, Apple Silicon or Intel
-
No font install needed — JetBrainsMono Nerd Font Mono is bundled
into the binary, so powerline separators and tree icons render on a
machine with nothing installed. Set
font.familyto use your own. -
zshorbashif you want the built-in prompt and shell integration. Other shells run fine; they just keep their own prompt.
Quick start
- Install from the DMG and open Oxide. It is Developer ID signed and notarized, so there is no right-click-to-open dance.
-
A fully commented config file is written to
~/.config/oxide/config.tomlon first run. Open it from inside Oxide with cmd-,. -
Press cmd-b to toggle the drawer and
ctrl-w t to focus the file tree. Inside the tree, bare
vim keys work: j k l h,
/ to filter, c to re-root there (which
cds the shell too). - Press cmd-alt-t to flip through themes with live preview; enter writes the choice to your config.
- cmd-t for a tab, ctrl-w v for a split, ctrl-w p for the workspaces panel.
Font and color changes apply the moment you save the config file.
[shell] and [prompt] changes apply to
newly started sessions.
Using Oxide
Terminal & scrollback
Selection, search, prompt jumping, URLs, mouse.
File tree drawer
vim navigation, filtering, add / rename / delete.
Tabs & splits
An in-app tab bar and freely nested panes.
Workspaces
Named layouts, pinned ones survive a restart.
Prompt & shell integration
A powerline prompt from TOML, and OSC 133 marks.
Themes
Eight presets, a picker, per-color overrides.
Where Oxide keeps things
| Path | What it is |
|---|---|
| ~/.config/oxide/config.toml |
Your configuration. Generated, fully commented, on first run.
Override the location with the
OXIDE_CONFIG environment variable.
|
| ~/.cache/oxide/ |
Generated shell-integration scripts, the silent-cd
target file, pinned workspace state, and the last window
geometry. Safe to delete; Oxide rebuilds it.
|
| ~/.cache/oxide/workspaces.json | Pinned workspaces — layout, tabs, splits, directories. |
| ~/.cache/oxide/zdotdir/ | The zsh shim that sources your real dotfiles before layering Oxide's hooks on top. Your own files are never modified. |
Getting help
Troubleshooting covers the usual suspects — missing glyphs, config errors, a prompt that didn't change — along with the current known limitations. Beyond that, open an issue on GitHub; Help → Report an Issue in the menu bar goes to the same place.