From frg
Search and replace across files with diff preview using frg CLI. Supports regex capture groups, multiline patterns (?s), case-insensitivity, fixed strings, and --type filtering. Preview before --write.
How this skill is triggered — by the user, by Claude, or both
Slash command
/frg:frg-replaceThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Use `frg replace` for codebase-wide search and replace. Shows a diff preview by default, applies changes with `--write`. Works on unindexed trees — no `frg index` required.
Use frg replace for codebase-wide search and replace. Shows a diff preview by default, applies changes with --write. Works on unindexed trees — no frg index required.
frg replace "old" "new" . # preview (dry-run)
frg replace "old" "new" . --write # apply changes
frg replace -i "old" "new" . # case-insensitive
frg replace -F "old.val" "new.val" . # fixed string
frg replace "fn (\w+)" "fn ${1}_v2" . # capture groups
frg replace --type ts "old" "new" . # filter by file type
frg replace '(?s)start\n.*?\nend' 'replaced' . # multiline
--writenpx claudepluginhub qhkm/fastripgrep --plugin frgPerforms batch find-and-replace using sd CLI (sed alternative) for variable renames, import updates, regex patterns, and string replacements across files with safe preview workflows.
Searches codebases using ripgrep (rg) with regex patterns, file type/extension filtering, multi-line support, and .gitignore respect. Use for text patterns, code snippets, or multi-file analysis.
Activates trace-mcp apply_codemod for any bulk mechanical change (regex replace, signature updates, import fixes) applied 2+ times across one or many files, instead of repeated Edit calls.