Find files, buffers, projects, and editor history with fuzzy search.
2 other tools for: Find filesGood to know
File search needs fd, fdfind, ripgrep, or a supported find command.
Written by @iluxav from the project's code and releases, not by its maintainers. Last updated for v2.31.0 (2026-03-20), so it may lag behind newer releases.
Find files and code, manage buffers and terminals, view images, and review GitHub pull requests from Neovim.
File search needs fd, fdfind, ripgrep, or a supported find command.
Project grep uses ripgrep.
Requires Git and a Git repository.
Requires an attached language server supporting the requested operation.
Requires Lua configuration.
Requires the Snacks picker. Trash needs trash, gio, a supported KDE client, or Windows PowerShell; deletion falls back to permanent removal if no supported command is found.
Requires a Kitty Graphics Protocol terminal; WezTerm lacks inline rendering and Zellij is unsupported. Non-PNG conversion needs ImageMagick; document rendering needs Tree-sitter parsers.
The default threshold is 1.5 MB or an average line length of 1,000 characters.
Session restoration requires a supported session manager; automatic session-manager support uses lazy.nvim.
Requires a Git remote; available URL types depend on the host. The default browser opener on Neovim 0.9 uses lazy.nvim.
Requires LazyGit.
Enable the notifier to replace vim.notify.
Profiles Lua code through instrumentation.
Requires early setup of the quickfile module.
Language-server updates depend on server support; external explorers need the documented integration.
Falls back to indentation when Tree-sitter scope detection is unavailable.
Lua execution applies to Lua scratch buffers; scratch files are organized by directory, Git branch, and count.
Terminal buffers are excluded by the default filter.
Git indicators depend on sign-producing integrations.
Requires an available shell or command.
which-key integration is optional.
Requires an attached language server with document highlighting support.
Showing the statusline requires a global statusline.
Requires Lua configuration.
Requires Lua configuration; LSP-aware maps need a matching attached client.
Requires installed, authenticated GitHub CLI and the Snacks picker. PR diff review comments require the fancy renderer, which is forced for that view.
Requires a tags file.
Requires Tree-sitter highlighting and the relevant language parser.
GitHub review comments can include code suggestions, and the action menu can start a review. LSP configuration previews show server commands and code actions, including dynamically registered actions.
Also: Adds starting a review and LSP command/action inspection; fixes input completion and disables completion in large-file buffers.
Install tag v2.31.0 with Neovim >= 0.9.4; GitHub tools need authenticated GitHub CLI and the Snacks picker.
Seeded by @iluxav with Codex
The closely spaced v2.24.0–v2.30.0 releases add GitHub issue/PR views and inline reviews, plus stage/unstage/restore actions for Git hunks. Picker diff settings, path truncation, custom finder arguments, scratch storage, and several defaults change.
Also: Adds contextual keymaps and ctags navigation; extends Git hunks, scratch management, images, and file operations, with configuration migrations and changed defaults.
Install tag v2.30.0 with Neovim >= 0.9.4; GitHub operations require authenticated GitHub CLI and the Snacks picker.
Seeded by @iluxav with Codex
Inline math rendering is updated and extended to Neorg. The explorer selects No first in confirmation prompts, while image concealment now targets math by default.
Also: Remote Git branches can be listed, scope detection can be disabled per buffer, and explorer confirmation defaults to No.
Install tag v2.23.0; Neovim >= 0.9.4. Inline math needs a compatible graphics terminal, a document parser, and math conversion tools.
Seeded by @iluxav with Codex
Image math configuration gains `math.enabled` and LaTeX/Typst templates. Org rendering moves to the Org mode plugin, and existing LaTeX font/package overrides need their new configuration path.
Also: Picker input gains register-style insert shortcuts, and scrolling works on Neovim 0.9.4.
Install tag v2.22.0 with Neovim >= 0.9.4; image rendering needs a compatible terminal and the relevant conversion tools.
Seeded by @iluxav with Codex
This baseline records capabilities already present at the start of the release window, using the v2.22.0 documentation. Modules are selected through Snacks configuration and exposed through `Snacks` functions.
Also: Existing tools cover file browsing, images, scratch notes, terminals, notifications, code scopes, and focused editing.
Install snacks.nvim through a Neovim package manager; requires Neovim >= 0.9.4. Enable the desired modules and initialize startup modules early.
Seeded by @iluxav with Codex