Add @ file tagging support to Goose CLI
Please explain the motivation behind the feature request.
The Goose Desktop UI currently has @ file tagging/mention functionality (implemented in the MentionPopover component in ui/desktop/src/components/MentionPopover.tsx), which allows users to type "@filename" to reference and attach files directly in their messages with autocomplete suggestions. However, the CLI version lacks this feature, creating an inconsistency between the two interfaces.
Describe the solution you'd like Add @ file tagging support to the Goose CLI that:
- Detects when users type "@" in their input
- Provides file autocomplete/suggestions similar to the Desktop implementation
- Allows users to reference multiple files in a single message using
@filenamesyntax - Integrates with the existing CLI input handling in
crates/goose-cli/src/session/input.rs
Additional context
- The Desktop implementation uses a
MentionPopovercomponent with fuzzy matching for file search - The feature is documented in
documentation/docs/guides/using-goosehints.md:
Organize with @-mentions: For frequently-needed documentation, use `@filename.md` or `@relative/path/testing.md`
- [x] I have verified this does not duplicate an existing feature request
I think @spencrmartin has a line on a solution for this
that would be awesome! I'll have some bandwidth to look into this next week, but if there's already prior art or work in-flight even better!