Tutorial
Your first 10 minutes with Sinclair
By the end of this you'll have Sinclair installed, a couple of shells running side by side, your favorite theme applied, and the two keystrokes that let you reach every other feature without memorizing anything. No configuration required to start — but you'll edit the config once, just to see how fast it reloads.
On macOS, ⌘ is the modifier. On Linux, read ⌘ as ⌃ (Ctrl) throughout. Every shortcut here maps to an action you can remap — see Keybindings.
1. Install and launch
On macOS, install the Homebrew cask:
brew install --cask wess/packages/sinclair
On Linux, grab the AppImage, .deb, or tarball from the
releases page — full steps
are on the Install page. Open Sinclair and you get one
window running your login shell. That's the whole setup; everything below happens
inside that window.
2. Split the window
Every pane in Sinclair is a full, independent shell. Make a second one beside the first with ⌘D, and a third underneath with ⌘⇧D:
| Do this | Key |
|---|---|
| Split right | ⌘D |
| Split down | ⌘⇧D |
| Move focus between panes | ⌘⌥ + arrow keys |
| Zoom the focused pane (toggle) | bind zoom_split |
Splits are recursive — any pane can be split again — so you can build a column of
logs beside your editor, or a 2×2 grid of servers. Drag a divider to resize, or
nudge it from the keyboard with resize_split. The unfocused panes dim
slightly so the active shell always stands out. Full details:
Tabs, splits & layouts.
Don't split one pane at a time — press the Layouts sidebar
panel and apply a preset like Main + Right or 4-pane Grid to
arrange several shells in a single step. Built one you like by hand? Run
save_layout to keep it.
3. Open tabs
When one screen of splits isn't enough, tabs hold separate workspaces. Open one with ⌘T, jump straight to a tab with ⌘1–⌘9, and cycle with ⌘⇧] / ⌘⇧[. Each tab titles itself after the focused pane's directory (and its git branch, if any), so you can tell them apart at a glance. A background tab that fires a notification grows a small dot until you look at it.
4. Change the theme — live
Open settings with ⌘, and pick from 22 built-in color schemes. The window repaints the instant you choose one — no restart. Prefer to follow your system? Sinclair can track the OS light/dark setting and switch automatically. Everything is also a plain config key, so a theme is one line:
// ~/.config/sinclair/settings.json
{
"theme": "Catppuccin Mocha"
}
You can override individual colors, set transparency, drop in a background image, and enforce a readability contrast floor — see Themes & appearance.
5. Edit the config and watch it reload
Sinclair's settings live in a readable JSON-with-comments file at
~/.config/sinclair/settings.json (or
$XDG_CONFIG_HOME/sinclair/settings.json).
It's watched live: save the file and the change applies immediately,
no relaunch. Try a few:
// ~/.config/sinclair/settings.json
{
"font-family": ["JetBrains Mono"],
"font-size": 14,
"session-restore": true // reopen tabs & splits on next launch
}
A bad line never aborts the load — it becomes a friendly diagnostic and the rest still applies. Every option is catalogued on the Configuration page.
6. The two shortcuts that unlock the rest
These are the ones to actually commit to memory:
| Shortcut | Opens | Use it to |
|---|---|---|
| ⌘⇧P | Command palette | Run any action or plugin command by name — split, theme, record, launch an agent — even if you don't know its key. |
| ⌘P | Quick open | Jump to a tab or pane, or a launch profile. |
Because the palette lists everything, you never have to memorize a keybinding to find a feature — type a few letters and go. That's your escape hatch for the whole rest of the app.
7. Two niceties you'll use constantly
- Autosuggestions. As you type, Sinclair completes your command from history, common commands, and paths as faint ghost text. Accept the whole thing with →. (Optional completion popup, Tab-cycling, and an AI fallback each toggle on their own — see Productivity.)
- Grab the last output. With shell integration on,
copy_command_outputcopies the entire output of the last command between its prompt marks — no selecting by hand.
Where to next
You now know your way around. Two good directions: