# apk_claudetools — CLI toolset that makes Claude Code effective on this host.
#
# Install everything:
#   doas apk add $(sed 's/#.*//' ~/.config/alpine/apk_claudetools | tr -s '[:space:]' ' ')
#
# Install one tier:
#   doas apk add $(sed -n '/^## TIER: high/,/^## TIER:/p' ~/.config/alpine/apk_claudetools | sed 's/#.*//')
#
# Check what is still missing:
#   for p in $(sed 's/#.*//' ~/.config/alpine/apk_claudetools); do \
#       apk info -e "$p" >/dev/null 2>&1 || echo "MISSING $p"; done
#
# Status markers below reflect 2026-08-20. Package names are apk names, not
# binary names (ripgrep provides rg, yq-go provides yq, ncdu2 provides ncdu).


## TIER: core — already installed, listed so a rebuild reproduces this host

ripgrep         # rg — fast recursive search; Claude's primary code-search tool
fd              # fd — fast file find, sane defaults, respects .gitignore
fzf             # fuzzy picker, drives interactive selection in shell helpers
jq              # JSON query/transform; parsing API and tool output
bat             # syntax-highlighted cat with line numbers
git             # version control
curl            # HTTP client
tmux            # terminal multiplexer, session persistence for long agent runs
htop            # process viewer
ncdu2           # ncdu — disk usage explorer
lazygit         # git TUI, fast staging and history browsing
nodejs          # runtime for Claude Code and JS tooling
npm             # node package manager
python3         # scripting, ad-hoc data work
py3-pip         # python package installer
go              # go toolchain
docker-cli      # container client
podman          # rootless container engine


## TIER: high — biggest payoff, install first

github-cli      # gh — PRs, issues, CI logs, releases without leaving the shell
yq-go           # yq — jq for YAML; needed for compose, k8s, CI manifests
ast-grep        # sg — structural/AST code search; catches multi-line patterns grep cannot
shellcheck      # shell script linter; important here because login shell is mksh
shfmt           # shell formatter, POSIX/mksh aware
sd              # find-and-replace with sane regex, no sed escaping traps


## TIER: medium — strong quality-of-life, install when convenient

difftastic      # difft — structural diff, shows semantic change not line noise
delta           # syntax-highlighted git pager, side-by-side diffs
watchexec       # rerun a command on file change
entr            # smaller file-watcher, good in pipelines
just            # command runner; gives each repo a discoverable task list
direnv          # per-directory environment variables
uv              # fast Python env and dependency manager, replaces pip+venv
sqlite          # local database, ad-hoc querying of exported data


## TIER: nice — comfort and inspection

eza             # modern ls with tree view and git status
btop            # richer resource monitor than htop
hyperfine       # statistically sound command benchmarking
tokei           # source lines of code by language
jless           # interactive JSON viewer for large payloads
tealdeer        # tldr — practical command examples
tree            # directory tree (standalone; busybox applet is limited)
