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

Справочник встроенных инструментов

У Agent есть набор встроенных инструментов, которые AI может автоматически вызывать во время диалога. Эти инструменты доступны по умолчанию в постоянных диалогах, и разработчикам скриптов обычно не нужно вызывать их напрямую — AI сам выбирает подходящий инструмент исходя из намерения пользователя.

Понимание возможностей этих инструментов помогает писать лучшие системные промпты и пользовательские инструменты.

Получение веб-данных

web_fetch

Загружает содержимое URL, поддерживая извлечение текста из HTML и суммаризацию LLM.

ПараметрТипОбязательноОписание
urlstringДаЦелевой URL (только http/https)
promptstringНетПромпт суммаризации (при указании LLM используется для сжатия содержимого)
max_lengthnumberНетМаксимальное число символов содержимого

Подробности поведения:

  • Таймаут запроса 30 секунд
  • Из HTML автоматически извлекается основное тело (навигация, боковые панели и т.д. удаляются)
  • JSON-ответы автоматически разбираются
  • Обычный текст возвращается как есть
  • При указании prompt загруженное содержимое отправляется в LLM для суммаризации

Возвращаемое значение:

{
"url": "https://example.com",
"content_type": "text/html",
"content": "The extracted body content...",
"truncated": false,
"final_url": "https://example.com/redirected"
}

Запрашивает поисковую систему и возвращает структурированные результаты поиска.

ПараметрТипОбязательноОписание
querystringДаПоисковые ключевые слова
max_resultsnumberНетМаксимальное число результатов (по умолчанию 5, максимум 10)

Поддерживаемые поисковые системы:

СистемаОписаниеТребуется настройка
DuckDuckGoСистема по умолчаниюНастройка не нужна
BingMicrosoft Bing SearchНужен API Key
BaiduBaidu SearchAPI Key не нужен
Google Custom SearchGoogle Custom SearchНужны API Key + CSE ID

Поисковые системы настраиваются в панели управления: Agent → Настройки.

Возвращаемое значение:

[
{
"title": "Search result title",
"url": "https://example.com/result",
"snippet": "Result snippet text..."
}
]

get_tab_content

Читает отрисованное содержимое страницы заданной вкладки, преобразуя его в структурированный Markdown с аннотациями CSS-селекторов.

ПараметрТипОбязательноОписание
tab_idnumberДаID вкладки
selectorstringНетCSS-селектор; извлекается только совпадающая часть
promptstringНетПромпт суммаризации
max_lengthnumberНетМаксимальное число символов содержимого

Отличие от web_fetch: get_tab_content читает страницу уже отрисованную браузером (включая динамический JS-контент), тогда как web_fetch делает новый HTTP-запрос.

Возвращаемое значение:

{
"tab_id": 123,
"url": "https://example.com",
"title": "Page title",
"content": "Structured content...",
"truncated": false,
"used_selector": "main"
}

Управление вкладками

list_tabs

Запрашивает открытые вкладки с поддержкой нескольких условий фильтрации.

ПараметрТипОбязательноОписание
url_patternstringНетRegex для сопоставления URL
title_patternstringНетRegex для сопоставления заголовка
activebooleanНетТолько активная вкладка
window_idnumberНетКонкретное окно
audiblebooleanНетТолько вкладки, воспроизводящие аудио

open_tab

Открывает новую вкладку или навигирует существующую.

ПараметрТипОбязательноОписание
urlstringДаЦелевой URL
tab_idnumberНетID существующей вкладки (при указании навигирует её; иначе открывается новая)
activebooleanНетАктивировать ли (по умолчанию true)
window_idnumberНетКонкретное окно
wait_until_loadedbooleanНетЖдать ли окончания загрузки страницы (по умолчанию true)

close_tab

Закрывает вкладку.

ПараметрТипОбязательноОписание
tab_idnumberДаID вкладки

activate_tab

Активирует вкладку и фокусирует её окно.

