# The toolbox

> Every tool and app the reference workstation installs and configures, what each is for, and the keys that matter.

zc-workstation does not choose your tools; your config does. This section describes the setup it was built for: a macOS developer workstation for Go, Java, Vue and Flutter work with Claude Code at its centre. Each page says what a tool is for, how the workstation sets it up, and the keys and commands worth knowing. Take what you like into your own Brewfile.

Every tool here is declared in a Brewfile or `mise.toml` with a comment saying why it is there, so `zc-workstation list` shows the same reasons:

```console
$ zc-workstation list -kind cask,brew
```

The colours, terminal, prompt and bar themes live in this repository under `assets/theme`. The shell, git, app settings and keyboard config live in a private config repository, applied by the `dotfiles` provider. See [A new Mac in one command](../new-machine.html) for that layout.

## How the pieces fit

```
Karabiner (Hyper+T)  ->  Ghostty  ->  tmux (dev)  ->  Claude Code | lazygit | zsh
                                                   starship · atuin · fzf · zoxide
SketchyBar  <-  macmon, ZCBar         JankyBorders around the focused window
Raycast     ->  repos, branches, zcbar:// URLs
```

A typical start: Hyper+D opens Ghostty running `dev`, you pick a repository, and tmux opens Claude Code, lazygit and a shell in it. ZCBar in the menu bar says when packages are outdated or something drifted, and ZC Care keeps the disk clean. See [Menu bar app and ZC Care](../app.html).

## Terminal and shell

 
| Tool | What it is for |
| --- | --- |
| 
[Ghostty](ghostty.html)

 | 

Ghostty, the terminal: GPU-rendered, native on macOS, with a drop-down quick terminal.

 |
| 

[tmux](tmux.html)

 | 

tmux, the session manager: panes, windows, popups and the dev layout.

 |
| 

[zsh, antidote and plugins](zsh.html)

 | 

zsh with antidote: the shell, its plugins, aliases and helper functions.

 |
| 

[Starship](starship.html)

 | 

Starship, the prompt: folder, git state, pull request and versions at a glance.

 |
| 

[Atuin](atuin.html)

 | 

Atuin, shell history: searchable, per folder, and free of secrets.

 |

## Command line

 
| Tool | What it is for |
| --- | --- |
| 
[fzf](fzf.html)

 | 

fzf, the fuzzy finder behind completion, the session picker and dev.

 |
| 

[zoxide](zoxide.html)

 | 

zoxide, a smarter cd that learns the folders you use.

 |
| 

[eza](eza.html)

 | 

eza, ls with icons, git status and trees.

 |
| 

[bat](bat.html)

 | 

bat, cat with syntax highlighting and git changes; also the man page pager.

 |
| 

[fd and ripgrep](fd-ripgrep.html)

 | 

fd and ripgrep, fast find and grep that respect .gitignore.

 |
| 

[jq and yq](jq-yq.html)

 | 

jq and yq, query and edit JSON and YAML from the command line.

 |
| 

[Yazi](yazi.html)

 | 

Yazi, a terminal file manager with previews.

 |
| 

[ffmpeg, sox, jpegoptim, pngquant and poppler](media.html)

 | 

Convert and shrink video, audio, images and PDFs.

 |
| 

[just, xh, hyperfine and other helpers](cli-helpers.html)

 | 

Project recipes, HTTP calls, benchmarks, command examples, Python scripts and shell linting.

 |
| 

[GnuPG, oathtool and mailctl](keys-mail.html)

 | 

Signatures, one-time codes and mail accounts kept in a file.

 |

## Git and GitHub

 
| Tool | What it is for |
| --- | --- |
| 
[git, delta, difftastic and git-absorb](git-tools.html)

 | 

git and its helpers: delta diffs, structural diffs, automatic fixups and secret scanning.

 |
| 

[lazygit](lazygit.html)

 | 

lazygit, git in a terminal UI.

 |
| 

[gitleaks](gitleaks.html)

 | 

gitleaks, the secret scanner that runs before every commit.

 |
| 

[GitHub CLI](gh.html)

 | 

gh, GitHub from the terminal: pull requests, issues, Actions and auth.

 |

## Runtimes and dotfiles

 
| Tool | What it is for |
| --- | --- |
| 
[mise](mise.html)

 | 

mise, the runtime manager: Java, Node, Python and Gradle versions.

 |
| 

[chezmoi](chezmoi.html)

 | 

chezmoi, the dotfiles engine behind the dotfiles provider.

 |
| 

[direnv](direnv.html)

 | 

direnv, per-folder environment variables.

 |
| 

[Go, gopls, delve and golangci-lint](go.html)

 | 

The Go toolchain, its language server, debugger and linter.

 |
| 

[jdtls, typescript-language-server and CocoaPods](languages.html)

 | 

The Java and TypeScript language servers, and CocoaPods for Flutter on iOS.

 |

## Containers and data

 
| Tool | What it is for |
| --- | --- |
| 
[Colima, Docker and friends](containers.html)

 | 

Colima, Docker, lazydocker, dive and the Kubernetes tools.

 |
| 

[PostgreSQL, pgcli and TablePlus](postgresql.html)

 | 

A local PostgreSQL 17 server, pgcli and TablePlus.

 |
| 

[Cloud CLIs](cloud.html)

 | 

AWS, Google Cloud, Hetzner, Cloudflare Tunnel, Fly.io, Neon, Supabase and the other deploy tools.

 |

## Desktop

 
| Tool | What it is for |
| --- | --- |
| 
[SketchyBar and JankyBorders](sketchybar.html)

 | 

SketchyBar, the menu bar replacement, and JankyBorders around the focused window.

 |
| 

[Karabiner-Elements and the Hyper key](karabiner.html)

 | 

Karabiner-Elements: Caps Lock as Escape and Hyper, and Hyper shortcuts for apps.

 |
| 

[Raycast](raycast.html)

 | 

Raycast, the launcher, with clipboard history and script commands.

 |
| 

[Google Chrome](chrome.html)

 | 

Chrome, the default browser, with a small set of extensions.

 |
| 

[Everyday apps](everyday-apps.html)

 | 

Shottr, Handy, Bruno, Obsidian, Proxyman, the meeting apps and the fonts.

 |

## Editors

 
| Tool | What it is for |
| --- | --- |
| 
[Visual Studio Code](vscode.html)

 | 

VS Code, the editor, with settings that follow the system theme.

 |
| 

[IntelliJ IDEA and Neovim](editors.html)

 | 

IntelliJ IDEA through JetBrains Toolbox, and Neovim in the terminal.

 |

## AI

 
| Tool | What it is for |
| --- | --- |
| 
[Claude Code and AI tools](claude-code.html)

 | 

Claude Code, Codex, the AI desktop apps, CodexBar, Ollama, and how the workstation wires them in.

 |

## Keeping the Mac well

 
| Tool | What it is for |
| --- | --- |
| 
[btop, macmon and fastfetch](system.html)

 | 

btop, macmon and fastfetch: what the Mac is doing.

 |
| 

[Mac helpers](mac-helpers.html)

 | 

asimov, pam-reattach, mkcert and the other helpers that fix small Mac annoyances.

 |

## The menu bar app

ZCBar and ZC Care are part of zc-workstation itself, not a separate install. The panel shows the Mac’s vitals, the plan, outdated packages, `doctor` findings and services. ZC Care cleans junk and AI clutter, uninstalls apps with their leftovers and finds idle dependencies. See [Menu bar app and ZC Care](../app.html).
