[FEATURE] Improve @ file search command for large repos

Status Fixed / completed
Maintainer reply ✓ Yes — amorriscode
Activity 7 comments · opened Sep 30, 2025 · closed Dec 5, 2025
💡 Likely answer: A maintainer (amorriscode, contributor) responded on this thread — see the highlighted reply below.

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

The @ file search command in Claude Code becomes noticeably slow in large monorepos, taking several seconds to populate results compared to terminal-based tools like fzf which provide near-instant results. This creates friction in developer workflow when frequently referencing files during conversations with Claude. The delay accumulates over time, especially when exploring unfamiliar codebases, referencing multiple related files in sequence, or iterating on code across different modules. While .claudeignore helps, it requires manual configuration and doesn't match the performance of optimized fuzzy finders in large repositories.

Proposed Solution

Add a configuration option to use fzf (or similar high-performance fuzzy finder) for the @ file search command when available. The implementation would:

  1. Check if fzf is installed on the system
  2. Use fzf for file search when available, falling back to the current implementation if not
  3. Respect both .gitignore and .claudeignore when generating the file list
  4. Consider using ripgrep (rg) for initial file list generation, as fzf + ripgrep is a common high-performance

combination

The user experience would be: developers who already have fzf installed (commonly bound to ctrl+t in terminals) would automatically get the same fast search performance in Claude Code, with no additional configuration required beyond an optional setting to enable it.

Alternative Solutions

I open up another terminal window, use fzf to find the file, copy it, then paste it into claude code

Priority

Medium - Would be very helpful

Feature Category

Performance and speed

Use Case Example

Example scenario:

  1. I'm working in a large monorepo
  2. I need to reference a specific API file to ask Claude about its implementation
  3. I type @ to search for the file
  4. Current behavior: Search takes 3-5 seconds to populate results per character typed, breaking my flow of thought
  5. Desired behavior: Search returns results in <100ms, similar to using ctrl+t (fzf) in my terminal
  6. Over the course of a conversation, I might reference 10-20 files, so the time savings would be significant (30-50

seconds saved per character per conversation)

  1. This would also reduce cognitive friction - the current delay causes me to lose my train of thought or forget what I was searching for

Additional Context

_No response_

View original on GitHub ↗

7 Comments

kevinmichaelchen · 10 months ago

I regularly feel the effect of this as well, especially in a large monorepo with lots of nesting. The experience in OpenCode (where they use fuzzysearch) is both faster and more accurate.

daviddai-evenup · 10 months ago

agreed, it would be great if we can add fuzzy search functionality to this

13ue · 9 months ago

+1 the @ file search could have nicer fuzzyness 👍

amorriscode contributor · 9 months ago

@andrewklingelhofer out of curiosity are you using the native build of Claude Code? It should have better performance on larger repos.

dennislbc · 9 months ago

My claude is entirely unable to reference any sub directories at all (v2.0.55), if I use @ it shows none of my sub directories/files, weirdly it only shows folders like .claude, .cursor etc. Then when claude tries to do file searches it finds nothing and annoyingly it has issues writing to files even when its given them. I asked claude to figure out what's going on:

So Read works fine, but Glob and Grep are completely broken.

  My theory: The Glob and Grep tools are using a different working directory or path resolution than Bash and Read. This is likely a bug/configuration issue with how Claude Code is set up on your Windows system - possibly related to:

  1. Git Bash vs native Windows path handling
  2. The tools might be looking at a different root directory
  3. Some internal caching or indexing issue

  This is a Claude Code tooling bug on Windows, not something in your codebase. The workaround is to use find and grep via Bash (which works), or use Read directly when you know the file path.

  You may want to report this at https://github.com/anthropics/claude-code/issues
amorriscode contributor · 8 months ago

Closing this as it should be resolved with the native build. @dennislbc please open another issue if you this continues. Yours seems to be Windows specific.

github-actions[bot] · 8 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.