CLI Tools Skill
A Claude Code skill for automatic CLI tool management. Detects missing tools, installs them via optimal package managers, and audits project environments.
π Compatibility
This is an Agent Skill following the open standard originally developed by Anthropic and released for cross-platform use.
Supported Platforms:
- β Claude Code (Anthropic)
- β Cursor
- β GitHub Copilot
- β Other skills-compatible AI agents
Skills are portable packages of procedural knowledge that work across any AI agent supporting the Agent Skills specification.
Features
- Reactive Mode: Auto-detect "command not found" errors and install missing tools
- Proactive Mode: Audit project environments and report missing/outdated tools
- Maintenance Mode: Batch update all managed tools across package managers
Supported Tools
77+ tools across categories:
| Category | Tools |
|---|---|
| Core CLI | ripgrep, fd, fzf, jq, yq, bat, delta, just |
| Languages | python, node, rust, go, ruby, php |
| Package Managers | uv, npm, pnpm, cargo, pip, gem, composer |
| DevOps | docker, compose, kubectl, terraform, ansible |
| Linters | eslint, prettier, ruff, black, shellcheck, phpstan |
| Security | trivy, gitleaks, bandit, semgrep |
| Git Tools | gh, glab, git-lfs, delta |
Project Type Detection
Automatically detects project types and their requirements:
| Project Type | Detection Files | Required Tools |
|---|---|---|
| Python | pyproject.toml, requirements.txt | python, uv |
| Node.js | package.json | node, npm |
| Rust | Cargo.toml | rust |
| Go | go.mod | go |
| PHP | composer.json, *.php | php, composer |
| Ruby | Gemfile | ruby |
| Docker | Dockerfile, docker-compose.yml | docker, compose |
| Terraform | *.tf | terraform |
Installation
Marketplace (Recommended)
Add the Netresearch marketplace once, then browse and install skills:
# Claude Code
/plugin marketplace add netresearch/claude-code-marketplace
/plugin install cli-tools@netresearch-claude-code-marketplace
Without a marketplace
Since Claude Code 2.1.157 a plugin directory under your personal skills directory loads on its own, including the hooks this repo ships:
mkdir -p ~/.claude/skills
git clone https://github.com/netresearch/cli-tools-skill.git \
~/.claude/skills/cli-tools
It loads as cli-tools@skills-dir on the next session. Update with git -C ~/.claude/skills/cli-tools pull and start a new session; remove it by deleting the directory. This route has no claude plugin update.
npx (skills.sh)
Install with any Agent Skills-compatible agent:
npx skills add https://github.com/netresearch/cli-tools-skill --skill cli-tools
Limitation:
npx skillsinstallsSKILL.md-based skills only. This repo also shipshooks, which it does not install β use the marketplace or the skills directory for those.
Download Release
Download the latest release and extract to your agent's skills directory.
Git Clone
git clone https://github.com/netresearch/cli-tools-skill.git
Composer (PHP Projects)
composer require netresearch/cli-tools-skill
Requires netresearch/composer-agent-skill-plugin.
npm (Node Projects)
npm install --save-dev \
@netresearch/agent-skill-coordinator \
github:netresearch/cli-tools-skill
Requires @netresearch/agent-skill-coordinator, which discovers the skill in node_modules and registers it in AGENTS.md via a postinstall hook. For pnpm, also allowlist the coordinator's postinstall:
{
"pnpm": {
"onlyBuiltDependencies": ["@netresearch/agent-skill-coordinator"]
}
}
Triggers
The skill activates automatically on:
Error Patterns
bash: <tool>: command not found
zsh: command not found: <tool>
'<tool>' is not recognized as an internal or external command
User Requests
- "check environment", "audit tools"
- "what's missing", "what's outdated"
- "install development tools"
- "update all tools"
Installation Methods
The skill selects the optimal installation method based on catalog priority:
- GitHub Release Binary - Direct download (fastest, no deps)
- Cargo - Rust tools via cargo install
- UV/Pip - Python tools
- NPM - Node tools
- Apt/Brew - System packages (fallback)
Priority: user-level (~/.local/bin, ~/.cargo/bin) over system-level.
Directory Structure
cli-tools/
βββ SKILL.md # Skill definition and workflows
βββ catalog/ # Tool definitions (77+ JSON files)
β βββ ripgrep.json
β βββ php.json
β βββ ...
βββ scripts/
β βββ install_tool.sh # Main installer
β βββ auto_update.sh # Batch updater
β βββ check_environment.sh
β βββ detect_project_type.sh
β βββ lib/ # Shared libraries
β βββ installers/ # Method-specific installers
βββ references/
βββ binary_to_tool_map.md
βββ project_type_requirements.md
Requirements
- jq: Required for JSON parsing (auto-installed if missing)
- Bash 4+: Required for associative arrays
- Internet: Required for tool downloads
License
This project uses split licensing:
- Code (scripts, workflows, configs): MIT
- Content (skill definitions, documentation, references): CC-BY-SA-4.0
See the individual license files for full terms.
Contributing
- Add tool definition to
catalog/<tool>.json - Update
references/binary_to_tool_map.mdif binary differs from tool name - Test with
scripts/install_tool.sh <tool> install - Submit PR
Credits
Developed and maintained by Netresearch DTT GmbH.
Made with β€οΈ for Open Source by Netresearch