ПараметрТипОбязательноОписание
tab_idnumberДаID вкладки

Файловая система (OPFS)

opfs_write

Записывает файл в рабочее пространство.

ПараметрТипОбязательноОписание
pathstringДаПуть к файлу
contentstringДаСодержимое файла (бинарные данные через data URL)

opfs_read

Читает файл из рабочего пространства. По умолчанию автоматически определяет тип: текстовые файлы возвращают содержимое, бинарные — blob URL.

ПараметрТипОбязательноОписание
pathstringДаПуть к файлу
modestringНет"text" / "blob" / "auto" (по умолчанию), принудительный режим возврата
offsetnumberНетНачальный номер строки (с 1), только текстовый режим
limitnumberНетЧисло строк для чтения, только текстовый режим (при более чем 200 строках нужна пагинация)

opfs_list

Выводит содержимое каталога.

ПараметрТипОбязательноОписание
pathstringНетПуть к каталогу (по умолчанию корневой)

opfs_delete

Удаляет файл или каталог.

ПараметрТипОбязательноОписание
pathstringДаПуть к файлу/каталогу

Взаимодействие с пользователем

ask_user

Задаёт пользователю вопрос: свободный ввод или структурированный выбор.

ПараметрТипОбязательноОписание
questionstringДаТекст вопроса
optionsstring[]НетСписок вариантов (при указании — вопрос с выбором)
multiplebooleanНетРазрешить множественный выбор (по умолчанию false)

Таймаут: возвращает { answer: null, reason: "timeout" } после 5 минут без ответа.

Возвращаемое значение:

{ "answer": "The user's answer text" }

execute_script

Выполняет JavaScript-код на странице или в песочнице.

ПараметрТипОбязательноОписание
codestringДаКод JavaScript
targetstringДа"page" или "sandbox"
tab_idnumberНетЦелевая вкладка, когда target — page (по умолчанию текущая активная)
worldstringНет"MAIN" или "ISOLATED" (по умолчанию), только режим page

Сравнение окружений выполнения:

ОкружениеDOMJS страницыBlob URL расширенияСценарий
page + ISOLATEDДаНетДаЧтение DOM, извлечение контента
page + MAINДаДаНетВызов функций страницы
sandboxНетНетНетЧистые вычисления

Подагенты

agent

Запускает независимый подагент для сложной подзадачи.

ПараметрТипОбязательноОписание
promptstringДаОписание подзадачи
descriptionstringНетКороткая метка (3–5 слов, для UI)
typestringНетТип подагента (см. ниже); по умолчанию "general"
tab_idnumberНетID вкладки, передаваемый подагенту для работы с ней

Типы подагентов:

typeОписаниеДоступные инструменты
researcherПоиск информации (только чтение)web_search, web_fetch, чтение содержимого страницы
page_operatorАвтоматизация браузераУправление вкладками, операции DOM, взаимодействие со страницей
generalУниверсальный (по умолчанию)Все инструменты

Особенности:

  • У подагента свой независимый контекст диалога
  • Он не может использовать ask_user или agent (чтобы предотвратить рекурсию)
  • События подагента передаются родительскому диалогу через sub_agent_event

Управление задачами

Эта группа инструментов управляет временным списком задач внутри диалога (в памяти, без сохранения).

create_task

ПараметрТипОбязательноОписание
subjectstringДаЗаголовок задачи
descriptionstringНетПодробное описание

get_task

ПараметрТипОбязательно
task_idstringДа

update_task

ПараметрТипОбязательноОписание
task_idstringДаID задачи
statusstringНет"pending" / "in_progress" / "completed"
subjectstringНетНовый заголовок
descriptionstringНетНовое описание

list_tasks

Без параметров; возвращает краткий список всех задач.

delete_task

ПараметрТипОбязательно
task_idstringДа

Инструменты управления задачами в основном позволяют AI отслеживать собственный прогресс при сложных многошаговых задачах; данные задач не сохраняются.