| name | cli-dev |
| description | File discovery, fuzzy filtering, safe deletion, text replacement, structural code search for development workflows. Use when working with fd, fzf, trash, sd, ast-grep, or asking about file operations, interactive selection, safe deletion, text replacement, find and replace, sed alternative, AST patterns, structural search, code transformation, systematic refactoring. |
CLI Development Tools
File operations and code transformation toolkit for efficient development workflows.
Capabilities
- File Discovery - Fast, git-aware file finding with fd
- Interactive Filtering - Fuzzy selection from any line-based input with fzf
- Safe Deletion - Recoverable file removal with trash
- Text Replacement - Intuitive find & replace with sd (modern sed alternative)
- Structural Code Search - AST-aware code search and refactoring with ast-grep
- Pipeline Integration - Combine tools for powerful workflows (fd | fzf | xargs trash, fd | xargs sd, fd | xargs ast-grep)
- Prescriptive Bash Guidance - When/how to use tools via Claude Code Bash tool
When to Use
Trigger phrases:
- "fd", "fzf", "trash", "sd", "ast-grep"
- "file discovery", "find files", "search files"
- "fuzzy filter", "interactive selection", "select files"
- "safe delete", "safe removal", "recoverable deletion"
- "text replacement", "find and replace", "sed alternative"
- "structural search", "AST patterns", "code transformation", "systematic refactoring"
- "file operations", "batch file operations"
Actions:
- Load cli-dev skill metadata (this file)
- Reference quick reference for tool purposes and usage
- Load specific tool resource for detailed guidance (resources/{tool}.md)
- Apply prescriptive Bash patterns for Claude Code workflows
Quick Reference
| Tool | Purpose | Common Usage | Resource |
|---|---|---|---|
| fd | Fast file discovery (replaces find) | fd pattern, fd -e ts src/ |
resources/fd.md |
| fzf | Interactive fuzzy filtering | fd | fzf, rg pattern | fzf |
resources/fzf.md |
| trash | Safe file deletion (recoverable) | trash file.txt, fd | fzf --multi | xargs trash |
resources/trash.md |
| sd | Text replacement (modern sed) | sd 'old' 'new' file, sd -p 'old' 'new' (preview) |
resources/sd.md |
| ast-grep | AST-based code search/refactoring | ast-grep -p 'pattern', fd -e ts | xargs ast-grep |
resources/ast-grep.md |
Key workflows:
- File discovery:
fd pattern(faster than find, git-aware) - Interactive selection:
fd | fzf(pick from list) - Batch operations:
fd pattern | fzf --multi | xargs trash(select + delete safely) - Text replacement:
sd 'old' 'new' file(simpler than sed, preview with-p) - Code transformation:
ast-grep -p 'pattern' --lang ts(AST-aware search/refactor)
Resources
Tool Documentation (resources/):
fd.md - Modern find replacement (fast, git-aware, sensible defaults)
- When to use vs find
- Common Bash patterns for Claude Code
- Prescriptive guidance (prefer fd over find)
- Pipeline integration (fd | fzf, fd --exec)
fzf.md - Interactive fuzzy finder for shell pipelines
- When to use for filtering
- Common Bash patterns (multi-select, preview)
- Prescriptive guidance (always combine with fd)
- Pipeline integration examples
trash.md - Safe alternative to rm (recoverable deletion)
- When to use vs rm
- Common Bash patterns (batch deletion, interactive cleanup)
- Prescriptive guidance (prefer trash over rm for user files)
- Safety patterns for Claude Code workflows
sd.md - Modern sed alternative (intuitive text replacement)
- When to use vs sed
- Common Bash patterns (in-place, preview, literal mode)
- Prescriptive guidance (prefer sd over sed for interactive work)
- Pipeline integration (fd | xargs sd)
ast-grep.md - AST-based code search and refactoring
- When to use vs text-based search (grep/sd)
- Common Bash patterns (structural search, language-aware refactoring)
- Prescriptive guidance (prefer ast-grep for code transformations)
- Pipeline integration (fd | xargs ast-grep)
- Pattern library (ast-grep-patterns.yaml)
Progressive Disclosure Strategy
Metadata (always loaded, ~100 words):
- Skill name, description with triggers
- Quick reference table (5 tools)
- Basic capabilities overview
SKILL.md (loaded when skill invoked, ~150 lines):
- Full capabilities description
- When to use (trigger phrases)
- Quick reference with common patterns
- Resources overview
Resources (loaded on-demand, ~50-80 lines each):
- Detailed tool documentation
- When to use (vs alternatives)
- Bash patterns for Claude Code
- Prescriptive guidance (prefer X over Y)
- Tips and workflow integration
Token efficiency:
- Metadata only: ~25 tokens (passive presence)
- With SKILL.md: ~500 tokens (skill invoked)
- With resource: ~700-900 tokens (specific tool guidance)
- vs framework baseline: ~2,150 tokens (55% savings for tool-specific queries)
Integration with Other Skills
framework skill:
- Framework references cli-dev for file operations
- No dependencies (cli-dev self-contained)
- Trigger separation: "workflow" → framework, "fd" → cli-dev
python skill:
- May reference fd for Python file discovery
- Independent loading (no coupling)
Other cli-* skills:
- cli-doc - Documentation tools (markitdown, mdformat, nl, ocrmypdf)
- No overlaps in tool coverage (git skill covers git workflows separately)
Usage Examples
Example 1: File discovery
User: "How do I find all TypeScript files in src/?"
→ cli-dev loads (metadata + SKILL.md)
→ Quick reference: fd -e ts src/
→ Link to resources/fd.md for detailed patterns
Example 2: Interactive file selection
User: "I want to select files interactively"
→ cli-dev loads
→ Quick reference: fd | fzf
→ Resources/fzf.md: Multi-select with --multi, preview with --preview
Example 3: Safe batch deletion
User: "How do I safely delete temporary files?"
→ cli-dev loads
→ Quick reference: fd '.tmp$' | fzf --multi | xargs trash
→ Resources/trash.md: Prescriptive guidance on trash vs rm
Example 4: Pipeline integration
User: "Find markdown files and preview them"
→ cli-dev loads
→ Combine fd + fzf: fd -e md | fzf --preview 'bat --color=always {}'
→ Resources/fd.md and fzf.md: Detailed pipeline patterns
Example 5: Bash tool guidance
User: "Use fd to find configuration files"
→ cli-dev loads resources/fd.md
→ Returns Bash pattern: fd -e json -e yaml config/
→ Prescriptive guidance: Prefer fd over find (faster, git-aware)
Success Metrics
Trigger accuracy:
95% auto-load when tool mentioned (fd, fzf, trash, sd, ast-grep)
- No collisions with other skills (framework, python)
- Specific tool names as primary triggers
Token efficiency:
- Metadata: ~25 tokens (always loaded)
- SKILL.md: ~500 tokens (skill invoked)
- Resources: ~700-900 tokens per tool (on-demand)
- vs framework: 55% savings for tool-specific queries
Prescriptive guidance quality:
- All 5 tool docs have "When to Use", "Bash Patterns", "Prescriptive Guidance"
- Clear preference statements (prefer fd over find, trash over rm, ast-grep for code)
- Pipeline integration examples (fd | fzf, fd | xargs trash, fd | xargs ast-grep)
Progressive disclosure effectiveness:
- Resources load only when tool specifically mentioned
- Quick reference sufficient for common queries
- Detailed guidance available on-demand
Usability:
- Claude Code can find tool quickly (quick reference table)
- Bash patterns ready for immediate use
- Prescriptive guidance clear (when to use, when NOT to use)
Notes
Type: Guidance-Only (no scripts, CLI tools external)
Portability: Self-contained .claude/skills/cli-dev/ folder (shareable)
Tool installation: fd, fzf, trash installed separately (not part of skill)
Pattern: Type 6 Guidance-Only (matching claude-md, agents-md pattern)
Quality target: 9.5/10 (DRY, token efficiency, accuracy, completeness, format)