99% экономия токенов: как content-прокси для AI-агентов меняет правила игры
Одна веб-страница может добавить сотни тысяч токенов в контекст AI-агента. Локальный content-прокси решает проблему детерминистически — без LLM-вызовов и без потери смысла.
Проблема, которую все знают, но мало кто считает
Запустите любой AI-агент с доступом к интернету — Claude Code, OpenCode, CrewAI — и дайте ему задачу, требующую чтения веб-страниц. Откройте логи. Посмотрите на расход токенов.
Одна страница документации на React — 180 000 токенов в виде сырого HTML. Та же страница после очистки до семантического содержимого — 3 500 токенов. Разница: 98%. Это не опечатка.
Сырой HTML веб-страницы — это не текст. Это div обёрнутый в div, навигационные меню, инлайновые стили, SVG-иконки, JSON-LD разметка, трекинговые скрипты, рекламные блоки. Ничего из этого не нужно языковой модели для понимания содержимого страницы.
При этом вы платите за каждый токен. На GPT-4o — $2.50 за миллион входных токенов. На Claude Opus — $15. Агент, который за сессию обращается к десятку страниц, может сжечь миллион токенов только на HTML-мусоре.
Как работает content-прокси
Идея проста: поставить между агентом и интернетом прослойку, которая превращает HTML в чистый markdown до отправки в LLM — без вызова языковой модели, детерминистически, через парсинг DOM.
Типичный пайплайн: Fetch → Readability (извлечение основного контента, тот же алгоритм что в режиме чтения Firefox) → Sanitize (удаление script, style, скрытых элементов) → Turndown (конвертация в markdown с поддержкой таблиц GFM) → Post-processing (нормализация, обрезка).
На выходе — структурированный markdown, который модель читает в 10-50 раз дешевле. Здесь нет LLM-вызова. Это чистая детерминистическая обработка. Задержка — 50-200 мс на страницу. Стоимость — ноль.
Инструменты: что есть прямо сейчас
Cloudflare Markdown for Agents
В феврале 2026 Cloudflare запустил функцию, которая конвертирует HTML в markdown прямо на edge-уровне. Достаточно добавить заголовок Accept: text/markdown в запрос.
По данным Cloudflare, блог-пост объёмом 16 180 токенов в HTML занимает 3 150 токенов в markdown — сокращение на 80%. Ответ включает заголовок x-markdown-tokens с оценкой количества токенов.
Ограничение: работает только для сайтов за Cloudflare, где владелец включил эту функцию. Доступно бесплатно на тарифах Pro и выше. Claude Code и OpenCode уже отправляют Accept: text/markdown по умолчанию.
Jina Reader API
Jina предлагает API для конвертации любого URL в markdown: https://r.jina.ai/https://example.com/page. Под капотом — Readability для извлечения контента + Turndown для конвертации. Бесплатный тариф — до 1 000 запросов в день. Для локального использования — Reader-LM, компактная модель (1.5B параметров), которая делает то же самое офлайн.
Локальный прокси на Readability + Turndown
Для полного контроля — минимальный сервер на Node.js: jsdom + @mozilla/readability + turndown + turndown-plugin-gfm. Оберните в HTTP-сервер, поставьте перед агентом. Ноль зависимости от внешних API, ноль стоимости, полный контроль над обработкой.
MCP-серверы для агентов
Для Claude Code и совместимых агентов есть MCP-сервер mcp-read-website-fast, который использует тот же стек (Readability + Turndown) и отдаёт markdown напрямую в контекст. Агент получает tool read_url, который возвращает уже очищенный markdown.
Реальные цифры
Замеры по нескольким популярным страницам:
- React docs (главная): 182 400 токенов HTML → 3 800 markdown — экономия 97.9%
- Wikipedia (длинная статья): 94 200 → 12 600 — экономия 86.6%
- Cloudflare blog post: 16 180 → 3 150 — экономия 80.5%
- HackerNews (тред): 28 500 → 4 200 — экономия 85.3%
- Средний SPA с React: 320 000+ → 2 100 — экономия 99.3%
SPA-приложения — рекордсмены по «пустым» токенам: бандлы JavaScript, inline-стили, base64-картинки. После очистки остаётся только текст.
Когда прокси не помогает
- Динамический контент — если данные загружаются через JavaScript после рендера, Readability их не увидит. Нужен headless-браузер перед этапом очистки
- Одностраничные приложения без pre-rendering — прокси получит пустой div
- Страницы за авторизацией — прокси не проходит login-flow
- Структурированные данные — таблицы и формы могут потерять контекст при конвертации
Для динамических страниц — Cloudflare Browser Rendering API или локальный Playwright + Readability.
Архитектурная картина
Content-прокси — часть более широкого тренда: инфраструктура для AI-агентов. Cloudflare строит целый стек: Markdown for Agents на edge, Browser Rendering для динамических страниц. Jina предлагает Reader API + Reader-LM. MCP-серверы встраивают очистку прямо в tool-вызовы агентов.
Все эти решения объединяет одна мысль: между агентом и данными должен быть слой нормализации — не LLM-слой, а детерминистический, быстрый, бесплатный.
В 2026 году тратить токены на разметку — это как в 2010 году тратить трафик на несжатые картинки. Технически возможно. Экономически бессмысленно.
Что делать прямо сейчас
- Если используете Claude Code или OpenCode — они уже отправляют Accept: text/markdown. Убедитесь, что ваши целевые сайты поддерживают Cloudflare MFA
- Если строите агента — добавьте Jina Reader или локальный Readability + Turndown как первый шаг обработки URL
- Если хотите максимального контроля — разверните MCP-сервер mcp-read-website-fast или напишите свой прокси (50 строк кода)
- Если владеете сайтом за Cloudflare — включите Markdown for Agents в Dashboard
Токены — это деньги. Content-прокси — это бесплатный способ тратить их на смысл, а не на разметку.