cli-tools

📁 dirnbauer/webconsulting-skills 📅 Jan 24, 2026
0
总安装量
9
周安装量
安装命令
npx skills add https://github.com/dirnbauer/webconsulting-skills --skill cli-tools

Agent 安装分布

claude-code 7
codex 7
opencode 7
gemini-cli 7
antigravity 5
windsurf 5

Skill 文档

CLI Tools Skill

Manage CLI tool installation, environment auditing, and updates.

Capabilities

  1. Reactive: Auto-install missing tools on “command not found”
  2. Proactive: Audit project dependencies and tool versions
  3. Maintenance: Batch update all managed tools

Triggers

Reactive (auto-install):

bash: <tool>: command not found
zsh: command not found: <tool>

Proactive (audit): “check environment”, “what’s missing”, “update tools”

Binary to Tool Mapping

Common binary names that differ from package names:

Binary Package (Homebrew) Package (apt)
rg ripgrep ripgrep
fd fd fd-find
bat bat bat
delta git-delta N/A
exa / eza eza eza
fzf fzf fzf
ag the_silver_searcher silversearcher-ag
http httpie httpie
jq jq jq
yq yq N/A
gh gh gh
glab glab N/A

Installation Commands

macOS (Homebrew)

# Install single tool
brew install <package>

# Install multiple tools
brew install ripgrep fd bat eza fzf jq gh

# Update all tools
brew update && brew upgrade

Linux (apt)

# Install single tool
sudo apt install <package>

# Install multiple tools
sudo apt install ripgrep fd-find bat fzf jq

# Update all tools
sudo apt update && sudo apt upgrade

PHP Tools (Composer)

# Global PHP tools
composer global require phpstan/phpstan
composer global require friendsofphp/php-cs-fixer
composer global require rector/rector

# Project-specific
composer require --dev phpstan/phpstan
composer require --dev friendsofphp/php-cs-fixer

Node.js Tools (npm)

# Global Node tools
npm install -g prettier eslint typescript

# Project-specific
npm install --save-dev prettier eslint typescript

Project Type Detection

PHP Project

Indicators: composer.json, vendor/, *.php

Required tools:

  • php – PHP interpreter
  • composer – Dependency manager
  • phpstan – Static analysis
  • php-cs-fixer – Code style

TYPO3 Project

Indicators: composer.json with typo3/cms-core, public/typo3/

Required tools:

  • All PHP tools
  • ddev – Local development
  • typo3 – TYPO3 CLI

Node.js Project

Indicators: package.json, node_modules/

Required tools:

  • node – Node.js runtime
  • npm / pnpm / yarn – Package manager

Go Project

Indicators: go.mod, *.go

Required tools:

  • go – Go compiler
  • golangci-lint – Linter

Environment Audit

Check if required tools are installed:

# Check single tool
command -v <tool> &> /dev/null && echo "Found" || echo "Missing"

# Check version
<tool> --version

# PHP project audit
php --version
composer --version
command -v phpstan &> /dev/null || echo "Missing: phpstan"
command -v php-cs-fixer &> /dev/null || echo "Missing: php-cs-fixer"

# TYPO3 project audit
php --version
composer --version
ddev --version

Tool Catalog

Core CLI Tools

  • curl – HTTP client
  • wget – File downloader
  • jq – JSON processor
  • yq – YAML processor
  • tree – Directory visualizer
  • htop – Process viewer
  • tmux – Terminal multiplexer

Development Tools

  • git – Version control
  • gh – GitHub CLI
  • glab – GitLab CLI
  • docker – Containerization
  • ddev – Local development

Search & Navigation

  • ripgrep (rg) – Fast grep
  • fd – Fast find
  • fzf – Fuzzy finder
  • bat – Cat with syntax highlighting
  • eza – Modern ls replacement
  • delta – Git diff viewer

PHP Tools

  • php – PHP interpreter
  • composer – Dependency manager
  • phpstan – Static analysis
  • rector – Automated refactoring
  • php-cs-fixer – Code style fixer
  • phpunit – Testing framework
  • infection – Mutation testing

Node.js Tools

  • node – JavaScript runtime
  • npm / pnpm – Package managers
  • prettier – Code formatter
  • eslint – JavaScript linter
  • typescript – TypeScript compiler

Security Tools

  • trivy – Vulnerability scanner
  • grype – Container scanner
  • cosign – Container signing

Auto-Install Workflow

When a command fails with “command not found”:

  1. Extract tool name from error message
  2. Lookup package name in binary-to-tool mapping
  3. Detect OS (macOS/Linux)
  4. Install using appropriate package manager
  5. Retry original command

Example:

# Error: zsh: command not found: rg

# Resolution:
brew install ripgrep  # macOS
# or
sudo apt install ripgrep  # Linux

# Retry
rg "pattern" .

Batch Update

Update all managed tools:

# macOS
brew update && brew upgrade

# Linux
sudo apt update && sudo apt upgrade

# PHP global tools
composer global update

# Node global tools
npm update -g

Credits & Attribution

Thanks to Netresearch DTT GmbH for their contributions to the TYPO3 community.