You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The glob tool runs rg --files --glob=<pattern> without --no-ignore, so anything in .gitignore is silently filtered out — even when the agent passes an exact path it already knows exists.
This makes sense for grep (gitignored matches would flood context with node_modules/dist noise). It doesn't make sense for glob, which only returns paths. The cost of including a gitignored hit is one line; the cost of hiding it is the agent asserting a file doesn't exist when it does.
Reproduction
Just using this repo as example, on dev after bun install, ask your agent to run:
$ ls packages/opencode/node_modules/effect/package.json # exists
glob("packages/opencode/node_modules/effect/package.json") # I → No files found
glob("**/node_modules/effect/package.json") → No files found
Same for dist/, tmp/, logs/, .env*, *.tsbuildinfo. Inconsistent with --hidden, which the same call passes — hidden files are returned, gitignored files are not.
Common cases this breaks:
"Find the built bundle" → dist/**/*.js returns nothing
"Where does effect define X?" → **/node_modules/effect/** returns nothing
changed the title [-]More consideration on `ripgrep` strategies[/-][+]glob tool hides files matching gitignore — returns "No files found" for files that exist on disk[/+]on Jun 12, 2026
changed the title [-]glob tool hides files matching gitignore — returns "No files found" for files that exist on disk[/-][+]glob tool respects .gitignore[/+]on Jun 12, 2026
Activity
[-]More consideration on `ripgrep` strategies[/-][+]glob tool hides files matching gitignore — returns "No files found" for files that exist on disk[/+][-]glob tool hides files matching gitignore — returns "No files found" for files that exist on disk[/-][+]glob tool respects .gitignore[/+]github-actions commentedon Aug 17, 2026
To stay organized issues are automatically closed after 60 days of no activity. If the issue is still relevant please open a new one.