Перейти к содержимому

Инструменты

Просите нужный результат словами: ZubrCode сам выберет инструменты, спросит разрешения, где нужно, и вернёт результат.

Найди, где настраиваются таймауты запросов, поменяй значение по умолчанию
на 30 секунд и запусти относящиеся к этому тесты.

Обычно задействуются grep или glob, read, редактирование и shell. Можно назвать инструмент и явно:

Через grep найди все упоминания DEFAULT_TIMEOUT, потом прочитай подходящие файлы.
  • read — файл или список каталога (без рекурсии). Параметры: path, offset, limit. Текст читается страницами до 2 000 строк и 50 КиБ; PNG, JPEG, GIF, WebP и PDF передаются модели как есть (до 20 МиБ). Разрешение: read с путём.
  • glob — поиск файлов по маске (**/*.ts): path, hidden, limit (по умолчанию 100 файлов, таймаут 30 секунд). Разрешение: glob.
  • grep — поиск по содержимому: путь, номер строк, превью. pattern — регулярное выражение (если не literal), сужают path, include, caseSensitive, limit (по умолчанию 100 строк). Разрешение: grep с запросом, а не с путём поиска.
  • edit — точечная замена в существующем файле: path, oldString, newString (replaceAll — все вхождения). Разрешение: edit.
  • write — создать или полностью заменить файл; создаёт недостающие каталоги. Разрешение: edit.
  • patch — один патч, который может добавить, изменить, переместить или удалить несколько файлов; доступен части GPT-моделей, остальные получают edit и write. Разрешение: edit для каждого затронутого пути.

После правок файл может быть отформатирован (Форматтеры). Пути вне проекта дополнительно проверяются по external_directory (Разрешения).

shell выполняет команду в оболочке пользователя. workdir задаёт рабочий каталог (лучше его, чем cd в команде), timeout — таймаут в миллисекундах (по умолчанию две минуты), background: true — для долгих процессов вроде dev-сервера: вызов вернётся сразу и сообщит о завершении. Разрешение: shell для каждой строки команды; сканер дополнительно проверяет рабочий каталог и каталоги, которые можно вывести из команды.

  • webfetch — загрузить один HTTP(S)-адрес как markdown (по умолчанию), text или html; таймаут до 120 секунд. Картинки и другие бинарные ответы не поддерживаются. Разрешение: webfetch с URL.
  • websearch — поиск актуальной информации по запросу. Разрешение: websearch с запросом.
  • question — приостановить выполнение и задать пользователю вопросы с вариантами ответа (можно выбрать несколько, есть свободный ответ). Разрешение: question.
  • skill — подключить инструкции навыка по его id (Навыки). Разрешение: skill с id навыка.
  • subagent — запустить дочернюю сессию с настроенным агентом (Агенты): id агента, краткое описание и полный запрос. Передний план ждёт результат, background: true возвращает управление и сообщает о завершении. Разрешение: subagent с id агента.
  • execute — запускает JavaScript в Code Mode, чтобы вызывать и комбинировать инструменты каталога: удобно для параллельных независимых вызовов и обработки результатов без засорения контекста. Прямого доступа к файлам, импортов и таймеров нет — всё идёт через инструменты; fetch доступен для HTTP. Запрет execute с ресурсом * убирает Code Mode и доступные только через него инструменты; вложенные вызовы проверяют свои разрешения.

В Code Mode есть и утилиты сессий (переименовать, перенести сессию в другой каталог или рабочую копию) и рабочих копий git (worktree_create, worktree_list, worktree_remove).

MCP-серверы добавляют инструменты с именами и входами от своих серверов; их разрешение — <сервер>_<инструмент> с ресурсом *. Навыки добавляют задачные инструкции, а не новые инструменты. Вложения подкладывают в запрос выбранные пользователем данные, а ссылки открывают именованные внешние каталоги — всё это работает через обычные проверки разрешений.