Fuzzy Finder for file paths
Feature Enhancement Request: Fuzzy Finder for File Selection in Goose Prompts
Please explain the motivation behind the feature request.
Currently, when referencing a file in Goose prompts, users must manually type out or autocomplete the full file path. This can be inefficient when working with large projects or deeply nested file structures. A fuzzy finder integration would allow users to quickly search for and select a file without needing to type the full path, significantly improving usability and efficiency.
Describe the solution you'd like
I propose integrating a fuzzy finder tool (similar to [fzf](https://github.com/junegunn/fzf)) into Goose prompts to allow users to:
- Trigger a fuzzy search UI within the prompt when needing to reference a file.
- Search for files dynamically based on partial input, filtering results in real time.
- Use arrow keys or other navigation shortcuts to select a file.
- Automatically insert the selected file’s path into the Goose prompt once confirmed.
This would enhance the user experience by making file selection faster and reducing errors when manually typing paths.
Describe alternatives you've considered
- Relying on shell autocompletion, which requires knowing the exact path structure.
- Using external tools like
findorlsand manually copying the path, which adds unnecessary steps. - Writing custom scripts to integrate fuzzy searching into the workflow, but this requires per-user setup rather than being a built-in feature.
Additional context
Integrating a fuzzy finder would be particularly beneficial for users working in large codebases or projects with many files. If there are constraints around dependencies, an alternative could be leveraging an existing lightweight fuzzy matching algorithm within Goose itself.
- [x] I have verified this does not duplicate an existing feature request
@MichaelRPaquette agreed fuzzyfinder is awesome. This is a good idea, but I'm not sure how we'd tackle this. When you input to goose, the text box acts more as a chat window than terminal.
I don't think we'd be opposed, if you can find a way to fuzzyfinder into the product, feel free to let us know
@wendytang I was able to get this working with electron IPC
@spencrmartin is there a PR for this?
Nothing up to date/usable but I could jump back into it to try and get the electron IPC working again
I like this feature but I am also aware that we have things that are really on fire
I can pull something back up and try to keep it close to main should we want to bring it in. Will add it to my list.
Working in this PR @DOsinga - https://github.com/block/goose/pull/3240
Ready to rumble - https://github.com/block/goose/pull/3240
I saw, this looks awesome