jonathan warykowski

Setup

My toolchain: the keyboard, terminal, editor and tools I use every day, on a Linux desktop and a Mac. All of the configuration is in my dotfiles, and where I’ve written about something, it’s linked.

Hardware

ZSA Moonlander
Split ergonomic keyboard; home-row Ctrl, Alt and Super, and layers for symbols, navigation and media.
Mini-ITX desktop
My Linux machine, built in 2025 and running Fedora: a Jonsbo N3 case, ASRock B760M-ITX/D4 WiFi board, Intel Core i5-12400, 16 GB of T-Force Vulcan Z DDR4-3200, a 500 GB Crucial P3 NVMe drive and a SilverStone Extreme 550R SFX power supply.
MacBook Pro
The same setup on macOS, for work.

Desktop

Fedora + i3
Tiling windows on Linux.
AeroSpace + borders
Tiling like i3, on macOS.

Terminal

Ghostty
The terminal, on both machines.
Berkeley Mono
The font everywhere I write code.
lackluster
One muted theme across Neovim, Ghostty, tmux, btop and delta.
herdr
The workspace I run coding agents in, with a tab each for Claude, Neovim, lazygit and a shell.
tmux
Still there, with tpm, for when herdr isn't.

Shell

zsh + znap
The pure prompt, autosuggestions, syntax highlighting and history substring search.
fzf, zsh-z, direnv, fnm
Fuzzy finding, jumping to directories, per-project environments and Node versions.

Editor

Neovim + lazy.nvim
Snacks.nvim (pickers, lazygit), blink.cmp, mini.nvim, mason + lspconfig, conform, treesitter, oil, trouble and neotest.
herdr.nvim
Send the line or selection under the cursor to an agent.
nvim-shepherd
My todo board in a floating window.

Git

delta, lazygit, gh
Readable diffs, a git TUI, and GitHub from the command line.

Command line

eza, bat, ripgrep, fd, yazi, btop, jq
Modern takes on ls, cat, grep and find, a file manager, a system monitor and JSON.
newsboat
RSS in the terminal.

Agents and todos

Claude Code
The coding agent I use most.
shepherd
My todo board, a markdown file that coding agents can work from too.
herdr-gh
Pull request status in herdr's sidebar.
herdr-pomodoro
A pomodoro timer in the sidebar, prompt and Neovim statusline.
herdr-zsa-lights
My keyboard lights up when an agent needs me.

Dotfiles

dotfiles
All of the above, shared between Linux and macOS with GNU Stow, plus install scripts for both.