Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Command-line fuzzy finder for interactive filtering and selection - integrates with shell, vim, and other tools.
Command-line fuzzy finder for interactive filtering and selection - integrates with shell, vim, and other tools.
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
Interactive command-line fuzzy finder with powerful integration capabilities.
# Pipe list to fzf ls | fzf # Select file find . -type f | fzf # Multi-select (Tab to select, Shift+Tab to deselect) ls | fzf -m # Preview files while selecting ls | fzf --preview 'cat {}' # With bat for syntax highlighting ls | fzf --preview 'bat --color=always {}'
# After installing, add to ~/.bashrc or ~/.zshrc: # source /path/to/fzf/shell/completion.bash # source /path/to/fzf/shell/key-bindings.bash # Key bindings: # Ctrl+R - Command history # Ctrl+T - File search # Alt+C - Directory navigation # Use in command line vim **<TAB> # File completion cd **<TAB> # Directory completion kill -9 **<TAB> # Process completion
# Open file in vim vim $(fzf) # Edit with preview vim $(fzf --preview 'bat --color=always --line-range :500 {}') # Select and copy fzf | xargs -I {} cp {} /destination/ # Delete selected files fzf -m | xargs rm
# CD to selected directory cd $(find . -type d | fzf) # Alias for quick nav alias cdf='cd $(find . -type d | fzf)' # Or use Alt+C keybinding
# Checkout branch git branch | fzf | xargs git checkout # Show commit git log --oneline | fzf | awk '{print $1}' | xargs git show # Add files interactively git status -s | fzf -m | awk '{print $2}' | xargs git add # Fuzzy git log browser alias gll='git log --oneline | fzf --preview "git show {1}"'
# Kill process ps aux | fzf | awk '{print $2}' | xargs kill # Kill multiple processes ps aux | fzf -m | awk '{print $2}' | xargs kill -9
# Preview on the right fzf --preview 'cat {}' # Preview position and size fzf --preview 'cat {}' --preview-window=right:50% # Preview with bat fzf --preview 'bat --color=always --style=numbers --line-range=:500 {}' # Toggle preview with Ctrl+/ fzf --preview 'cat {}' --bind 'ctrl-/:toggle-preview' # Preview directory contents find . -type d | fzf --preview 'ls -la {}'
# Execute action on selection fzf --bind 'enter:execute(vim {})' # Multiple bindings fzf --bind 'ctrl-e:execute(vim {})' \ --bind 'ctrl-o:execute(open {})' # Reload on key press fzf --bind 'ctrl-r:reload(find . -type f)' # Accept non-matching input fzf --print0 --bind 'enter:print-query'
# Case-insensitive (default) fzf -i # Case-sensitive fzf +i # Exact match fzf -e # Inverse match (exclude) fzf --query='!pattern' # OR operator fzf --query='py$ | js$' # .py or .js files # AND operator fzf --query='test .py' # Contains both 'test' and '.py'
# Search content and open in vim rg --line-number . | fzf | awk -F: '{print "+"$2, $1}' | xargs vim # Search and preview matches rg --line-number . | fzf --delimiter : \ --preview 'bat --color=always {1} --highlight-line {2}' \ --preview-window +{2}-/2
# Find and preview files fd --type f | fzf --preview 'bat --color=always {}' # Find files modified today fd --changed-within 1d | fzf --preview 'bat {}'
# Select and enter container docker ps | fzf | awk '{print $1}' | xargs -I {} docker exec -it {} bash # Remove selected images docker images | fzf -m | awk '{print $3}' | xargs docker rmi # View logs docker ps | fzf | awk '{print $1}' | xargs docker logs -f
# Select pod kubectl get pods | fzf | awk '{print $1}' | xargs kubectl describe pod # Get logs kubectl get pods | fzf | awk '{print $1}' | xargs kubectl logs -f # Delete pods kubectl get pods | fzf -m | awk '{print $1}' | xargs kubectl delete pod
Add to your shell config: # Fuzzy file search and open in vim alias fv='vim $(fzf --preview "bat --color=always --style=numbers {}")' # Fuzzy directory change alias fcd='cd $(find . -type d | fzf)' # Fuzzy git checkout alias gco='git branch | fzf | xargs git checkout' # Fuzzy process kill alias fkill='ps aux | fzf | awk "{print \$2}" | xargs kill -9' # Fuzzy history search (Ctrl+R is built-in) alias fh='history | fzf | awk "{print \$2}" | xargs -I {} sh -c "{}"' # Find and edit alias fe='fd --type f | fzf --preview "bat --color=always --style=numbers {}" | xargs -r $EDITOR'
# Default options export FZF_DEFAULT_OPTS=' --height 40% --layout=reverse --border --inline-info --preview "bat --style=numbers --color=always --line-range :500 {}" ' # Use fd instead of find export FZF_DEFAULT_COMMAND='fd --type f --hidden --follow --exclude .git' # For Ctrl+T export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" # For Alt+C export FZF_ALT_C_COMMAND='fd --type d --hidden --follow --exclude .git'
export FZF_DEFAULT_OPTS=' --color=bg+:#313244,bg:#1e1e2e,spinner:#f5e0dc,hl:#f38ba8 --color=fg:#cdd6f4,header:#f38ba8,info:#cba6f7,pointer:#f5e0dc --color=marker:#f5e0dc,fg+:#cdd6f4,prompt:#cba6f7,hl+:#f38ba8 '
# Smart file browser with preview fzf \ --preview 'bat --color=always --style=numbers --line-range=:500 {}' \ --preview-window='right:60%:wrap' \ --bind 'enter:execute(vim {})' \ --bind 'ctrl-y:execute-silent(echo {} | pbcopy)+abort' \ --header 'Enter: edit | Ctrl+Y: copy path'
# Search in files and navigate to line rg --line-number --no-heading . | \ fzf --delimiter=: \ --preview 'bat --color=always --style=numbers --highlight-line {2} {1}' \ --preview-window='+{2}-/2' \ --bind 'enter:execute(vim {1} +{2})'
#!/bin/bash # docker-fzf.sh container=$(docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Image}}" | fzf --header-lines=1 | awk '{print $1}') if [ -n "$container" ]; then docker exec -it "$container" bash fi
Use --preview for visual context Combine with bat, rg, fd for powerful workflows Press ? in fzf to see keybindings Use Tab for multi-select Ctrl+/ to toggle preview (if bound) Ctrl+K / Ctrl+J to navigate Start query with ' for exact match Start with ! to exclude Use | for OR, space for AND Set FZF_DEFAULT_OPTS for persistent config
# For large file lists, use fd or rg export FZF_DEFAULT_COMMAND='fd --type f' # Limit depth for faster results export FZF_DEFAULT_COMMAND='fd --type f --max-depth 5' # Use parallel preview fzf --preview 'bat {}' --preview-window 'hidden'
GitHub: https://github.com/junegunn/fzf Wiki: https://github.com/junegunn/fzf/wiki Examples: https://github.com/junegunn/fzf/wiki/examples
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.