The whole hunk
from line 271, old and new numbered
/
lines
from line 271
271271
272272Glob doesn't respect `.gitignore` by default, so it finds gitignored files alongside tracked ones. This differs from [Grep](#grep-tool-behavior), which skips gitignored files. To make Glob respect `.gitignore`, set `CLAUDE_CODE_GLOB_NO_IGNORE=false` before launching Claude Code.
273273
274Claude Code decides permission for a Glob call before it checks whether the search directory exists. It still runs the read-permission check for a missing `path` outside the [working directories](/docs/en/permissions#working-directories), so a permission prompt for a path doesn't mean the path exists.
275
274276A `pattern` or `path` value that contains a null byte returns an error asking Claude to remove it. 
275277
276278## Grep tool behavior
from line 292
290292Claude can scope results by file with the `glob` parameter, such as `**/*.tsx`, or by language with the `type` parameter, such as `py` or `rust`. By default, patterns match within a single line. Claude can set `multiline: true` to match across line boundaries.
291293
292294Grep respects `.gitignore`, so gitignored files are skipped. To search a gitignored file, Claude passes its path directly.
295
296Claude Code decides permission for a Grep call before it checks whether the search `path` exists. It still runs the read-permission check for a missing `path` outside the [working directories](/docs/en/permissions#working-directories), so a permission prompt for a path doesn't mean the path exists.
293297
294298## LSP tool behavior
295299