This skill should be used when Claude is writing a script that involves user selection, interactive filtering, file picking, process selection, or any interactive list. Triggers when the user asks to "write a script", "make a selector", "pick from a list", "choose a file", "select a process", "interactive menu", "fuzzy finder", "use fzf", "fzf preview", "fzf theme", or when Claude would otherwise pipe output into basic `| fzf`. Also triggers when the user says "make it interactive", "let me choose", "add a picker", "autocomplete", "search through", "browse", "filter list", "dropdown". Also triggers on use-case patterns: "git log picker", "branch selector", "branch picker", "commit picker", "docker container picker", "preview files", "preview commits", "process picker", "kill picker", "select from output", "choose from results", "pick a branch", "pick a commit", "pick a container", "pick a file".
From fzf-powernpx claudepluginhub metcalfc/claude-plugin --plugin fzf-powerThis skill uses the workspace's default tool permissions.
references/bind-actions.mdreferences/examples.mdreferences/options.mdreferences/patterns.mdreferences/theming.mdGuides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Configures VPN and dedicated connections like Direct Connect, ExpressRoute, Interconnect for secure on-premises to AWS, Azure, GCP, OCI hybrid networking.
When writing scripts that involve user selection, always use fzf with its full capabilities. Never write bare | fzf — always include preview, formatting, and keybinding hints.
Every fzf invocation should have at minimum:
--preview) showing context for the current selection--header) explaining available keys--border, --height, --layout=reverse)--ansi) when piping colored outputsomething | fzf \
--ansi \
--layout=reverse \
--border=rounded \
--height=80% \
--header='Enter: select / Esc: cancel' \
--preview='echo {}' \
--preview-window=right,50%,wrap
The preview window is fzf's superpower. Configure it properly:
--preview-window=POSITION,SIZE%,FLAGS
right (default), up, down, left50% or 60%wrap, follow (auto-scroll), hidden, cycle<80(up,50%) — if terminal < 80 cols, switch to up layout~3 — fix top 3 lines of preview+{2}+3/3 — scroll to line from field 2Common preview commands by context:
bat --color=always {} or cat {}tree -C {} | head -50git show --color=always {1}ps -p {2} -o pid,ppid,cmd,rss,etimedocker inspect {1} | jq .echo {} | jq .--bind transforms fzf from a selector into a full TUI application.
Key actions to use:
reload(CMD) — replace list with new command outputbecome(CMD) — replace fzf with another command (clean exit)execute(CMD) — run command, return to fzfchange-preview(CMD) — swap preview contentchange-preview-window(A|B|C) — cycle preview layoutstoggle-preview — show/hide previewchange-prompt(STR) — update prompt (useful for mode state)Placeholders in commands:
{} — current line{+} — all selected lines{q} — current query{1}, {2} — delimiter-separated fieldsAlways apply a theme via --color. The user prefers themed fzf — never leave it at defaults.
Check if FZF_DEFAULT_OPTS is already set (user may have a global theme). If not, apply a tasteful theme. See references/theming.md for the color system and example themes.
Detailed patterns are in the references/ directory:
references/options.md — Full option reference (display, layout, search, scripting)references/bind-actions.md — The --bind action system, events, placeholders, transform patternsreferences/theming.md — Color system, color names, theme examplesreferences/patterns.md — Advanced patterns: ripgrep launcher, state toggle, reload, mode switchingreferences/examples.md — Real-world recipes: git, docker, processes, files, kubernetes| fzf — Always add preview, header, and formatting--ansi — Required when piping colored output (git, bat, ls --color)--height=80%--header-lines — When piping tabular output (ps, docker ps), use --header-lines=1 to pin the header rowexecute when become is better — For "select then open" workflows, become is cleaner--multi — When multiple selection makes sense, add -m with tab/shift-tab--delimiter + --nth — Search only relevant fields, not IDs or metadata--select-1 / --exit-0 — For scripting: auto-select on single match, exit cleanly on no match