Skip to main content
web_fetch виконує звичайний HTTP GET-запит і видобуває придатний для читання вміст (перетворює HTML на Markdown або текст). Він не виконує JavaScript. Для сайтів, що інтенсивно використовують JS, або сторінок, захищених входом, натомість використовуйте веббраузер.

Швидкий початок

Увімкнено за замовчуванням, налаштування не потрібне:

Параметри інструмента

string
обов'язково
URL-адреса для отримання. Лише http(s).
'markdown' | 'text'
за замовчуванням:"markdown"
Формат виводу після видобування основного вмісту.
number
Обрізає вивід до вказаної кількості символів. Значення обмежується параметром tools.web.fetch.maxCharsCap.

Принцип роботи

1

Отримання

Надсилає HTTP GET-запит із User-Agent, подібним до Chrome, і заголовком Accept-Language. Блокує приватні та внутрішні імена хостів і повторно перевіряє перенаправлення.
2

Видобування

Застосовує Readability (видобування основного вмісту) до HTML-відповіді.
3

Резервний варіант (необов’язково)

Якщо Readability завершується невдало й доступний постачальник отримання даних, повторює спробу через нього (наприклад, у режимі Firecrawl для обходу захисту від ботів).
4

Кешування

Результати кешуються на 15 хвилин (можна налаштувати), щоб зменшити кількість повторних отримань тієї самої URL-адреси.

Оновлення перебігу виконання

web_fetch виводить загальнодоступний рядок перебігу виконання, лише якщо отримання даних усе ще триває через п’ять секунд:
Швидкі влучання в кеш і швидкі мережеві відповіді завершуються до спрацювання таймера, тому для них рядок перебігу виконання не відображається. Скасування виклику очищає таймер. Цей рядок є лише станом інтерфейсу каналу й ніколи не містить отриманого вмісту сторінки.

Налаштування

Резервний варіант із Firecrawl

Якщо видобування за допомогою Readability завершується невдало, web_fetch може використати Firecrawl як резервний варіант для обходу захисту від ботів і кращого видобування:
plugins.entries.firecrawl.config.webFetch.apiKey є необов’язковим і підтримує об’єкти SecretRef. Застаріле налаштування tools.web.fetch.firecrawl.* автоматично мігрує до plugins.entries.firecrawl.config.webFetch за допомогою openclaw doctor --fix.
Якщо ви налаштуєте SecretRef для API-ключа Firecrawl, але його не вдасться розв’язати й не буде резервної змінної середовища FIRECRAWL_API_KEY, запуск Gateway негайно завершиться помилкою.
Перевизначення baseUrl для Firecrawl суворо обмежені: розміщений трафік використовує https://api.firecrawl.dev; перевизначення для самостійно розміщених систем мають указувати на приватні або внутрішні кінцеві точки, а http:// приймається лише для таких приватних цілей.
Поточна поведінка під час виконання:
  • tools.web.fetch.provider явно вибирає резервного постачальника отримання даних.
  • Якщо provider пропущено, OpenClaw автоматично визначає першого готового постачальника веботримання за налаштованими обліковими даними. web_fetch поза пісочницею може використовувати встановлені плагіни, які оголошують contracts.webFetchProviders і реєструють відповідного постачальника під час виконання. Наразі офіційний плагін Firecrawl надає цей резервний варіант.
  • Виклики web_fetch у пісочниці дозволяють вбудованих і встановлених постачальників, офіційне походження яких із npm або ClawHub перевірено. Наразі це дозволяє офіційний плагін Firecrawl; зовнішні плагіни отримання даних від сторонніх розробників залишаються виключеними.
  • Якщо Readability вимкнено, web_fetch одразу переходить до вибраного резервного постачальника. Якщо жоден постачальник недоступний, виклик завершується помилкою без небезпечного відступу.

Довірений проксі зі змінної середовища

Якщо ваше розгортання вимагає, щоб web_fetch працював через довірений вихідний HTTP(S)-проксі, установіть tools.web.fetch.useTrustedEnvProxy: true. У цьому режимі OpenClaw усе одно застосовує перевірки SSRF на основі імені хоста перед надсиланням запиту, але дозволяє проксі розв’язувати DNS замість локальної фіксації DNS. Вмикайте це лише тоді, коли проксі контролюється оператором і забезпечує дотримання політики вихідного трафіку після розв’язання DNS.
Якщо змінну середовища HTTP(S)-проксі не налаштовано або цільовий хост виключено через NO_PROXY, web_fetch повертається до звичайного суворого шляху з локальною фіксацією DNS.

Обмеження та безпека

  • maxChars обмежується значенням tools.web.fetch.maxCharsCap (типово 20000)
  • Тіло відповіді обмежується значенням maxResponseBytes (типово 750000, у межах 32000-10000000) перед розбором; завеликі відповіді обрізаються з попередженням
  • Приватні та внутрішні імена хостів блокуються
  • tools.web.fetch.ssrfPolicy.allowRfc2544BenchmarkRange і tools.web.fetch.ssrfPolicy.allowIpv6UniqueLocalRange — це вузькоспеціалізовані параметри явного ввімкнення для довірених проксі-стеків із підробленими IP-адресами; не задавайте їх, якщо ваш проксі не володіє цими синтетичними діапазонами й не забезпечує власну політику призначень
  • Перенаправлення перевіряються й обмежуються параметром maxRedirects (типово 3)
  • useTrustedEnvProxy потребує явного ввімкнення та має застосовуватися лише для контрольованих оператором проксі, які й надалі забезпечують політику вихідного трафіку після розв’язання DNS
  • web_fetch працює за принципом максимальних зусиль — деяким сайтам потрібен веббраузер

Профілі інструментів

Якщо ви використовуєте профілі інструментів або списки дозволеного, додайте web_fetch або group:web:

Пов’язані матеріали

  • Вебпошук — пошук у вебі за допомогою кількох постачальників
  • Веббраузер — повна автоматизація браузера для сайтів, що інтенсивно використовують JS
  • Firecrawl — інструменти Firecrawl для пошуку та збирання даних із вебсторінок