Home Writing Projects Setup CV

Terminal

Everything runs inside tmux. My shell auto-attaches on launch, and I spawn Claude Code panes with a one-line script.

tmux config highlights

The cc script

Creates a new Claude Code pane, names it, and re-tiles the grid. Lives at ~/bin/cc.

#!/bin/zsh
# Usage: cc [name]
# Creates a new Claude Code pane in the current tmux session.
# Falls back to a timestamp if no name is given.

if [[ -z "$TMUX" ]]; then
  echo "Error: not inside a tmux session" >&2
  exit 1
fi

name="${1:-$(date +%H%M%S)}"
tmux split-window -d -c ~ "claude --dangerously-skip-permissions"
pane=$(tmux list-panes -F '#{pane_index}' | tail -1)
tmux select-pane -t "$pane" -T "$name"
tmux select-layout tiled

Auto-attach on shell start

This block in .zshrc ensures every terminal session lands inside tmux. SSH connections create a grouped session so phone and laptop share windows but can view them independently.

if [[ -z "$TMUX" ]]; then
  if [[ -n "$SSH_CONNECTION" ]]; then
    tmux new-session -A -t c -s "remote-$$" \; new-window -n remote 'claude --dangerously-skip-permissions' 2>/dev/null || tmux new -s c 'claude --dangerously-skip-permissions'
  else
    tmux attach -t c 2>/dev/null || tmux new -s c 'claude --dangerously-skip-permissions'
  fi
fi

Navigation cheatsheet

Action Key
Grid view (re-tile)prefix+g
Zoom pane fullscreenprefix+z
Return to gridprefix+z again
Jump to pane by numberprefix+q then number
Next paneprefix+o
Move pane to own windowprefix+!
Kill paneprefix+x then y

Claude Code

Configuration lives in a dedicated repo: MaxGhenis/.claude

Key settings

Skills

11 on-demand skills that load based on conversation context (not preloaded). Examples: Whoop health data, Xero UK accounting, App Store Connect, GCP billing, OpenCollective expenses, Modal/Vercel deployment, agent teams, Slack patterns.

Plugins

Dotfiles

Tracked in a separate repo: MaxGhenis/dotfiles

Contains .tmux.conf, .zshrc, and bin/cc. Kept separate from .claude because these files also include non-Claude config (conda, NVM, Julia, PATH, etc.).

Phone access