From toolbox-discovery
This skill should be used when the user asks "what tools do I have", "system inventory", "tool discovery", "setup my environment", "missing tools", "optimize dev setup", "activate tools", or "what's installed". Make sure to use this skill whenever the user wants to discover installed tools, identify misconfigured or underutilized tools, activate dormant capabilities, optimize their development environment, find missing tools for a project, or get a comprehensive overview of available system capabilities, even if they just mention wanting to improve their setup or wondering what's available on their machine.
How this skill is triggered — by the user, by Claude, or both
Slash command
/toolbox-discovery:toolbox-discoveryThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
A comprehensive system inventory and smart configuration skill. Scans the system for ALL installed tools — CLI utilities, language runtimes, servers, package managers, dev tools, AI coding agents, and more — then assesses their health, identifies what is misconfigured or underutilized, and proposes activations, configurations, or new installations.
A comprehensive system inventory and smart configuration skill. Scans the system for ALL installed tools — CLI utilities, language runtimes, servers, package managers, dev tools, AI coding agents, and more — then assesses their health, identifies what is misconfigured or underutilized, and proposes activations, configurations, or new installations.
"One cannot use what one does not know exists."
Most developers have dozens, sometimes hundreds, of tools installed on their systems but actively use only a fraction of them. Tools get installed for one project and forgotten. Package managers pull in utilities as dependencies that never get used directly. Default configurations leave powerful features dormant. Integrations between tools that would multiply productivity remain unconnected.
The Toolbox Discovery process follows four phases:
This skill is system-aware: it adapts to what is actually available on the machine, not what theoretically should be there. It detects the OS, package manager, shell, and existing configurations, then tailors every recommendation to the real environment.
Use command -v (not which) for speed and POSIX compliance. Scan every tool in each category below. For each tool found, capture the binary path and version string.
Run the discovery script for a fast automated scan:
bash skills/toolbox-discovery/scripts/discover-tools.sh
# or for JSON output:
bash skills/toolbox-discovery/scripts/discover-tools.sh --json
| Category | Tools to Scan |
|---|---|
| Go | go, gofmt, gopls, golangci-lint, air, templ, buf, protoc, dlv, staticcheck |
| Node.js | node, npm, npx, yarn, pnpm, bun, deno, tsx, ts-node |
| Python | python3, python, pip, pip3, pipx, uv, poetry, conda, pyenv, virtualenv, ruff, mypy, pyright, black, isort |
| Rust | rustc, cargo, rustup, rust-analyzer, cargo-watch, cargo-edit, cargo-expand, miri |
| Java | java, javac, gradle, mvn, kotlin, kotlinc, ant, jshell |
| Ruby | ruby, gem, bundler, rails, rspec, rubocop, irb |
| PHP | php, composer, artisan, phpunit, phpstan, psalm |
| Zig | zig |
| Nim | nim, nimble |
| Elixir | elixir, mix, iex, erlc |
| Haskell | ghc, ghci, cabal, stack, hlint |
| C/C++ | gcc, g++, clang, clang++, cmake, make, meson, ninja, ccache, gdb, lldb, valgrind |
| Lua | lua, luajit, luarocks |
| Perl | perl, cpan |
For each runtime found, also check:
<tool> --version or <tool> versionasdf, mise, proto, nvm, pyenv, rbenv, rustup| Category | Tools to Scan |
|---|---|
| System (Arch/Manjaro) | pacman, yay, paru, pamac, pikaur, trizen |
| System (Debian/Ubuntu) | apt, apt-get, dpkg, snap |
| System (Fedora/RHEL) | dnf, rpm, yum |
| System (macOS) | brew |
| Universal | flatpak, snap, nix, guix, appimage |
| Version managers | asdf, mise, proto, nvm, fnm, pyenv, rbenv, goenv |
| Language-specific | npm, pip, cargo, go install, gem, composer, mix, cabal, luarocks |
| Category | Tools to Scan |
|---|---|
| Containers | docker, docker-compose, podman, podman-compose, buildah, skopeo, nerdctl, containerd, cri-o |
| Kubernetes | kubectl, helm, k9s, minikube, kind, k3s, k3d, kustomize, kubectx, kubens, stern, lens |
| IaC | terraform, tofu, pulumi, ansible, ansible-playbook, vagrant, packer |
| Cloud CLI | aws, gcloud, az, doctl, flyctl, railway, vercel, netlify, wrangler |
| Category | Tools to Scan |
|---|---|
| Core | git, git-lfs |
| GitHub/GitLab | gh, glab |
| UI/TUI | lazygit, tig, gitui, gitk |
| Diff tools | delta, difftastic, diff-so-fancy, colordiff |
| Utilities | pre-commit, commitizen, cz, conventional-commits, git-flow, git-crypt |
| Category | Tools to Scan |
|---|---|
| Agents | claude, codex, gemini, aider, goose, amp, opencode, cody |
| GitHub AI | gh copilot (check gh extension list) |
| Local AI | ollama, llama-server, whisper, tts, vllm |
| Utilities | sgpt, mods, fabric, glow |
| Category | Tools to Scan |
|---|---|
| Terminal editors | nvim, vim, vi, emacs, helix, hx, kakoune, kak, nano, micro, ne, joe |
| GUI editors | code, cursor, windsurf, zed, subl, atom |
| JetBrains | idea, goland, pycharm, webstorm, clion, rider, phpstorm, rubymine |
| Category | Tools to Scan |
|---|---|
| Shells | bash, zsh, fish, nu, nushell, elvish, xonsh, dash, ksh |
| Multiplexers | tmux, zellij, screen, byobu |
| Emulators | ghostty, alacritty, kitty, wezterm, foot, konsole, gnome-terminal, xterm |
| Prompts | starship (also check ~/.oh-my-zsh, ~/.oh-my-posh, ~/.config/powerlevel10k) |
| Utilities | zoxide, direnv, atuin, mcfly |
| Category | Tools to Scan |
|---|---|
| HTTP clients | curl, wget, httpie, http, xh, grpcurl, evans |
| Scanners | nmap, masscan, zmap |
| Tunneling | ssh, mosh, et (eternal-terminal), socat, netcat, nc, ncat |
| VPN | tailscale, wg (wireguard), openvpn |
| Servers | caddy, nginx, apache2, httpd, traefik |
| DNS | dig, nslookup, host, dog, drill |
| Monitoring | tcpdump, wireshark, tshark, iftop, nethogs, bandwhich, trippy |
| Category | Tools to Scan |
|---|---|
| Clients | sqlite3, psql, mysql, mongosh, mongo, redis-cli, clickhouse-client, cqlsh |
| Enhanced clients | pgcli, mycli, litecli, usql, iredis |
| GUI | dbeaver, beekeeper-studio |
| Migration | flyway, liquibase, goose, migrate, atlas |
| Category | Tools to Scan |
|---|---|
| System monitors | htop, btop, glances, gotop, bottom, zenith, nmon |
| Process | ps, pgrep, pidof, lsof, fuser |
| Debuggers | gdb, lldb, dlv, strace, ltrace, dtrace |
| Profiling | perf, valgrind, flamegraph, pprof, heaptrack |
| Logs | journalctl, dmesg, lnav, multitail, goaccess |
| Category | Tools to Scan |
|---|---|
| Search | fd, rg (ripgrep), fzf, ag (silver-searcher), ack, plocate, locate, mlocate |
| View | bat, eza, exa, lsd, broot, tree |
| Navigate | ranger, yazi, nnn, lf, vifm, mc |
| Data | jq, yq, xsv, csvtool, fx, gron, dasel, htmlq |
| Disk | ncdu, dust, duf, gdu |
| Transfer | rsync, rclone, scp, sftp |
| Backup | borgbackup, borg, restic, timeshift, snapper |
| Archive | tar, zip, unzip, 7z, zstd, xz, gzip, bzip2 |
| Category | Tools to Scan |
|---|---|
| Video/Audio | ffmpeg, ffprobe, mpv, vlc, yt-dlp, sox |
| Images/Docs | imagemagick, gimp, inkscape, pandoc, typst |
| System services | systemctl, loginctl, journalctl, timedatectl |
| Hardware info | lsblk, blkid, lscpu, lspci, lsusb, inxi, fastfetch |
| Network/Firewall | ip, ss, nmcli, ufw, firewall-cmd, iptables |
For each discovered tool, evaluate:
Version & Currency
<tool> --version or <tool> versionConfiguration Status
~/.config/<tool>/, ~/.<tool>rc, etc.)Integration Health
Binary Health
Service Status (for daemons)
systemctl --user status <service> and systemctl status <service>For each underutilized tool, provide actionable activation steps. Reference the activation recipes file for ready-to-apply configurations:
Read: skills/toolbox-discovery/references/activation-recipes.md
Categories of activation:
Shell Integrations
Tool Configurations
.gitconfig, tmux.conf, starship.toml)EDITOR, VISUAL, PAGER, MANPAGER, BROWSER)Integration Chains
Service Enablement
Always back up existing configuration before modifying anything. The activation script handles this:
bash skills/toolbox-discovery/scripts/activate-tools.sh <tool-or-category>
Based on what is installed, recommend complementary tools. The logic follows patterns:
Modern Replacements:
| Old Tool | Modern Alternative | Why |
|---|---|---|
grep | ripgrep (rg) | 10-100x faster, respects .gitignore |
find | fd | Simpler syntax, faster, respects .gitignore |
cat | bat | Syntax highlighting, git integration, paging |
ls | eza | Colors, icons, git status, tree view |
du | dust | Visual, sorted, colored disk usage |
df | duf | Tabular, colored, grouped disk free |
top | btop | Beautiful, mouse support, detailed |
cd | zoxide | Learns frequent directories, fuzzy matching |
ctrl-r | atuin | Full shell history search with sync |
diff | delta | Syntax highlighting, side-by-side, git integration |
man | tldr, cheat | Practical examples instead of full manpages |
Stack Completers (recommend when the base tool is present but the complement is missing):
| Base Tool | Missing Complement | Purpose |
|---|---|---|
go | golangci-lint | Linting |
docker | lazydocker | TUI management |
kubectl | k9s | Cluster TUI |
git | lazygit | TUI git |
python | ruff | Fast linting |
node | pnpm | Fast package management |
zsh | starship | Universal prompt |
| any shell | fzf | Fuzzy finding everywhere |
Security Gap Analysis — Flag missing: git-crypt/sops (secrets), age/gpg (encryption), ufw (firewall), fail2ban (SSH protection), lynis (security audit).
Refer to references/tool-catalog.md for the full catalog with install commands and descriptions.
Present the discovery report with these sections, using status indicators per tool:
! (installed, needs attention), x (not installed)Example entry format:
[checkmark] go 1.24.1 [configured] gopls, golangci-lint, air, templ
[!] git-lfs [installed but not configured]
[x] rust [not installed]
Each section should list the install command for missing recommended tools. Adapt symbols to the terminal's capability and use color if supported.
Scan everything:
bash skills/toolbox-discovery/scripts/discover-tools.sh
Scan and output JSON:
bash skills/toolbox-discovery/scripts/discover-tools.sh --json
Activate a specific tool or category:
bash skills/toolbox-discovery/scripts/activate-tools.sh fzf
bash skills/toolbox-discovery/scripts/activate-tools.sh git
bash skills/toolbox-discovery/scripts/activate-tools.sh shell
references/tool-catalog.md — Full catalog of recommended tools organized by category, with descriptions, install commands (pacman, yay, pip, cargo, npm), and links to project pages.references/activation-recipes.md — Ready-to-apply configuration recipes for shell integrations, tool configs, integration chains (fzf+bat+delta+git), and environment variables.scripts/discover-tools.sh — Automated discovery script that scans all tool categories and outputs a structured report (text or JSON with --json flag).scripts/activate-tools.sh — Automated activation script that backs up existing configs and applies recommended configurations per tool or category.npx claudepluginhub biodoia/biodoia-skills-marketplace --plugin toolbox-discoveryDiscovers Claude Code tool environment including native tools and MCP servers via scans, amplifies prompts with capabilities, and suggests non-binding tool compositions for 'what tools to use' or 'best approach' queries.
Use when starting a session, running shell commands, installing packages, or diagnosing platform-specific failures - detects OS, shell, runtime, package manager, and toolchain before any command execution
Covers fundamental CLI tools and utilities for software development: shells, Git, system package managers, Docker, SSH, curl, jq, regex, and build runners like Make.