diff --git a/lua/plugins/grug-far.lua b/lua/plugins/grug-far.lua
new file mode 100644
index 0000000000000000000000000000000000000000..339bc7ce199415aad2a88bf28806aad5763537d0
--- /dev/null
+++ b/lua/plugins/grug-far.lua
@@ -0,0 +1,22 @@
+return {
+    "MagicDuck/grug-far.nvim",
+    opts = { headerMaxWidth = 80 },
+    cmd = "GrugFar",
+    keys = {
+        {
+            "<leader>sr",
+            function()
+                local grug = require("grug-far")
+                local ext = vim.bo.buftype == "" and vim.fn.expand("%:e")
+                grug.grug_far({
+                    transient = true,
+                    prefills = {
+                        filesFilter = ext and ext ~= "" and "*." .. ext or nil,
+                    },
+                })
+            end,
+            mode = { "n", "v" },
+            desc = "Search and Replace",
+        },
+    },
+}