Маркетинг-стратег, IT-предприниматель, ментор по вайбкодингу
10+ лет в маркетинге, 300+ клиентских проектов: сайты, реклама, боты. Создатель GoBanana (228K+ пользователей, 11.6 млн ₽ выручки) и VibeCoderz. Делаю AI-продукты сам через Claude Code, Cursor, Windsurf и консультирую тех, кто хочет так же.
🎯 О чём этот конспект: Глубокий разбор выступления Андрея Карпати (сооснователя OpenAI и экс-главы AI в Tesla) о фундаментальной смене парадигмы в разработке ПО. Анализируется переход от написания кода (Software 1.0) и обучения моделей (Software 2.0) к контекстному программированию агентов (Software 3.0), разница между любительским «вайб-кодингом» и профессиональной «агентной инженерией», феномен неравномерности (зубчатости) интеллекта моделей и новые требования к роли человека в разработке.
👤 Кому будет полезно: Вайбкодерам, AI-инженерам, фаундерам технических стартапов и сеньор-разработчикам, которые внедряют AI-агентов (Claude Code, Cursor, Windsurf) в продакшен и хотят строить надёжные системы без архитектурного долга.
✨ Что получите: Чёткий фреймворк перехода на агентную инженерию: готовые алгоритмы взаимодействия с AI-агентами через подробные спецификации, правила верификации кода, методы создания агентно-ориентированной документации и структуру персональных баз знаний (LLM-Wiki) для сохранения понимания сложных систем.
1. Парадигма Software 3.0: LLM как новый компьютер и отказ от лишнего кода
Контекст: Андрей Карпати разделяет историю софта на три эпохи. Software 1.0 строилось на явных инструкциях и детерминированном коде (C++, Python). В Software 2.0 человек перестал писать алгоритмы вручную и начал собирать датасеты для оптимизации весов нейросетей. Software 3.0 кардинально меняет саму суть вычислений: предварительно обученная на массивах задач LLM сама становится виртуальным компьютером. Контекстное окно превращается в регистры и оперативную память, а промптинг — в машинный код нового уровня. Из-за этого классические многоуровневые стеки приложений (парсинг, бэкенд, микросервисы) во многих задачах становятся избыточными «протезами».
Тайминг:[02:48], [03:44], [04:56], [05:35]
Выгода: Сокращение кодовой базы проекта на 70–90%. Полное устранение инфраструктурного оверхенда за счёт передачи сырых входных данных мультимодальным моделям напрямую.
Как применить:
Шаг 1: Аудит кодовой базы на выявление «лишнего софта» — Проанализируйте свой проект и найдите цепочки, где классический код занимается нормализацией, парсингом текста или промежуточной визуализацией данных. Если задача сводится к «преобразовать вход A (например, фото или сырой текст) в выход B (структурированный UI или изображение)», протестируйте прямую обработку мультимодальной моделью.
Шаг 2: Замена сложных Bash/Install-скриптов на контекстные инструкции агенту — Claude Code / Cursor] — Вместо написания кроссплатформенных скриптов установки зависимостей для софта передайте агенту сырой Markdown-текст с требованиями. Модель сама просканирует операционную систему, определит версии Python/Node.js, разрешит конфликты окружения и выполнит установку пошагово в интерактивном цикле отладки.
Шаг 3: Реализация прямого пайплайна Software 3.0 — OpenAI API / Gemini API] — Для задач обработки контента (как в примере Карпати с Menu Gen) устраните промежуточный слой фронтенда и OCR. Подайте изображение напрямую в мультимодальную модель с инструкцией сгенерировать готовый результат.
Промпт для агента на установку и настройку сложного репозитория без bash-скриптов:
Ты действуешь в парадигме Software 3.0. Твоя задача — настроить и запустить проект в моём локальном окружении.1. Исследуй текущую систему: ОС, версию Python, Node.js, установленные пакетные менеджеры и переменные окружения.2. Прочитай README.md и файлы зависимостей (package.json, pyproject.toml, requirements.txt).3. Составь пошаговый план развёртывания с учётом специфики моей ОС.4. Выполняй команды по одной. В случае ошибок конфигурации или версий — самостоятельно диагностируй причину, исправь зависимости и доведи запуск до рабочего состояния.5. Зафиксируй итоговые команды в файле AGENT_SETUP.md для воспроизводимости.
Результат: Чистая архитектура без промежуточных костылей, где рутинные системные операции делегированы интеллекту агента, а код пишется только там, где требуется строгая детерминированность.
2. Агентная инженерия вместо вайб-кодинга: работа на скорости ИИ без потери качества
Контекст: Вайб-кодинг стёр барьер входа, позволив любому человеку создавать работающие прототипы на чистом энтузиазме, практически не заглядывая в код. Однако в продакшене слепое доверие агенту приводит к критическим багам, раздутому коду, спагетти-архитектуре и дырам в безопасности. Карпати вводит термин «Агентная инженерия» (Agentic Engineering) — это дисциплина сохранения наивысших стандартов качества и надёжности Software 1.0 при использовании 10-кратной скорости генерации моделей. Инженер перестаёт вручную набивать синтаксис библиотек (вроде параметров PyTorch), но полностью отвечает за системный дизайн, безопасность и контракт данных.
Тайминг:[15:55], [17:49], [18:47]
Выгода: Получение 10x–20x прироста скорости разработки с гарантией чистоты кода, прохождения аудита безопасности и отсутствия скрытого технического долга.
Как применить:
Шаг 1: Инвестиции в персональный агентный стек — Claude Code, Cursor, Windsurf] — Настройте окружение так, чтобы агент имел прямой доступ к терминалу, линтерам, тестам и профилировщикам. Настройте файл правил проекта (.cursorrules или CLAUDE.md), запрещающий агенту применять небезопасные паттерны и раздувать кодовую базу.
Шаг 2: Внедрение adversarial-тестирования (модели против моделей) — Разверните дополнительного независимого агента (например, через Codex или отдельную сессию Claude Code), задача которого — атаковать созданное приложение, искать уязвимости нулевого дня, инъекции и утечки состояния.
Шаг 3: Защита от деградации минимализма (Принцип microGPT) — Модели по умолчанию склонны генерировать раздутый код с избыточными абстракциями и дублированием. Принудительно запускайте сессии рефакторинга с требованием максимального сжатия и очистки кода без изменения тестов.
Конфигурация .cursorrules / CLAUDE.md для агентной инженерии:
# Правила агентной инженерии для проекта---## Архитектурные требования:- Никаких избыточных абстракций, фабрик и обёрток без явного требования.- Избегай копипаста и дублирования логики: код должен быть максимально лаконичным (принцип microGPT).- Не используй внешние зависимости, если задачу можно решить стандартной библиотекой.---## Безопасность и валидация данных:- Всегда используй строгие уникальные идентификаторы (UUID/CUID) в качестве первичных ключей сущностей. Никогда не привязывай финансовые транзакции или профили к email.- Все внешние входящие данные валидируются через строгие схемы типов (Pydantic / Zod).---## Процесс работы агента:1. Перед внесением изменений опиши план в 3-4 пунктах.2. После генерации кода запусти тесты командой `pytest` / `npm test`.3. Запусти статический анализ (`ruff check` / `eslint`).4. Если тесты упали — исправь причину падения, не отключая и не изменяя сами тесты.
Результат: Кодовая база корпоративного уровня, созданная за часы вместо месяцев, лишённая типичных «галлюцинаторных» архитектурных костылей ИИ.
3. Зубчатый интеллект (Jagged Intelligence) и закон верифицируемости
Контекст: Современные модели развиваются крайне неравномерно: они демонстрируют невероятные результаты уровня Senior-инженера в рефакторинге 100 000 строк кода или математике, но могут ошибиться в подсчёте букв в слове или посоветовать идти пешком на автомойку, потому что она рядом. Карпати объясняет этот феномен механикой RL (Reinforcement Learning — обучения с подкреплением). Модели показывают пиковые возможности исключительно в верифицируемых средах (где результат можно автоматически проверить тестом или компилятором). Если задача не поддаётся автоматической проверке вознаграждения в цикле RL, модель стагнирует и ведёт себя непредсказуемо.
Тайминг:[10:07], [11:35], [14:08]
Выгода: Безошибочное прогнозирование того, где агент справится автономно на 100%, а где потребуется ручной надзор или создание кастомной среды верификации (Fine-Tuning/RL).
Как применить:
Шаг 1: Декомпозиция задач по шкале проверяемости — Разделите бэклог проекта на два типа задач: верифицируемые (написание SQL-запросов, реализация алгоритмов, типизация, юнит-тесты) и неверифицируемые (эстетика UI, UX-копирайтинг, системный дизайн, бизнес-логика).
Шаг 2: Создание программного верификатора для агента — Не отдавайте агенту неверифицируемую задачу в слепом виде. Создайте детерминированную тестовую обвязку. Если агент пишет функцию, сначала сгенерируйте набор строгих тестов с граничными случаями, а затем пустите агента в итеративный цикл решения.
Шаг 3: Тонкая настройка (Fine-tuning) под свои домены — Если вы строите стартап в узкой нише, где базовая модель галлюцинирует, создайте собственный синтетический датасет с жесткими критериями валидации (Environment for RL) и дообучите компактную модель.
Промпт для построения цикла TDD (Test-Driven Development) с агентом:
Мы работаем по методологии верифицируемой разработки. Мне нужно реализовать модуль: [ОПИСАНИЕ МОДУЛЯ/ФУНКЦИОНАЛА].Шаг 1: Не пиши бизнес-логику модуля. Напиши исчерпывающий набор юнит-тестов (граничные случаи, некорректные типы, обработка сбоев сети).Шаг 2: Запусти тесты и убедись, что они падают (Red phase).Шаг 3: Напиши минимально необходимый код модуля, чтобы все тесты прошли (Green phase).Шаг 4: Проведи оптимизацию кода, не нарушая прохождение тестов.Команда для запуска тестов: [КОМАНДА, напр. pytest tests/test_core.py]
Результат: Полная ликвидация слепых ошибок и галлюцинаций агента за счёт перевода любой абстрактной задачи в детерминированную верифицируемую среду.
4. Спецификации, системный вкус и архитектурный надзор
Контекст: Агенты сегодня — это стажёры с фотографической памятью синтаксиса API, но с полным отсутствием жизненного и продуктового контекста. Карпати приводит поучительный пример из своего проекта Menu Gen: пользователь логинился через Google Auth, а платежи покупал через Stripe. Агент без колебаний связал баланс пользователя с его почтой в Stripe, проигнорировав, что email в платёжной системе и аккаунте Google может отличаться. Пользователь платил деньги, но кредиты не начислялись. Агент не обладал вкусом и здравым смыслом, чтобы выбрать неизменяемый user_id. Поэтому человек обязан стать «режиссёром» и автором детальных спецификаций, не спускаясь на уровень запоминания названий методов библиотек вроде keepdims в PyTorch.
Тайминг:[19:55], [20:46], [22:56]
Выгода: Предотвращение критических архитектурных ошибок на этапе фундамента проекта, экономия сотен часов на переписывание бизнес-логики и базы данных.
Как применить:
Шаг 1: Запрет на кодинг без утверждённой спецификации (PRD/Spec-first) — Никогда не просите агента «сделай авторизацию и оплату». Сначала заставьте агента в режиме диалога составить исчерпывающий технический документ (RFC/Spec).
Шаг 2: Фокус человека на ключевых инвариантах системы — При ревью спецификации проверяйте фундаментальные сущности: связи сущностей в базе данных, первичные ключи, обработку идемпотентности вебхуков и модели состояний. Мелкую реализацию методов отдайте на откуп ИИ.
Шаг 3: Контроль минимализма кодовой базы — Регулярно проводите ревизию: заставляйте модель удалять мёртвый код, схлопывать лишние слои абстракций и заменять кастомные велосипеды стандартными паттернами.
Промпт для генерации строгой технической спецификации перед началом кодинга:
Действуй как Chief Software Architect. Мы собираемся реализовать фичу: [ОПИСАНИЕ ФИЧИ].НЕ ПИШИ КОД РЕАЛИЗАЦИИ. Составь детальный документ архитектурной спецификации (RFC) по следующим пунктам:1. Модель данных: сущности, поля, типы, первичные и внешние ключи. Убедись, что все связи опираются на неизменяемые UUID, а не на изменяемые атрибуты (вроде email).2. Схема интеграции: контракты API (endpoints, payloads, responses, коды ошибок).3. Инварианты безопасности и идемпотентность (особенно для платежей, списания балансов и авторизации).4. Граничные сценарии и сбои: что происходит при разрыве соединения, дублировании запросов или несовпадении внешних аккаунтов.5. Список зависимостей: обоснуй каждую новую библиотеку.Жди моего подтверждения спецификации перед переходом к реализации.
Результат: Надёжная архитектура, в которой исключены фундаментальные логические баги, а человек контролирует дизайн системы, экономя ментальные ресурсы на запоминании синтаксических мелочей.
5. Переход к Agent-Native инфраструктуре и документации
Контекст: Современный интернет и IT-инфраструктура полностью построены для людей: веб-панели управления, кликабельные кнопки в консолях AWS/Vercel, ручная настройка DNS, капчи и человекочитаемая документация с призывами «перейдите по URL». Карпати подчёркивает, что эта среда враждебна для агентов. При разработке Menu Gen больше всего времени ушло не на логику ИИ, а на ручную привязку Vercel, Stripe, DNS-записей и сторонних сервисов. Будущее софта за Native Agent-инфраструктурой: мир перестраивается на датчики (сенсоры) и исполнительные механизмы (актуаторы), доступные агентам напрямую через CLI, API и протоколы типа MCP.
Тайминг:[25:38], [26:43]
Выгода: Автоматизация 100% рутинных девопс-операций: от локального кода до развёрнутого продакшена с DNS и сертификатами без ручного кликанья по веб-интерфейсам.
Как применить:
Шаг 1: Адаптация внутренней документации под формат «LLM-friendly» — Перепишите инструкции для ваших репозиториев и API. Вместо нарративного текста («Для настройки откройте браузер и нажмите кнопку...») создавайте блоки Agent Context: готовые curl-команды, CLI-вызовы, схемы JSON и флаги переменных окружения.
Шаг 2: Интеграция CLI-инструментов для облачной инфраструктуры — Обеспечьте агента авторизованными CLI-утилитами (vercel cli, supabase cli, gh, aws cli, stripe cli). Агент должен иметь возможность деплоить проект, применять миграции БД и создавать тестовые платежи из терминала.
Шаг 3: Переход на машиночитаемые контексты (MCP) — Подключайте внешние сервисы через Model Context Protocol (MCP), позволяя агенту запрашивать состояние инфраструктуры напрямую в виде структурированных JSON-ответов.
Шаблон оформления внутренней документации в стиле Agent-Native (AGENT_DOCS.md):
# Infrastructure Automation Guide (Agent-Native)---## 1. База данных (Supabase CLI)Применение новых миграций:
Результат: Инфраструктура, в которой агент способен самостоятельно поднять проект с нуля, применить миграции базы данных, настроить DNS и развернуть сервис в облаке по одной текстовой команде.
6. Персональные базы знаний (LLM-Wiki): сохранение человеческого понимания
Контекст: Андрей Карпати формулирует ключевой философский и образовательный вызов эпохи ИИ: «Вы можете передать на аутсорс мышление, но вы не можете передать на аутсорс своё понимание» (You can outsource thinking, but not understanding). Если разработчик слепо делегирует всё агентам, он перестаёт понимать, как работает его софт, и становится критическим «узким горлышком» проекта. Карпати решает эту проблему созданием собственных динамических баз знаний на базе LLM (LLM-Wiki). Вместо пассивного чтения документации или статей он «скармливает» сырые материалы модели, которая компилирует их в связанную персональную вики, генерирует альтернативные проекции информации и отвечает на глубинные вопросы.
Тайминг:[06:54], [28:04], [28:43]
Выгода: Многократное ускорение усвоения сложной информации без потери контроля над архитектурой и глубинным смыслом систем.
Как применить:
Шаг 1: Организация локального репозитория знаний в Markdown — Obsidian / Foambubble] — Создайте папку для структурированных заметок по вашему проекту или технологическому стеку. Храните в ней сырые концепты, архитектурные решения и выжимки из пейперов.
Шаг 2: Развёртывание агента-компилятора знаний — Настройте агентный скрипт или MCP-сервер, который берёт новые статьи/документацию и производит перекомпиляцию: ищет связи с уже существующими концепциями в вашей вики, находит противоречия и обновляет страницы.
Шаг 3: Сессии сократического диалога для проверки понимания — Регулярно запускайте сессию с моделью в роли строгого экзаменатора, который тестирует именно ваше понимание архитектуры вашей системы.
Промпт для перекомпиляции технического материала в персональную LLM-Wiki:
Ты — куратор персональной инженерной базы знаний (LLM-Wiki).Вот новый технический материал: [ВСТАВИТЬ ТЕКСТ / ССЫЛКУ / ДОКУМЕНТАЦИЮ].Твоя задача — синтезировать этот материал с существующей концептуальной базой:1. Выдели 3-5 фундаментальных инвариантов (правил, ограничений, механизмов), описанных в тексте.2. Объясни механику работы "под капотом" простыми аналогиями (mental models).3. Сформируй 3 контрольных вопроса на понимание скрытых уязвимостей и архитектурных компромиссов (trade-offs) данной технологии.4. Оформи результат в формате Markdown-заметки с перекрёстными ссылками [[Concept]] для включения в Obsidian.
Результат: Вы сохраняете позицию главного интеллектуального ядра системы, глубоко понимая все технические компромиссы и логику архитектуры, созданной вашими агентами.
FAQ
В: В чём ключевое отличие вайб-кодинга от агентной инженерии по Карпати? О: Вайб-кодинг — это создание прототипов и побочных проектов на скорости чистого доверия модели без глубокого вникания в код («просто нажимай Tab, пока работает»). Агентная инженерия — это строгая профессиональная дисциплина, где скорость ИИ сочетается с сохранением высоких стандартов надёжности: написанием спецификаций, обеспечением безопасности, юнит-тестированием и защитой от архитектурного раздувания.
В: Что такое парадигма Software 3.0? О: Это концепция, где LLM рассматривается не просто как инструмент генерации текста, а как программируемый компьютер. В Software 1.0 писали код вручную, в Software 2.0 собирали данные для тренировки весов. В Software 3.0 контекстное окно является оперативной памятью, промпт — инструкцией выполнения, а нейросеть напрямую обрабатывает сырую мультимодальную информацию, избавляя от необходимости писать громоздкие промежуточные приложения и бэкенды.
В: Почему современные LLM до сих пор допускают нелепые ошибки (например, с автомойкой или словом клубника)? О: Из-за феномена «зубчатого интеллекта» (Jagged Intelligence). Модели обучаются через RL (обучение с подкреплением) в средах, где результат легко верифицировать автоматически (код компилируется, математическое уравнение сходится). В таких доменах они гениальны. В областях, где нет автоматической функции вознаграждения или они не включены лабораториями в обучающую выборку, модели проявляют наивность и стагнируют.
В: Зачем Карпати упомянул проект Menu Gen в контексте ошибок агентов? О: Чтобы показать отсутствие у агентов архитектурного вкуса и здравого смысла. Агент привязал баланс кредитов пользователя к его email-адресу в Stripe, проигнорировав, что при входе через Google пользователь может иметь другой email. Агент обладает отличной памятью на API, но человек обязан задавать правила верхнего уровня: всегда использовать неизменяемые user_id и проектировать логику идентификации.
В: Как изменится процесс найма разработчиков по мнению Карпати? О: Алгоритмические задачи и головоломки (LeetCode) полностью устарели, так как модели решают их мгновенно. На собеседовании кандидату нужно давать масштабный сквозной проект (например, написать аналог Twitter для агентов с нуля), оценивая его навыки координации AI-инструментов, системный дизайн, архитектурный вкус и способность защитить приложение от взлома другими моделями.
В: Почему Карпати недоволен современной документацией библиотек и сервисов? О: Большинство документаций до сих пор написаны для людей: они содержат длинные текстовые описания, ссылки «нажмите здесь» и требуют ручных действий в браузерах. Инфраструктура должна стать Agent-Native: предоставлять готовые блоки для копирования в агента, однозначные CLI-команды, строгие API-схемы и интерфейсы для межмашинного взаимодействия без участия человека.
В: Что значит фраза «You can outsource thinking, but not understanding»? О: Вы можете делегировать агенту процесс вычислений, написания синтаксиса и генерации кода, но понимание архитектуры, компромиссов и назначения системы должно оставаться в голове создателя. Без глубинного понимания разработчик не сможет направлять агентов, формулировать спецификации и валидировать результат.
Ресурсы и ссылки
OpenClaw — инструмент/агентная среда для запуска сценариев автоматизации — упомянут в видео.
Menu Gen — пет-проект Андрея Карпати по распознаванию меню ресторанов и генерации изображений блюд — упомянут в видео.
MicroGPT — экспериментальный проект Андрея Карпати по максимальному упрощению и минимизации кода обучения GPT — упомянут в видео.
Claude Code (Anthropic) — CLI-агент для интерактивного написания кода и работы с терминалом — упомянут в видео.
Cursor / Codex — современные агентные среды разработки и модели для кодинга — упомянуты в видео.
Vercel CLI & Stripe — инфраструктурные сервисы для деплоя и приёма платежей, используемые в агентных пайплайнах — упомянуты в видео.
Конспект создан на основе видео «Андрей Карпати: Вайб-кодинг и будущее программирования» (Andrej Karpathy). Все права на оригинальный материал принадлежат авторам.Источник: https://www.youtube.com/watch?v=JZIBVD5ox7w