一键导入
cli-modern-tools
Auto-suggest modern CLI tool alternatives (bat, eza, fd, ripgrep) for faster, more efficient command-line operations with 50%+ speed improvements
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Auto-suggest modern CLI tool alternatives (bat, eza, fd, ripgrep) for faster, more efficient command-line operations with 50%+ speed improvements
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
AgentHero AI - Hierarchical multi-agent orchestration system with PM coordination, file-based state management, and interactive menu interface. Use when managing complex multi-agent workflows, coordinating parallel sub-agents, or organizing large project tasks with multiple specialists. All created agents use aghero- prefix.
Fetch and download images from the internet in various formats (JPG, PNG, GIF, WebP, BMP, SVG, etc.). Use when users ask to download images, fetch images from URLs, save images from the web, or get images for embedding in documents or chats. Supports single and batch downloads with automatic format detection.
Token-efficient markdown parsing, editing, and diagram generation using native CLI tools (Windows/Mac/Linux compatible)
Generate comprehensive, fact-checked SAP technical articles and configuration guides with embedded images, flowcharts, and references. Use when users request SAP documentation, how-to guides, configuration tutorials, process explanations, or technical articles on SAP topics (ECC, S/4HANA, modules like SD, MM, FI, PP, ABAP, OData APIs, archiving, etc.). Creates professional Word documents with proper formatting and web-sourced visual aids with built-in image downloading.
Guide for creating effective skills. This skill should be used when users want to create a new skill (or update an existing skill) that extends Claude's capabilities with specialized knowledge, workflows, or tool integrations.
Update project changelog with uncommitted changes, synchronize package versions, and create version releases with automatic commit, conditional git tags, GitHub Releases, and push
| name | cli-modern-tools |
| description | Auto-suggest modern CLI tool alternatives (bat, eza, fd, ripgrep) for faster, more efficient command-line operations with 50%+ speed improvements |
| version | 1.1.0 |
| author | Generic Claude Code Framework |
| tags | ["cli","productivity","performance","tools","bat","eza","fd","ripgrep","watchexec"] |
| activation_keywords | cat, ls, find, grep, file viewing, directory listing, file search, watch files |
| auto-activate | true |
| feature_config | {"bat":"enabled","eza":"enabled","fd":"enabled","ripgrep":"enabled","watchexec":"enabled"} |
Purpose: Automatically suggest and use modern CLI alternatives for 50%+ speed improvements and better UX
Before Claude executes ANY bash command internally, MUST check:
| If Claude wants to use... | Use this instead | Tool Type |
|---|---|---|
bash find . -name "*.js" | Glob tool pattern="**/*.js" | Claude Code Tool |
bash grep -r "pattern" | Grep tool pattern="pattern" | Claude Code Tool |
bash cat file.txt | Read tool file_path="file.txt" | Claude Code Tool |
bash ls -la | bash eza --long --git (if available) | Bash Command |
Why this matters:
See CLAUDE.md "Tool Usage Guidelines" for complete replacement rules.
Replace traditional Unix commands with modern, faster, feature-rich alternatives:
CRITICAL: Before executing EACH bash command, MUST output:
🔧 [cli-modern-tools] Running: <command>
Examples:
🔧 [cli-modern-tools] Running: bat app.js
🔧 [cli-modern-tools] Running: eza --long --git
🔧 [cli-modern-tools] Running: fd "\.tsx$"
🔧 [cli-modern-tools] Running: watchexec -e php ./vendor/bin/pest
Why: This pattern helps users identify which skill is executing which command, improving transparency and debugging.
IMPORTANT: Use MINIMAL colored output (2-3 calls max) to prevent screen flickering!
Example formatted output (MINIMAL PATTERN):
# START: Header only
bash .claude/skills/colored-output/color.sh skill-header "cli-modern-tools" "Replacing traditional CLI commands..."
# MIDDLE: Regular text (no colored calls)
Using bat instead of cat for syntax highlighting...
Using eza instead of ls for git status integration...
Using fd instead of find for faster file search...
# END: Result only
bash .claude/skills/colored-output/color.sh success "" "Modern CLI tools applied"
WHY: Each bash call creates a task in Claude CLI, causing screen flickering. Keep it minimal!
CRITICAL: This skill auto-activates on traditional command detection and AUTOMATICALLY replaces them.
⚙️ FEATURE TOGGLE CONTROL:
Before suggesting any replacement, CHECK the feature_config in the frontmatter above:
bat: enabled → Suggest batbat: disabled → Use traditional cat (no suggestion)Triggers: cat, view file, show file, display contents
Action: IF bat: enabled → use bat instead of cat, ELSE use cat
Implementation:
# ❌ Traditional
cat app.js
# ✅ Automatic replacement (IF bat: enabled)
bat app.js # Syntax highlighting, line numbers
# ⬜ Fallback (IF bat: disabled)
cat app.js # Use traditional command
Triggers: ls, list files, show directory, list dir
Action: IF eza: enabled → use eza --long --git instead of ls, ELSE use ls
Implementation:
# ❌ Traditional
ls -la app/Models/
# ✅ Automatic replacement (IF eza: enabled)
eza --long --git app/Models/ # Git status, icons, colors
# ⬜ Fallback (IF eza: enabled)
ls -la app/Models/ # Use traditional command
Triggers: find, search files, locate file, find file named
Action: IF fd: enabled → use fd instead of find, ELSE use find
Implementation:
# ❌ Traditional
find . -name "*.tsx"
# ✅ Automatic replacement (IF fd: enabled, Bash tool only)
fd "\.tsx$"
# ⬜ Fallback (IF fd: disabled)
find . -name "*.tsx"
# ✅ For Claude Code tools (NOT bash)
# Use Glob tool instead
Triggers: grep, search in files, search content, find text
Action: ALWAYS use Grep tool, NEVER bash grep/ripgrep (ripgrep setting ignored for Claude Code tools)
Implementation:
❌ bash -c "grep -r 'TODO' app/"
✅ [Use Grep tool with pattern="TODO" path="app/"]
Note: ripgrep feature toggle only affects bash command suggestions, not Claude Code tools
Triggers: watch files, auto-run, continuous testing, on file change
Action: IF watchexec: enabled → use watchexec for automation, ELSE suggest manual approach
Implementation:
# ❌ Traditional (manual)
# Run tests manually after each change
# ✅ Automatic replacement (IF watchexec: enabled)
watchexec -e php ./vendor/bin/pest
# ⬜ Fallback (IF watchexec: disabled)
# Suggest manual approach
Triggers: tree, show tree, directory structure
Action: IF eza: enabled → use eza --tree instead of tree, ELSE use tree
Implementation:
# ❌ Traditional
tree -L 3
# ✅ Automatic replacement (IF eza: enabled)
eza --tree --level=3
# ⬜ Fallback (IF eza: enabled)
tree -L 3
When user says "cat app.js", Claude should:
bat app.jsFor explicit automation, use wrapper:
bash .claude/skills/cli-modern-tools/cli-wrapper.sh view app.js
bash .claude/skills/cli-modern-tools/cli-wrapper.sh list app/
bash .claude/skills/cli-modern-tools/cli-wrapper.sh find "*.tsx"
bash .claude/skills/cli-modern-tools/cli-wrapper.sh check
Always check tool availability:
command -v bat &> /dev/null && bat file.txt || cat file.txt
find with fdGlob tool (not fd, not find)Grep tool (never bash grep/rg)| Operation | Traditional | Modern Alternative | Speed Improvement | UX Improvement |
|---|---|---|---|---|
| View file | cat app.js | bat app.js | Same speed | ✅ Syntax highlighting, line numbers |
| List directory | ls -la | eza --long --git | Same speed | ✅ Git status, icons, colors |
| Find files | find . -name "*.js" | fd "\.js$" | 18x faster | ✅ Simpler syntax, respects .gitignore |
| Search content | grep -r "TODO" | Grep tool | N/A | ✅ Token efficiency, proper permissions |
| Watch files | Manual re-run | watchexec -e js npm test | ∞ (automation) | ✅ Auto-run on changes |
Install:
# Windows
scoop install bat
# Mac
brew install bat
# Linux
apt install bat
Usage:
# Basic file viewing with syntax highlighting
bat app/Models/User.php
# Specific line range
bat routes/api.php --line-range 1:50
# Pipe with syntax highlighting
curl http://api.example.com | bat -l json
# Multiple files
bat src/*.js
Features:
When to Use:
Install:
# Windows
scoop install eza
# Mac
brew install eza
# Linux
cargo install eza
Usage:
# Git-aware listing with stats
eza --long --git app/Models/
# Tree view with depth limit
eza --tree --level=3 resources/js/
# Recently modified files
eza --long --sort=modified --reverse
# With icons and colors
eza --long --icons --color=always
Features:
When to Use:
Install:
# Windows
scoop install fd
# Mac
brew install fd
# Linux
apt install fd-find
Usage:
# Find TypeScript files
fd "\.tsx$" resources/js/
# Find controller files
fd Controller.php app/Http/Controllers/
# Multiple extensions
fd -e php -e js
# Case-insensitive
fd -i readme
# Ignore .gitignore patterns
fd --no-ignore "test"
Features:
When to Use (in Bash tool only):
Important: When using Claude Code tools (not bash), always prefer Glob tool over fd.
Critical Rule: In Claude Code, ALWAYS use Grep tool, NEVER bash grep or ripgrep.
Why:
Usage:
[Use Grep tool with pattern="TODO" path="app/"]
[Use Grep tool with pattern="function" type="ts"]
When to Use:
Install:
# Windows
scoop install watchexec
# Mac
brew install watchexec
# Linux
cargo install watchexec-cli
Usage:
# Auto-run PHP tests on changes
watchexec -e php -c ./vendor/bin/pest
# Auto-lint TypeScript on save
watchexec -e tsx,ts -w resources/js/ npm run lint
# Auto-migrate and verify schema
watchexec -w database/migrations/ "php artisan migrate && bash .claude/skills/sql-cli/sql-cli.sh tables"
# Multiple commands with debouncing
watchexec -w src/ "npm run build && npm run test"
Features:
When to Use:
Traditional Approach:
cat app/Models/User.php # No syntax highlighting
ls -la app/Models/ # No git status
find app/ -name "*Controller*" # Slow, complex syntax
Modern Approach:
bat app/Models/User.php # ✅ Syntax highlighted
eza --long --git app/Models/ # ✅ Git status visible
fd Controller app/Http/Controllers/ # ✅ 18x faster
Savings: 50% faster, significantly better UX
Traditional Approach:
# Manually re-run tests after each change
./vendor/bin/pest
# ... edit file ...
./vendor/bin/pest
# ... edit file ...
./vendor/bin/pest
Modern Approach:
# Set up once, runs automatically
watchexec -e php -c -w tests/,app/ ./vendor/bin/pest
# ... edit file ... tests run automatically
# ... edit file ... tests run automatically
Savings: Infinite time saved through automation
Traditional Approach:
curl http://api.example.com/users | cat
# Output: {"users":[{"id":1,"name":"John"}]}
# Hard to read, no formatting
Modern Approach:
curl http://api.example.com/users | bat -l json
# Output: Syntax-highlighted, formatted JSON
Savings: Instant readability
| Tool | Time | Result |
|---|---|---|
find . -name "*.js" | 1.8 seconds | Baseline |
fd "\.js$" | 0.1 seconds | 18x faster |
| Tool | Features | UX Score |
|---|---|---|
ls -la | Basic info | ⭐⭐ |
eza --long --git | Git status, icons, colors | ⭐⭐⭐⭐⭐ |
| Tool | Features | UX Score |
|---|---|---|
cat | Plain text | ⭐⭐ |
bat | Syntax highlighting, line numbers, git diff | ⭐⭐⭐⭐⭐ |
Pattern: User mentions cat <file>
Claude detects "cat" keyword
→ Auto-activate cli-modern-tools skill
→ Suggest: "I'll use bat instead for syntax highlighting"
→ Execute: bat <file>
Pattern: User mentions ls or ls -la
Claude detects "ls" keyword
→ Auto-activate cli-modern-tools skill
→ Suggest: "I'll use eza with git status"
→ Execute: eza --long --git
Pattern: User mentions find . -name
Claude detects "find" keyword
→ Auto-activate cli-modern-tools skill
→ Check context: Bash tool or Claude tool?
→ If Bash tool: Suggest fd
→ If Claude tool: Use Glob tool
# Check if modern tool available, fallback to traditional
command -v bat &> /dev/null && bat file.txt || cat file.txt
command -v eza &> /dev/null && eza -la || ls -la
command -v fd &> /dev/null && fd pattern || find . -name pattern
# Watch markdown files, auto-lint on changes
watchexec -e md "node ~/.claude/skills/markdown-helper/md-helper.js lint *.md"
# View SQL results with syntax highlighting
bash .claude/skills/sql-cli/sql-cli.sh query "SELECT * FROM users LIMIT 10" | bat -l sql
# Install Scoop if not installed
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
irm get.scoop.sh | iex
# Install tools
scoop install bat eza fd watchexec
# Install tools
brew install bat eza fd ripgrep watchexec
# Install tools
sudo apt install bat fd-find ripgrep
cargo install eza watchexec-cli
| I want to... | Use | Instead of |
|---|---|---|
| View code file | bat app.js | cat app.js |
| List with git status | eza --long --git | ls -la |
| Find files by name | fd "pattern" (in Bash) | find . -name "pattern" |
| Search file contents | Grep tool | grep -r or rg |
| Auto-run tests | watchexec -e php ./vendor/bin/pest | Manual re-run |
| View API response | curl ... | bat -l json | curl ... | cat |
| Recently modified | eza --sort=modified --reverse | ls -lt |
Traditional Approach:
cat commands: No highlighting, harder to readls -la: No git status, manual checkingfind commands: 9 seconds totalModern Approach:
bat commands: Instant code comprehensioneza --long --git: Instant git status awarenessfd commands: 0.5 seconds totalwatchexec automation: 0 context switchingDaily Savings:
Solution: Install bat using package manager for your OS
Solution: Install eza using Cargo or package manager
Solution: Install fd (may be named fd-find on some systems)
cat behaviorSolution: On some Linux systems, bat is installed as batcat:
alias bat='batcat' # Add to ~/.bashrc
This skill provides:
Use modern CLI tools for all file operations in development workflows!