docs: add DEPENDENCIES sections to function doc headers

Documents what each function needs for full functionality -- other
repo functions it calls, and external CLI tools it uses or falls
back gracefully without (e.g. rm/trash, ls/eza+lsd) -- matching the
existing CLASSIFICATION convention's placement and the ~20 functions
that already carried this label.

Also broadens verify-manual.py's dependency-resolution check to
recognize this repo's other existence-check idioms (command -q,
command -v, which -- not just type -q) and dng2avif's dynamic
type -q $cmd loop, since several genuine dependencies (eza, lsd,
fastfetch, fd, ps, ...) are only ever guarded that way.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HdzcdfzUSzskSsCS1U4j5X
This commit is contained in:
Claude
2026-09-22 22:21:02 -04:00
committed by rootiest
parent b10f076105
commit fd64335207
70 changed files with 358 additions and 4 deletions
+143 -1
View File
@@ -607,6 +607,8 @@ functions). They are active in all interactive sessions.
cat README.md
cat ~/projects/myapp
**Dependencies:** `bat`
**Classification:** `uses-shadow(ls)`, `bypasses-shadow(cat)`
### copy
@@ -644,6 +646,8 @@ functions). They are active in all interactive sessions.
du ~/Downloads
du --disk
**Dependencies:** `duf`, `dust`, `dua`
**Classification:** `bypasses-shadow(du)`
### dusize
@@ -678,6 +682,8 @@ functions). They are active in all interactive sessions.
Example:
lD ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### ls
@@ -695,6 +701,8 @@ functions). They are active in all interactive sessions.
ls
ls -a ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### lsr
@@ -713,6 +721,8 @@ functions). They are active in all interactive sessions.
Example:
lsr ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### lss
@@ -731,6 +741,8 @@ functions). They are active in all interactive sessions.
Example:
lss ~/downloads
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### lstree
@@ -749,6 +761,8 @@ functions). They are active in all interactive sessions.
Example:
lstree ~/projects/myapp
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### lt
@@ -767,6 +781,8 @@ functions). They are active in all interactive sessions.
Example:
lt ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### ltr
@@ -786,6 +802,8 @@ functions). They are active in all interactive sessions.
Example:
ltr ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### lx
@@ -804,6 +822,8 @@ functions). They are active in all interactive sessions.
Example:
lx ~/projects
**Dependencies:** `eza`, `lsd`
**Classification:** `bypasses-shadow(ls)`
### mkcd
@@ -828,6 +848,8 @@ functions). They are active in all interactive sessions.
mkcd ~/projects/myapp
mkcd ~/projects/newapp/src
**Dependencies:** `_fish_mkdir_p`
**Classification:** `bypasses-shadow(cd)`
### mkdir
@@ -845,6 +867,8 @@ functions). They are active in all interactive sessions.
Example:
mkdir ~/projects/myapp/src
**Dependencies:** `_fish_mkdir_p`
**Classification:** `bypasses-shadow(mkdir)`
### mv
@@ -888,6 +912,8 @@ functions). They are active in all interactive sessions.
Example:
poke ~/projects/new/src/main.fish
**Dependencies:** `_fish_mkdir_p`
### rg
Synopsis: rg [args...]
@@ -939,6 +965,8 @@ functions). They are active in all interactive sessions.
rm -e
rm -S sensitive_key.pem
**Dependencies:** `trash`
**Classification:** `bypasses-shadow(rm)`, `destructive`
### scrub
@@ -965,6 +993,8 @@ functions). They are active in all interactive sessions.
scrub -a
scrub -d
**Dependencies:** `fd`, `trash`
**Classification:** `uses-shadow(rm)`, `bypasses-shadow(rm)`, `destructive`
## 5.2 Navigation
@@ -982,6 +1012,8 @@ functions). They are active in all interactive sessions.
Example:
cdi myproject
**Dependencies:** `zoxide`
### clone
Synopsis: clone [args...]
@@ -1056,6 +1088,8 @@ functions). They are active in all interactive sessions.
edit --editor=code --clipboard
edit --text="hello world"
**Dependencies:** `p`, `nano`, `nvim`
**Classification:** `bypasses-shadow(rm)`
### fc
@@ -1093,6 +1127,8 @@ functions). They are active in all interactive sessions.
Example:
less /var/log/syslog
**Dependencies:** `ov`, `more`
**Classification:** `bypasses-shadow(cat,less)`
### md
@@ -1153,6 +1189,8 @@ functions). They are active in all interactive sessions.
Example:
rawfish
**Dependencies:** `fish`
### view
Synopsis: view [args...]
@@ -1166,6 +1204,8 @@ functions). They are active in all interactive sessions.
Example:
view /etc/fstab
**Dependencies:** `nvim`
**Classification:** `uses-shadow(less)`
## 5.4 Git and Version Control
@@ -1205,6 +1245,8 @@ functions). They are active in all interactive sessions.
auto-pull list
auto-pull remove qmk_firmware
**Dependencies:** `git`
### branch
Synopsis: branch <branch_name>
@@ -1222,6 +1264,8 @@ functions). They are active in all interactive sessions.
Example:
branch feature/new-ui
**Dependencies:** `git`
### gi
Synopsis: gi [-h] [-b] [-p] [-s] [-l] [targets...]
@@ -1253,6 +1297,8 @@ functions). They are active in all interactive sessions.
gi -b -p
gi -s node > .gitignore
**Dependencies:** `curl`, `md5sum`, `md5`
**Classification:** `self-limiting(grep,cat)`, `network`, `blocking-prompt`
### git-clean
@@ -1275,6 +1321,8 @@ functions). They are active in all interactive sessions.
git-clean --force
git-clean
**Dependencies:** `git`
**Classification:** `network`
### gitui
@@ -1308,6 +1356,8 @@ functions). They are active in all interactive sessions.
gitup
gitup --all
**Dependencies:** `git`
**Classification:** `network`
### hist
@@ -1491,6 +1541,8 @@ functions). They are active in all interactive sessions.
Example:
cleanup
**Dependencies:** `pacman`
**Classification:** `self-limiting(grep)`
### parur
@@ -1508,6 +1560,8 @@ functions). They are active in all interactive sessions.
Example:
parur
**Dependencies:** `fzf`, `pacman`, `paru`, `yay`
**Classification:** `network`
### pkg
@@ -1542,6 +1596,8 @@ functions). They are active in all interactive sessions.
pkg -i ripgrep fd-find
pkg -u cowsay
**Dependencies:** `_fish_deps_detect_pm`, `pacman`, `paru`, `yay`
**Classification:** `network`
### search
@@ -1561,6 +1617,8 @@ functions). They are active in all interactive sessions.
Example:
search neovim
**Dependencies:** `paru`, `yay`
**Classification:** `network`
### upgrade
@@ -1577,6 +1635,8 @@ functions). They are active in all interactive sessions.
Example:
upgrade
**Dependencies:** `paru`, `yay`
**Classification:** `network`
## 5.6 Dependency Management
@@ -1594,6 +1654,8 @@ functions). They are active in all interactive sessions.
Example:
check_fish_deps
**Dependencies:** `fish-deps`
### fish-deps
Synopsis: fish-deps [status|install|update|sync] [--optional] [--terminals] [--all]
@@ -1648,6 +1710,10 @@ functions). They are active in all interactive sessions.
fish-deps install --all
fish-deps update
**Dependencies:** `_fish_deps_status`, `_fish_deps_install`, `_fish_deps_update`
**Used by:** `check_fish_deps`
### fzf-update
Synopsis: fzf-update
@@ -1662,6 +1728,8 @@ functions). They are active in all interactive sessions.
Example:
fzf-update
**Dependencies:** `git`, `fzf`
**Classification:** `network`
## 5.7 System and Monitoring
@@ -1681,6 +1749,8 @@ functions). They are active in all interactive sessions.
Example:
limine-edit
**Dependencies:** `sbctl`
### lock
Synopsis: lock
@@ -1726,6 +1796,8 @@ functions). They are active in all interactive sessions.
sbver
sbver --brief
**Dependencies:** `sbctl`
**Classification:** `self-limiting(grep)`
### screensleep
@@ -1783,6 +1855,8 @@ functions). They are active in all interactive sessions.
Example:
top
**Dependencies:** `btop`
**Classification:** `bypasses-shadow(top)`
## 5.8 Terminal Management
@@ -1876,6 +1950,8 @@ functions). They are active in all interactive sessions.
Example:
# Rendered automatically by fish; not called directly.
**Dependencies:** `docker`, `starship`
### jobrunner
Synopsis: jobrunner [-t <tool>] [<subcommand>] [<name>] [<command>...]
@@ -1959,6 +2035,8 @@ functions). They are active in all interactive sessions.
split
split -v nvim README.md
**Dependencies:** `kitty`
### spwin
Synopsis: spwin [args...]
@@ -1976,6 +2054,8 @@ functions). They are active in all interactive sessions.
Example:
spwin
**Dependencies:** `kitty`
### ssh
Synopsis: ssh [args...]
@@ -1991,6 +2071,8 @@ functions). They are active in all interactive sessions.
Example:
ssh user@host
**Dependencies:** `kitten`
**Classification:** `bypasses-shadow(ssh)`, `network`
### tab
@@ -2011,6 +2093,8 @@ functions). They are active in all interactive sessions.
Example:
tab
**Dependencies:** `kitty`
## 5.9 Clipboard
### p
@@ -2037,6 +2121,8 @@ functions). They are active in all interactive sessions.
**Dependencies:** `_fish_clipboard_paste`
**Used by:** `edit`
### paste
Synopsis: paste [args...]
@@ -2120,6 +2206,8 @@ functions). They are active in all interactive sessions.
Example:
gip
**Dependencies:** `curl`
**Classification:** `network`
### gip4
@@ -2134,6 +2222,8 @@ functions). They are active in all interactive sessions.
Example:
gip4
**Dependencies:** `curl`
**Classification:** `network`
### gip6
@@ -2153,6 +2243,8 @@ functions). They are active in all interactive sessions.
Example:
gip6
**Dependencies:** `curl`
**Classification:** `network`
### ping
@@ -2171,6 +2263,8 @@ functions). They are active in all interactive sessions.
ping google.com
ping --legend google.com
**Dependencies:** `prettyping`
**Classification:** `bypasses-shadow(ping)`
### qr
@@ -2191,6 +2285,8 @@ functions). They are active in all interactive sessions.
qr "https://example.com"
echo "hello" | qr
**Dependencies:** `curl`, `qrencode`
**Classification:** `self-limiting(cat)`, `network`
## 5.11 Pager and Logging
@@ -2225,6 +2321,8 @@ functions). They are active in all interactive sessions.
logs
logs -c scrollback
**Dependencies:** `_scrollback_prune_junk`, `fzf`, `nvim`, `ov`
**Classification:** `bypasses-shadow(cat)`, `self-limiting(rm)`, `network`
### smart_exit
@@ -2252,6 +2350,8 @@ functions). They are active in all interactive sessions.
smart_exit
smart_exit --no-log
**Dependencies:** `kitty`, `ps`, `_scrollback_prune_junk`
**Classification:** `self-limiting(rm,mkdir)`, `destructive`
### sponge_filter_secrets
@@ -2597,6 +2697,8 @@ functions). They are active in all interactive sessions.
**Dependencies:** `agents-init`, `agents-vault`
**Used by:** `superpowers`
### antigravity-ide
Synopsis: antigravity-ide [args...]
@@ -2702,7 +2804,7 @@ functions). They are active in all interactive sessions.
**Dependencies:** `dops`
**Used by:** `dops`
**Used by:** `dockup`, `dops`, `fish_right_prompt`, `ld`
### dops
@@ -2752,6 +2854,8 @@ functions). They are active in all interactive sessions.
qc -m ollama:llama3 "explain this error"
qc --role coder "refactor this function"
**Dependencies:** `aichat`
### superpowers
Synopsis: superpowers [on|off] [-g]
@@ -2774,6 +2878,8 @@ functions). They are active in all interactive sessions.
superpowers on
superpowers off -g
**Dependencies:** `agy`
**Classification:** `uses-shadow(claude)`
## 5.13 Media and Utilities
@@ -2801,6 +2907,8 @@ functions). They are active in all interactive sessions.
dng2avif photo.dng
dng2avif -q 85 -s 5 -i shot.dng -o out.avif
**Dependencies:** `magick`, `ffmpeg`, `avifenc`, `exiftool`
**Classification:** `self-limiting(rm)`
### key-crypt
@@ -2884,6 +2992,8 @@ functions). They are active in all interactive sessions.
play-media
play-media --player mpv
**Dependencies:** `_fzf_preview_media`, `_fzf_wrapper`, `fd`, `fdfind`, `file`, `xdg-mime`
### spark
Synopsis: spark [--min=<n>] [--max=<n>] [numbers...]
@@ -2979,6 +3089,8 @@ functions). They are active in all interactive sessions.
bd-pull myuser/myproject
bd-pull rootiest/fish-config
**Dependencies:** `curl`, `jq`, `git`
### cffetch
Synopsis: cffetch [args...]
@@ -2992,6 +3104,8 @@ functions). They are active in all interactive sessions.
Example:
cffetch
**Dependencies:** `fastfetch`, `neofetch`
**Classification:** `uses-shadow(ls)`
### cheat
@@ -3009,6 +3123,10 @@ functions). They are active in all interactive sessions.
cheat tar
cheat git
**Dependencies:** `cheat`, `tldr`, `man`
**Used by:** `cheat`
### config-help
Synopsis: config-help [section]
@@ -3061,6 +3179,8 @@ functions). They are active in all interactive sessions.
config-help --help
config-help pkg --man
**Dependencies:** `xdg-open`, `man`, `ov`, `bat`
**Classification:** `self-limiting(grep)`, `bypasses-shadow(less)`
### config-settings
@@ -3181,6 +3301,8 @@ functions). They are active in all interactive sessions.
config-update --dry-run
config-update --force
**Dependencies:** `git`
### dockup
Synopsis: dockup [-h] [directory]
@@ -3199,6 +3321,8 @@ functions). They are active in all interactive sessions.
Example:
dockup ~/myapp
**Dependencies:** `docker`
**Classification:** `network`
### ffetch
@@ -3214,6 +3338,8 @@ functions). They are active in all interactive sessions.
Example:
ffetch
**Dependencies:** `fastfetch`, `neofetch`
**Classification:** `uses-shadow(ls)`
### fzf_configure_bindings
@@ -3241,6 +3367,8 @@ functions). They are active in all interactive sessions.
Example:
fzf_configure_bindings --history=ctrl-h
**Dependencies:** `_fzf_search_directory`, `_fzf_search_git_log`, `_fzf_search_git_status`, `_fzf_search_history`, `_fzf_search_processes`, `_fzf_search_variables`
### joplin
Synopsis: joplin [args...]
@@ -3258,6 +3386,10 @@ functions). They are active in all interactive sessions.
Example:
joplin ls
**Dependencies:** `joplin`
**Used by:** `joplin`
### kitty-logging
Synopsis: kitty-logging [install | uninstall | status | dismiss] [-h]
@@ -3289,6 +3421,8 @@ functions). They are active in all interactive sessions.
kitty-logging install
kitty-logging status
**Dependencies:** `kitty`, `__kitty_logging_dir`, `__kitty_logging_has_watcher`, `__kitty_logging_version`
**Classification:** `bypasses-shadow(grep,mkdir,rm)`
### ld
@@ -3304,6 +3438,8 @@ functions). They are active in all interactive sessions.
Example:
ld
**Dependencies:** `docker`, `lazydocker`
### open-url
Synopsis: open-url [-s|--silent] [-v|--verbose] <url>
@@ -3341,6 +3477,8 @@ functions). They are active in all interactive sessions.
open-url https://git.rootiest.dev/rootiest/fish-config
open-url -v https://fish.rootiest.fyi/
**Dependencies:** `xdg-mime`, `xdg-open`
**Used by:** `repo-open`
### rand_string
@@ -3377,6 +3515,8 @@ functions). They are active in all interactive sessions.
rand_string --case=title color animal --separator=dot digits=4
rand_string literal=TEST --separator=underscore verb noun
**Dependencies:** `shuf`
**Classification:** `bypasses-shadow(cat)`
### replay
@@ -3460,6 +3600,8 @@ functions). They are active in all interactive sessions.
Example:
tmux-clean
**Dependencies:** `tmux`
### wake-lock
Synopsis: wake-lock <command> [args...]