AI Agent сам выходит в сеть, пишет код и выполняет задачи? От Browser Agent до JSON Tool Calling
Страницы продуктов пишут «сам выходит в сеть, пишет код и выполняет задачи».Более точная инженерная фраза: модель только заполняет JSON; хост открывает браузер, правит файлы и вызывает API.Этот текст идёт от Browser Agent к JSON Tool Calling и отвечает на три вопроса: делает ли он работу сам? Кто делает её на самом деле? Какой объект проверять?
Коротко
| Понятие | Одна строка | Куда садится |
|---|---|---|
| Browser Agent | Структурные действия против страницы или рабочего стола | computer_use / browser JSON |
| Coding Agent | Читать репозиторий, править файлы, гонять команды | tool_use / Bash |
| Task Agent | Вызывать бизнес-API, писать состояние, передавать | tool_calls / arguments |
| JSON Tool Calling | Контракт имён, аргументов и результатов | Schema / payload |
Сначала разделение: модель предлагает объекты, хост исполняет побочные эффекты. Смените марку — цепочка JSON-вызова останется.
Работу делает. «Сам» — нет
Агент 2026 года умеет открывать страницы, заполнять формы, экспортировать; читать репозиторий, править файлы, гонять тесты; смотреть заказ, начинать возврат, передавать дальше. Это настоящие побочные эффекты, не пузыри чата.
Слово «сам» ставит подлежащее не туда. Большая модель не владеет процессом браузера, не spawn'ит оболочку и не бьёт во внутреннюю сеть. Она только выдаёт проверяемый объект: имя инструмента, аргументы, иногда следующее намерение. Кликает хост.
- Выйти в сеть: модель выдаёт
browser_navigateилиcomputer_call; песочница браузера хоста исполняет. - Писать код: модель выдаёт Read / Edit / Bash; рабочая область хоста исполняет.
- Выполнить задачу: модель выдаёт
tool_calls; хост вызывает API или поток.
Если вы ещё склеиваете Agent, Tool Calling и Function Calling в одно слово, начните с Полный гид по AI Agent. Эта статья про одно: три продуктовые оболочки, одна цепочка JSON-вызова.
Три оболочки, одна таблица инструментов
Рынок называет продукты Browser Agent, Coding Agent, Computer Use, Operator, ChatGPT Agent. Оболочки разные. Таблица одна: что он может, зависит от того, какие инструменты выставил хост.
- Browser Agent: вкладки, скриншоты, клики, извлечение DOM. Лучшее демо; права легче всего недооценить.
- Coding Agent: репозиторий, патч, тесты, терминал. Меняет диск и процессы.
- Task Agent: заказы, тикеты, календарь, возвраты. Меняет бизнес-системы.
Не покупайте способность по марке. Покупайте по таблице инструментов. Нет browser-инструмента — в сеть не выйдет. Нет Bash — не отдаст исполняемый патч. Нет бизнес-функции — не сделает возврат.
JSON Tool Calling — общий каркас
Tool Calling, Function Calling и computer_use носят разные имена и одну форму. Один ход обычно четыре прыжка:
- Объявить: хост даёт
tools[]илиinputSchema. - Предложить: модель заполняет имя инструмента и объект аргументов. Сама не исполняет.
- Шлюз: хост проверяет, ставит allowlist и решает, ждать ли человека.
- Записать назад: скриншот, stdout или ответ API становится следующим видимым объектом.
Поэтому Schema дороже промпта. Промпт влияет на то, что она заполнит; Schema и хост решают, что может случиться. Контракт в Зачем ИИ нужен JSON Schema; граница протокола в MCP Tool Schema vs Function Calling.
Browser Agent: в сеть выходит не модель
Browser Agent больше всего похож на «сам выходит в сеть». Вкладка действительно движется. Действие всё равно объект.
Структурный Browser Agent — стиль Playwright, browser-инструменты Claude, многие MCP-браузеры — выдаёт проверяемую навигацию:
{
"type": "tool_use",
"id": "call_nav_1",
"name": "browser_navigate",
"input": {
"url": "https://docs.example.com/api/orders",
"wait_until": "domcontentloaded"
}
}
Computer use / Operator у OpenAI ближе к координатным действиям. Модель видит скриншот или дерево доступности и выдаёт клик, ввод, прокрутку:
{
"type": "computer_call",
"call_id": "call_8c12",
"action": {
"type": "click",
"x": 412,
"y": 268
}
}
Не читайте ни одну форму как «модель увидела страницу, поэтому кликнула». В контекст вошли пиксели или дерево; кликнул хост. Запирайте аргументы, не рекламный текст:
- Allowlist URL: по умолчанию документация, статус-страницы и объявленные домены.
- Без лишних заголовков: Cookie и Authorization не должны попасть в объект аргументов.
- Извлекать со Schema: экспортируйте поля, не целую HTML-страницу.
- Сессия остаётся на хосте: состояние входа — политика песочницы, не веса модели.
Сжатая Schema навигации выглядит так. additionalProperties: false — не педантизм: широкий object даёт модели протащить внутренний URL или скрипт:
{
"name": "browser_navigate",
"description": "Open a URL in the isolated browser",
"inputSchema": {
"type": "object",
"properties": {
"url": { "type": "string", "format": "uri" },
"wait_until": {
"type": "string",
"enum": ["load", "domcontentloaded"]
}
},
"required": ["url"],
"additionalProperties": false
}
}
Гид по GPT-6 Astra пишет browsing и computer use как одну способность. В инженерии это всё ещё JSON инструмента. Широкий browser-инструмент отдаёт сессию циклу; поверхность безопасности в Безопасность AI Agent и проверка JSON.
Coding Agent: на диск пишет не модель
AI Coding Agent и цепочка JSON-вызова уже разобрал Claude Code и GPT Agent. Одна фраза, чтобы встать рядом с Browser Agent: писать код — тоже заполнять JSON.
{
"type": "tool_use",
"id": "call_read_1",
"name": "Read",
"input": {
"path": "src/billing/refund.py"
}
}
Модель не делает open() файла. Хост читает и пишет tool_result. Только тогда следующий ход может выдать Edit или Bash.
От выхода в сеть отличается только поверхность инструментов: с одной стороны url / selector / screenshot; с другой path / command / patch. Цикл тот же.
Выполнить задачу: побочные эффекты в API, не в весах
«Выполнить задачу» — фраза, которую продуктовый текст глотает первым. Возвраты, маршрутизация тикетов, записи в календарь — это Task Agent. Форма всё ещё Function Calling:
{
"tool_calls": [{
"id": "call_task_3",
"type": "function",
"function": {
"name": "create_ticket",
"arguments": "{\"title\":\"Refund A-1042\",\"priority\":\"high\"}"
}
}]
}
Опасность здесь не в прозе. Она в широком object. Потолки сумм, enum и additionalProperties: false живут в Schema, не в «пожалуйста, будьте осторожны».
Передача между агентами тоже JSON. Объект handoff аудируемее, чем «передайте в биллинг». Инструменты и потоки как Schema — см. JSON Schema и потоки AI Agent.
Один ход — четыре прыжка
Страницы продуктов пишут «завершает работу автономно». В инженерии Browser, Coding и Task идут одними и теми же четырьмя прыжками:
- Наблюдать: скриншот, состояние репозитория и последний результат инструмента входят в контекст.
- Предложить: модель выдаёт имя инструмента и объект аргументов.
- Исполнить: хост открывает страницу, правит файл или бьёт в API. Побочные эффекты здесь.
- Записать назад: краткое DOM, stdout или тело ответа становится следующим видимым объектом.
Пропустите шлюз — и JSON станет командой. Auto-mode значит: вы заранее согласились на класс объектов. Смените оболочку — цикл останется.
Три таблицы, одна цепочка
Вопрос не в том, кто умнее. Вопрос в том, какую таблицу инструментов хост вешает на цикл:
| Ось | Browser Agent | Coding Agent | Task Agent |
|---|---|---|---|
| Что видит | Скриншот / DOM / дерево a11y | Файлы, тесты, вывод терминала | Бизнес-объекты, состояние прошлого прыжка |
| Что выдаёт | navigate / click / type | Read / Edit / Bash | lookup / create / handoff |
| Куда садятся побочные эффекты | Песочница браузера, состояние входа | Диск рабочей области, процессы | Бизнес-API, нижестоящие системы |
| Что запираете | URL, Cookie, Schema извлечения | cwd, таймаут, сетевой шлюз | Сумма, enum, обязательные поля |
Смените марку — цикл останется. Стабилизируйте контракт инструментов и мир исполнения, не демо-ролик.
Проверяйте объекты, не демо-видео
После того как агент «вышел в сеть, написал код и выполнил задачу», смотрите не последнюю фразу «готово». Смотрите след.
- форматировать
tool_use/tool_calls/computer_callи проверьте, что имя и аргументы — тот прыжок, который вы думали. - Достаньте извлечение JSONPath поля
url,commandиname. Не сканируйте прозу глазами. - JSON Diff со следом, который прошёл на прошлой неделе. Если цикл уплыл, сначала смотрите таблицу инструментов и форму аргументов, потом модель.
- Скриншоты, stdout и ответы API принадлежат следу. Фраза «завершено» — нет.
- Не вставляйте cookie, сессии и внутренние URL в публичный форматтер. JSONSort работает локально в браузере; это правильное место читать эти объекты.
Если след можно собрать заново, сессию можно разобрать. Это билет в прод, не украшение.
Ошибки
- Думать, что модель сама открыла страницу. Открыл процесс браузера хоста.
- Думать, что модель сама исполнила код. Исполнение живёт на хосте, не в весах.
- Смотреть демо и пропускать JSON инструментов. Клик или команда могли уже произойти.
- Дать браузеру пустой чек. Без URL-шлюза и изоляции cookie цикл — утечка сессии.
- Заменить Schema промптом. Контракт должен проверяться.
- Считать трёх агентов тремя видами интеллекта. Это три таблицы инструментов, не три мозга.
FAQ
AI-агент сейчас правда сам выходит в сеть?
Он умеет открывать страницы, кликать, извлекать. Браузером он не владеет. Модель заполняет JSON; песочница хоста исполняет. Нет browser-инструмента — в сеть не выйдет.
Чем Browser Agent отличается от Computer Use?
Оба управляют интерфейсом. Browser Agent чаще идёт селекторами, навигацией и извлечением DOM; Computer Use / Operator — скриншотами и координатами. Оба — структурные вызовы, не модель с руками.
Написание кода и выполнение задач — другой протокол?
Нет. Read / Bash у Coding Agent и Function Calling у Task Agent делят ту же цепочку JSON-вызова, что и Browser Agent. Меняется таблица инструментов и радиус побочных эффектов.
Почему JSON, а не более умная модель?
Потому что побочные эффекты случаются после разбора объекта. Более умная модель всё равно может заполнить неверный URL или сумму. Schema и шлюзы хоста решают, что может случиться.
Стоит ли давать агенту прод-логин или прод-базу?
Нет. Пусть готовит черновик в изолированном браузере и рабочей области и оставляет след. Логин, секреты и релиз остаются человеческими стратегическими шлюзами. Цикл пишет черновик; шлюз выпускает.
Вывод
«AI-агент выходит в сеть, пишет код и выполняет задачи» верно лишь наполовину. Верная половина — побочные эффекты уже происходят. Ложная — подлежащее. Подлежащее — хост, сказуемое — исполнять, дополнение — JSON, который заполнила модель.
С сегодняшнего дня меньше спорьте, делает ли он это «сам». Сначала запишите в репозиторий три таблицы инструментов Browser, Coding, Task, Schema и след сессии. Модели сменятся; эта цепочка JSON Tool Calling должна стабилизироваться первой. Как из той же цепочки растут инциденты: Инциденты Claude и tool JSON.
Дальше читать
- Что такое AI Agent? Полный гид Рантайм, Tool Calling и JSON-контракт
- AI Coding Agent и цепочка JSON-вызова Как Claude Code и GPT Agent пишут код
- MCP Tool Schema vs Function Calling Границы протокола tool JSON
- Зачем ИИ нужен JSON Schema Schema / Function Calling / Structured Output
- Безопасность AI Agent и проверка JSON Что проверка останавливает — и чего нет
- Локальный ящик JSONSort Формат, проверка, Diff
- Все статьи Ещё заметки про JSON и ИИ-разработку
Журнал изменений: Первая публикация