Skip to content

Latest commit

 

History

History
226 lines (169 loc) · 5.84 KB

File metadata and controls

226 lines (169 loc) · 5.84 KB

CLAUDE.md

Context for Claude Code across two development machines.


Machine: Bazzite (Fedora Kinoite) Linux

Primary Use: Development, containers, streaming

Shell

  • Shell: bash (drop-in configs via ~/.bashrc.d/)
  • Prompt: starship (minimal, single line)
  • Config: ~/.bashrc sources ~/.bashrc.d/*.sh — reload with source ~/.bashrc
  • Package managers: brew (Linuxbrew), flatpak, rpm-ostree (system)

Runtimes (mise)

Single tool replaces fnm/pyenv/SDKMAN:

mise list                    # show installed
mise use node@22             # project-local
mise use --global python@3   # global default
mise current                 # show active versions

Current: Node 24 (LTS), Python 3.14, Java 25 (Temurin), Go 1.26, Ruby 4.0, Rust (stable), Bun 1.3, Deno 2.6, Zig 0.15

Key Aliases

Defined in ~/.bashrc.d/50-aliases.sh and 55-podman.sh.

# Git
gs/ga/gc/gp/gd/gl    # status/add/commit/push/diff/log
gco/gb/gpl            # checkout/branch/pull
gst/gstp              # stash/stash pop
lg                    # lazygit

# GitHub CLI
prc/prl/prv/prco/prm  # pr create/list/view/checkout/merge
iss/isc               # issue list/create
csl/css/csc/csd       # codespace list/ssh/create/delete

# Just (command runner)
j/jl/je/jc            # run/list/evaluate/choose
ju                    # global recipes (~/.user.justfile)

# Claude CLI
ai/aic/aim/air        # prompt/continue/haiku/resume

# Emacs
em/et/ek              # gui client/terminal client/kill server

# OBS
stream/rec            # toggle stream/recording (via obs websocket script)

# Tools
ll                    # eza -la
dev                   # cd ~/Development
vim/vi                # nvim
ps                    # procs (process viewer)
dns                   # doggo (DNS lookup)
bench                 # hyperfine (benchmarking)
cat                   # bat
docker                # podman

# Network
ports/myip/localip    # listening ports/public IP/local IP
flushdns              # flush DNS cache (resolvectl)
vpn/vpn-off/vpn-status  # Mozilla VPN control (flatpak)

# Wayland clipboard
clip/paste            # wl-copy/wl-paste

# Taskwarrior
t/ta/tl               # task/add/list
tn/td/tm              # next/done/modify

# Git worktrees
gwt/gwta/gwtl/gwtr    # worktree/add/list/remove

# Identity
keyoxide               # open Keyoxide profile (kevintcoughlin@fastmail.com)

# Podman
pps/pimg/pst/pdf      # ps/images/stats/disk usage
pprune                # prune dangling images
pex <ctr>             # exec bash (falls back to sh)
plog <ctr>            # follow logs with tail
ndev                  # exec into nodedev container

Bazzite-Specific

  • Containers: podman (aliased as docker), quadlet systemd units
  • DNS: NextDNS (f83b54) with DNS-over-TLS/DNSSEC, Cloudflare fallback
  • Dotfiles: chezmoi (chezmoi apply, chezmoi diff, chezmoi git push)
  • Projects path: ~/Development (dev alias)
  • Active projects: mc-dad-server, minecraft-server, sir-android

Updating (Bazzite)

brew update && brew upgrade     # Linuxbrew
flatpak update                  # Flatpak apps
rpm-ostree upgrade              # System (requires reboot)
mise upgrade                    # Runtimes

Other Machine: rogpop16redux (Windows)

Hardware: ASUS ROG Zephyrus G16 — Intel Core Ultra i9-14900HX (24-core x64), NVIDIA RTX 4090 Laptop GPU, 32GB+ RAM OS: Windows 11 Pro Insider Preview (Build 29531) Primary Use: Development, AI/ML (CUDA 13.1), Gaming

Shell

  • Primary Shell: Git Bash (bash) with Starship prompt
  • PowerShell: 7.6 (preview) available
  • Terminal: WezTerm (config at ~/wezterm-config/)
  • Package managers: winget (primary), Chocolatey, pip, cargo, npm

Runtimes

Tool Version Manager
Node.js 24.14.0 LTS fnm
Python 3.12.10 / 3.14 winget
Java 21 (Temurin) winget
Rust 1.94.0 (stable) rustup
Go 1.26.1 mise
Bun 1.3.10 mise
Deno 2.7.4 mise
Zig 0.15.2 mise

Key Tools

Ollama 0.17.4 (local LLMs on RTX 4090), Docker Desktop, CUDA 13.1, uv 0.10.7

Updating (Windows)

winget upgrade --all            # Windows packages
mise upgrade                    # bun, deno, go, zig
rustup update stable            # Rust toolchain
pip install --upgrade <pkg>     # Python packages

Shared Across Both Machines

Modern CLI Tools

Standard Replacement
ls eza (ll, lt)
cat bat
grep rg (ripgrep)
find fd
cd z (zoxide)
top btop
ps procs (ps)
dig doggo (dns)
make just (j, jl)
history atuin (Ctrl-R, local-only)

Editors

  • VS Code / VS Code Insiders: Primary
  • Neovim: lazy.nvim, Tokyo Night, Leader: Space, config at ~/.config/nvim/
  • Emacs: available on Bazzite (em/et/ek)

Wezterm

Leader: C-a

Key Action
C-a | split horizontal
C-a - split vertical
C-a h/j/k/l navigate panes
C-a x close pane
C-a z zoom pane
C-a v copy mode
C-a r reload config

Neovim

Key Action
<leader>ff find files
<leader>fg live grep
<leader>e file explorer
gd/gr/K go to def/refs/hover
<leader>ca code action
gcc comment line

GitHub Workflow

gh search prs --review-requested=@me
iss                   # list issues
prco 123              # checkout PR
gp                    # push
prm 123               # merge
csl / css             # codespaces list / ssh

Quick Capture

inbox "thought"       # add to ~/inbox.txt
inbox                 # view inbox

Reference

Per-machine details in this repo:

  • CLAUDE-windows.md — Windows config (rogpop16redux + kecovo ARM laptop)
  • CLAUDE-linux.md — WSL2/Linux config