# Glob

Зіставляє імена файлів з глоб-шаблоном і повертає шляхи, відсортовані за часом останньої модифікації (спочатку найновіші). Оптимізований для швидкого знаходження файлів у кодових базах будь-якого розміру без виклику `find`.

## Коли використовувати

- Перелічення кожного файлу певного розширення (наприклад, усі файли `*.ts` під `src`)
- Виявлення файлів конфігурації чи фікстур за угодою іменування (`**/jest.config.*`, `**/*.test.tsx`)
- Звуження області пошуку перед запуском цілеспрямованого `Grep`
- Перевірка, чи файл уже існує за відомим шаблоном, перед викликом `Write`
- Пошук нещодавно змінених файлів, покладаючись на впорядкування за часом модифікації

## Параметри

- `pattern` (string, обовʼязковий): Глоб-вираз для зіставлення. Підтримує `*` для односегментних підстановок, `**` для рекурсивних збігів і `{a,b}` для альтернатив, наприклад `src/**/*.{ts,tsx}`.
- `path` (string, необовʼязковий): Каталог, у якому виконувати пошук. Має бути дійсним шляхом каталогу, коли надається. Опустіть поле повністю, щоб шукати в поточному робочому каталозі. Не передавайте рядки `"undefined"` чи `"null"`.

## Приклади

### Приклад 1: Кожен TypeScript-файл вихідного коду
Викличте `Glob` з `pattern: "src/**/*.ts"`. Результат — список, відсортований за mtime, тому нещодавно відредаговані файли зʼявляються першими, що корисно для фокусування на гарячих точках.

### Приклад 2: Знаходження кандидата на визначення класу
Коли ви підозрюєте, що клас живе у файлі, імені якого не знаєте, шукайте з `pattern: "**/*UserService*"`, щоб звузити кандидатів, потім продовжіть `Read` чи `Grep`.

### Приклад 3: Паралельне виявлення перед більшим завданням
В одному повідомленні видайте кілька викликів `Glob` (наприклад, один для `**/*.test.ts` і один для `**/fixtures/**`), щоб обидва виконувалися паралельно і їхні результати можна було корелювати.

## Примітки

- Результати впорядковані за часом модифікації файлу (спочатку найновіші), не за алфавітом. Сортуйте далі, якщо вам потрібне стабільне впорядкування.
- Шаблони оцінюються інструментом, не оболонкою; вам не потрібно брати їх у лапки чи екранувати, як у командному рядку.
- Для відкритого дослідження, що вимагає кількох раундів пошуку та міркування, делегуйте `Agent` з типом агента Explore замість зчеплення багатьох викликів `Glob`.
- Віддавайте перевагу `Glob` над викликами `Bash` з `find` чи `ls` для виявлення імен файлів; він послідовно обробляє дозволи та повертає структурований вивід.
- Коли шукаєте вміст усередині файлів, а не імена файлів, використовуйте `Grep`.
