Перейти до основного вмісту

Довідник вбудованих інструментів

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": "Extracted body content...",
"truncated": false,
"final_url": "https://example.com/redirected"
}

Запитує пошукову систему та повертає структуровані результати пошуку.

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

Підтримувані пошукові системи:

СистемаОписПотрібна конфігурація
DuckDuckGoСистема за замовчуваннямНемає
BingПошук Microsoft BingПотрібен ключ API
BaiduПошук BaiduКлюч API не потрібен
Google Custom SearchGoogle Custom SearchПотрібен ключ API + ID CSE

Пошукові системи налаштовуються на сторінці керування → Agent → Налаштування.

Значення, що повертається:

[
{
"title": "Search result title",
"url": "https://example.com/result",
"snippet": "Result summary 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НіЗбіг URL за регулярним виразом
title_patternstringНіЗбіг назви за регулярним виразом
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НіЯку вкладку цілити, коли targetpage (за замовчуванням поточна активна); ігнорується для пісочниці

Порівняння середовищ виконання:

СередовищеDOMJS сторінкиBlob URL розширенняНайкраще для
target: "page" (завжди MAIN світ)тактакніЧитання/маніпулювання DOM, виклик функцій сторінки, читання змінних сторінки
target: "sandbox"нінініЧисті обчислення

Режим page завжди працює в MAIN світі сторінки, ділячись window зі сторінкою — тому він не може отримати доступ до власних blob URL розширення (напр. адреси, яку opfs_read повертає в режимі blob). Використовуйте SkillScript, коли потрібно працювати з blob URL.

Суб-агенти

agent

Створює незалежного суб-агента для обробки складного підзавдання.

ПараметрТипОбов'язковийОпис
promptstringТакОпис підзавдання
descriptionstringНіКоротка мітка (кілька слів, для відображення в інтерфейсі)
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НіДетальний опис

update_task

ПараметрТипОбов'язковийОпис
task_idstringТакID завдання
statusstringНі"pending" / "in_progress" / "completed"
subjectstringНіНова назва
descriptionstringНіНовий опис

list_tasks

Без параметрів; повертає короткий список усіх завдань.

Інструменти керування завданнями призначені в основному для того, щоб AI відстежував власний прогрес під час обробки складних багатокрокових завдань; дані завдань не зберігаються.