Ти підключив свого агента до Slack, Linear, GitHub і внутрішнього Postgres. П'ятнадцять інструментів, чисті JSON-схеми, промпт у стилі «ти корисний асистент». На задачах у два кроки працює красиво. На п'ятому кроці він пропускає фільтр, перекручує назву поля або спалює 40k токенів, перечитуючи ті самі схеми. Вітаю — це стеля класичного tool-calling 😹.
Ось розклад, який тобі не розкажуть у маркетингових лендингах. У традиційному tool-calling — патерні, який кожен SDK возив з собою весь 2024–2025 — агент (програма, що обгортає велику мовну модель і дає їй інструменти) зливає повну JSON-схему (машиночитаний опис входів кожного інструмента) у контекстне вікно (робочу пам'ять моделі) на кожному ходу. П'ятнадцять інструментів з багатими типами? Це 5–10k токенів ще до того, як модель скаже «привіт». Далі модель обирає один інструмент, заповнює аргументи, чекає результат, і все по колу. Цикли, умови, трансформації даних? Нуль. Модель імітує їх, ланцюжком з десяти окремих викликів, молячись, що вона ще пам'ятає, що бачила у третьому виклику.
Два тижні, які зрушили дефолт
Між 14 і 15 квітня 2026 три вендори випустили один і той самий патерн — і тихо поховали старий.
15 квітня 2026 OpenAI анонсував наступну еволюцію Agents SDK, який приземлився як v0.14.0 «Sandbox Agents» (того ж дня хотфікс до v0.14.1 за GitHub release page). Ключові фічі: code mode, пісочниці, суб-агенти, довгогоризонтний harness і провайдер-агностична підтримка 100+ LLM. TechCrunch подав це як «OpenAI нарешті наздоганяє патерн, який Cloudflare і HuggingFace бенчмаркали вже пів року».
За день до цього, 14 квітня 2026, Anthropic відкрив research preview Claude Code Routines — збережених конфігурацій Claude Code, які ганяються як постійні автономні агенти у хмарі Anthropic, тригеряться за розкладом, HTTP-вебхуком або GitHub-подією. Та сама форма: інструменти — це код, який агент імпортує, а не JSON, який він відригує.
Також 14 квітня Cloudflare опублікував «Scaling MCP adoption» — ентерпрайз-референс-архітектуру, після якої цифри стають соромом. Їхній бенчмарк: підключити 4 внутрішніх MCP-сервери з 52 інструментами. Класичний tool-calling спалює ~9 400 токенів контексту на хід. Code Mode через портал: ~600 токенів. Це 94% скорочення, і — ось реальний виграш — ціна лишається плоскою, скільки б серверів ти не додавав 🙀.
Що code mode робить насправді
Замість того, щоб запихати схеми у промпт, рантайм передає моделі типізований модуль. Модель пише коротку програму. Пісочниця її запускає. Інструменти ніколи не заходять у контекстне вікно — туди потрапляють лише їхні сигнатури, та й то часто тільки ті, які модель сама запитала через search().
from agents import Agent, CodeMode, Sandbox
agent = Agent(
model="gpt-5.1",
mode=CodeMode(runtime="python"),
sandbox=Sandbox(backend="e2b"), # or docker, modal, runloop
tools=[slack, linear, github, pg], # plain typed functions
)
agent.run(
"Find every P0 bug opened this week in Linear, "
"cross-check against GitHub PRs, post a summary to #triage."
)
Під капотом модель видає щось на кшталт:
bugs = linear.search(priority="P0", opened_after="2026-04-09")
prs = {b.id: github.find_pr(ref=b.id) for b in bugs}
unmatched = [b for b in bugs if not prs[b.id]]
slack.post("#triage", render(bugs, unmatched))
Цикл, dict comprehension, фільтр і умова — в одному раунд-тріпі в пісочницю. Варіант на класичному tool-calling — це 12+ ходів і мігрень.
Чеки
Фреймворк HuggingFace smolagents показує це вже місяцями: CodeAgent робить на ~30% менше кроків, ніж ToolCallingAgent, на мультистеп-бенчмарках, а smolagents + GPT-4o сиділи на #1 у GAIA validation (44.2%). Квітневі цифри Cloudflare: ~32% менше токенів на простих задачах, ~81% на складних ланцюжках, за аналізом WorkOS. Канонічна цитата Kenton Varda і Sunil Pai з Cloudflare тримається: «LLM краще пишуть код, що викликає MCP, ніж викликають MCP напряму».
Що це тобі коштує
Безкоштовно не буває 😾. Code mode вимагає справжньої пісочниці — Docker, E2B, Modal, Runloop, Daytona або вбудованого harness від OpenAI — бо ти тепер ганяєш на своїй інфраструктурі код, який написала модель. Пропусти пісочницю — і ти за один промпт-ін'єкцію до RCE. Більшість існуючих observability-тулів розраховані на JSON-трейси і ламаються на непрозорих блобах коду. Твоя security-модель зсувається з «валідувати аргументи» на «контейнеризувати довільне виконання» — а це інший процес рев'ю, інша threat model, і часто — інша команда. Для одноразових задач з одним інструментом — «дай погоду в Бостоні» — code mode просто додає латентність даремно.
Що робити в понеділок
Якщо ти стартуєш нового агента в квітні 2026 — défaultно заходь у code mode з першого дня. Бери SDK, який ганяє інструменти всередині sandboxed-рантайму, пиши інструменти як звичайні типізовані функції на Python або TypeScript і припиняй вручну ліпити JSON-схеми. Якщо у тебе продакшен-агент на класичному tool-calling і він працює — не біжи мігрувати в паніці, але щоразу, додаючи інструмент номер шістнадцять, рахуй токени.
Вердикт
Tool-calling не мертвий для однокрокових викликів 🐈. Але для будь-якого агента, що склеює більше двох дій, індустрія щойно вирішила — за 48 годин між 14 і 15 квітня 2026 — що рідна мова агента це код, а не JSON. Якщо ти не дивився — стек зсунувся під тобою 😼.





