Как подружить ИИ-агента с экосистемой Яндекса за 5 минут без костылей и браузерных обёрток
Создать агента в 2026 году легко. Проблема в том, что ему нечем работать. Модели нужно найти письмо, проверить календарь или скачать файл - а подходящего интерфейса нет. Обычно агенту дают браузер. На демо выглядит красиво. В реальности - Cloudflare, капча, слетевшая авторизация, хрупкий DOM, который меняется при каждом деплое. Скриншоты сжигают контекст модели. Индустрия тратит миллионы, чтобы заставить агента нажать кнопку «Войти».
AI-агенты упираются не в интеллект, а в интерфейсы. Для Яндекса это особенно заметно.
Одна экосистема - три протокола
Для пользователя Почта, Календарь и Диск - единое целое. Один логин, одна экосистема. Для интеграции - три разных мира:
- Почта - IMAP на порту 993, SMTP на 465. Бинарный протокол с состоянием, флагами, MIME-деревьями.
- Календарь - CalDAV. XML-запросы к caldav.yandex.ru, iCalendar-формат, VEVENT, VTIMEZONE.
- Диск - REST API на cloud-api.yandex.net. JSON, OAuth-токены, пагинация.
Три протокола, три схемы авторизации, три формата ответов. Агенту не нужно про это знать. Ему нужна одна команда и JSON в ответ.
Именно так устроен yacli - CLI для Яндекс Почты, Календаря и Диска, написанный на Rust. Он собирает три протокола обратно в один контракт.
Как это выглядит на практике:
Нужно найти письмо со сметой, проверить, нет ли завтра встречи по бюджету, убедиться, что файл на Диске. Обычно — три вкладки и ручное переключение. С yacli агент делает это сам:
uid из поиска - вход для следующей команды. Агент не имитирует человека. Он последовательно выполняет явные действия с предсказуемым результатом.
Для сравнения: чтобы дать агенту доступ к Gmail через API, сначала нужно пройти обычный путь Google-интеграции: зарегистрировать приложение, настроить OAuth Consent Screen, получить credentials, описать scopes. То есть сначала собрать инфраструктуру доступа - и только потом вызывать первый инструмент.
Почему именно CLI
«CLI - это потрясающе именно потому, что это унаследованная технология: AI-агенты могут использовать их нативно и без усилий»
Через несколько дней Google выпустил Workspace CLI - интерфейс к Gmail, Calendar и Drive, спроектированный для агентов. Тренд подтвердили цифры: бенчмарк Янника Райнхарда (75 прогонов, одни задачи) показал, что CLI дешевле MCP-серверов в 10–32 раза при 100% надёжности против 72%.
У CLI есть свойства, которые особенно хорошо совпадают с тем, как работают языковые модели: однозначные exit-коды, структурированный вывод в stdout и композиция команд через pipe. Плюс терминал сам по себе токен-экономичнее браузерных сценариев и ближе к тому типу интерфейса, на котором модели обучались годами.
CLI и MCP — не «или», а «и»
CLI хорош как исполнительный слой: команда, аргументы, JSON, exit code. MCP хорош как слой обнаружения и стандартизации: агент может подключиться и сразу увидеть, какие инструменты доступны и как их вызывать. Поэтому на практике это не конкуренты, а два уровня одного стека.
В декабре 2025 Anthropic передал MCP в Linux Foundation. Сооснователи - OpenAI, Google, Microsoft, AWS. 97 миллионов скачиваний SDK в месяц. Это инфраструктурный стандарт, а не эксперимент.
yacli работает в обоих режимах. В CLI - обычная утилита. В MCP - сервер на JSON-RPC 2.0:
Одна команда — и Claude видит все инструменты. Поддерживаются Claude, Codex, Gemini, Cursor, Zed, Warp, Windsurf, Antigravity.
Пять минут до рабочего агента
Четыре команды. После этого агент умеет искать письма, читать их, отвечать, проверять календарь, работать с Диском - и комбинировать это в цепочки.
Принципы, которые из этого вытекают
Хороший CLI для агента - это просто хороший CLI. Никакой магии:
- JSON по умолчанию. Агент не должен помнить про флаг. Человек передаст --format table.
- Предсказуемые ответы. {"ok": true} или {"ok": false, "code": "...", "message": "..."}. Одно поле вместо парсинга текста.
- Атомарные команды. Одна команда - одно действие. Никаких «Вы уверены? (y/n)».
- Осмысленные exit-коды. 0 - успех, 1 - пользователь, 4 - конфигурация, 5 - сеть. Агент различает классы проблем без чтения сообщения.
Те же принципы, по которым писали хорошие CLI двадцать лет назад. Просто теперь у них появился второй потребитель.
Если вы делаете инструменты для агентов — браузер должен быть fallback, а не основной путь. Модели не нужны вкладки и скриншоты. Ей нужна команда, структурированный результат и возможность передать его дальше. Именно это терминал и делает - делал всегда.
Код yacli открыт под MIT: https://github.com/NextStat/yacli
А как вы связываете AI-агентов с рабочей рутиной - пишете обёртки над браузером, ждёте коробочных решений или совсем другой путь?