Лучший релиз Claude + 10 способов получить несправедливое преимущество

AAI LABS
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Хотя Claude Code и является одним из мощнейших инструментов для ИИ-разработки,
00:00:03почему он пасует перед определенными задачами? С учетом новых функций, которые Anthropic
00:00:08выпускает в последнее время, и рабочих процессов, которые мы выстроили вокруг него, методы
00:00:12работы с этим инструментом полностью изменились по сравнению с тем, что было пару недель назад. Наша команда использует Claude
00:00:16Code ежедневно, причем не только для разработки, но и для исследований, управления нашим
00:00:21продакшн-конвейером и автоматизации задач, вообще не связанных с кодом. Позвольте мне показать вам все,
00:00:26что нам удалось выяснить. Недавно в Claude Code добавили команду insights. Она анализирует
00:00:31все ваши прошлые сессии за определенный период и генерирует отчет. В этом отчете
00:00:36анализируется ваш стиль работы, «прожариваются» ваши привычки, подсвечивается то, что вы делали правильно,
00:00:40а в чем ошибались, и даются советы по улучшению. Больше всего нас интересовал поиск причин,
00:00:45почему что-то пошло не так, ведь именно на ошибках можно научиться. Отчет выделил
00:00:49моменты, где возникало больше всего трудностей, и предложил функции для оптимизации
00:00:54рабочего процесса. Например, мы помним сессию, где основной агент постоянно запрашивал
00:00:58список задач в течение долгого времени при использовании команд агентов. Из-за этого сессия затянулась,
00:01:03и нам пришлось прервать ее вручную. Чтобы предотвратить это в будущем, мы можем скопировать этот промпт
00:01:07в файл cloud.md, чтобы при использовании Claude Code с несколькими агентами Claude не опрашивал
00:01:12систему бесконечно, а сразу переходил к делу. Эти советы можно импортировать в проекты, чтобы
00:01:17опыт работы с Claude Code со временем только улучшался. Наша команда провела много времени за работой
00:01:22в Claude Code, и важнейшим этапом по-прежнему остается качественная передача контекста агенту.
00:01:26Это могут быть требования к проекту, разбитые на части, или документация по фреймворкам и
00:01:30библиотекам, которые вы используете. Когда вы даете правильный контекст, количество ошибок стремится к нулю,
00:01:35потому что агент точно знает, что делать. Что касается проектной документации, мы предпочитаем, чтобы Claude писал ее сам,
00:01:39а не делать это вручную. Мы дали Claude специфический промпт, содержащий всю информацию,
00:01:44необходимую для разделения идеи проекта на требуемые документы. Мы попросили его создать
00:01:48четыре документа, каждый из которых посвящен определенному аспекту приложения. Самый важный — это PRD,
00:01:53содержащий требования и объем проекта. Затем идет architecture.md,
00:01:57где прописаны форматы данных, структура файлов, API и все детали архитектуры.
00:02:02Далее — decision.md, в котором собраны все решения, принятые Claude в ходе создания проекта,
00:02:08что служит справочником на будущее. И, наконец, самый важный — feature.json, содержащий
00:02:12все функции в формате JSON. В нем экономно расходуются токены при описании каждой функции,
00:02:17указаны критерии готовности фичи и ключ passes для
00:02:22отслеживания того, что уже реализовано, а что нет. Теперь, когда большая задача разбита на
00:02:27мелкие части, нам нужно предоставить документацию по инструментам для реализации через
00:02:31MCP Context 7. Там есть документация по всем библиотекам и фреймворкам, которая регулярно обновляется,
00:02:36чтобы агенты могли загружать свежие данные и восполнять пробел между знаниями модели и
00:02:41текущим состоянием технологий. Настройка MCP занимает всего несколько шагов. После установки
00:02:46он использует инструменты Context 7 и получает информацию о библиотеках напрямую. Это позволяет использовать
00:02:50актуальную документацию, избегать ошибок из-за несовпадения версий и получать более
00:02:55точную реализацию. Хуки — еще одна недооцененная возможность. Хуки в Claude Code
00:03:00— это консольные команды, которые запускаются в определенные моменты жизненного цикла. Существует много типов,
00:03:05срабатывающих в разное время, например, при старте сессии, до или после использования инструмента. Но самое главное
00:03:11— это настройка специфических кодов завершения. Эти коды говорят Claude Code, продолжать ли работу,
00:03:16заблокировать или игнорировать действие. Код 0 означает успех. Код 2 означает блокирующую ошибку. Так что
00:03:22когда Claude пытается сделать то, чего не должен, он получает код 2, сообщение об ошибке
00:03:27и может исправиться. Любой другой код, кроме этих двух, не является блокирующим, отображается в подробном режиме,
00:03:32и выполнение продолжается. Код 2 очень важен, так как с его помощью можно контролировать
00:03:37поведение агента. Если вы когда-нибудь пробовали разработку через тестирование (TDD) с Claude Code,
00:03:41вы могли заметить, что он склонен менять сами тесты, если не может их пройти. Чтобы это
00:03:46предотвратить, мы настроили кастомный хук, который срабатывает перед использованием инструмента. Этот хук защищает тест-скрипты
00:03:50выводится сообщение о том, что изменение папок с тестами запрещено, и возвращается
00:03:55it shows an error message saying modifications to test folders are not allowed and returns
00:04:00код завершения 2. С этим хуком, когда мы дали Claude команду запустить тесты и они
00:04:05не прошли, он попытался изменить файлы тестов. Но скрипт заблокировал это, и появилось сообщение
00:04:10о запрете модификации. Это не дало Claude редактировать файлы, которые не следует трогать. Если вы работали
00:04:15с MCP, то знаете, что они раздувают окно контекста. А когда вы работаете над масштабным проектом,
00:04:19количество подключенных MCP растет. В итоге все инструменты MCP занимают место в окне контекста,
00:04:25и оно переполняется. Специально для этого в Claude Code есть экспериментальный режим MCP CLI, который решает
00:04:31эту проблему. Мы установили флаг экспериментального MCP CLI в значение true. После этого все MCP, которые отображались
00:04:36в контексте, исчезли, и инструменты MCP перестали занимать место в окне контекста. Возник вопрос:
00:04:41как получить доступ к инструментам, если их больше нет в памяти? Вместо того чтобы загружать все
00:04:45схемы инструментов заранее, Claude Code использует команды MCP CLI info и MCP CLI calls и запускает все подключенные
00:04:52MCP через эти инструменты через bash. С установленным флагом, когда мы давали промпт, вместо вызова
00:04:56инструмента MCP напрямую, он вызывал их через MCP CLI и запускал как bash-команды, а не как
00:05:03инструменты MCP. Таким образом, нужный инструмент загружался только по запросу, предотвращая раздувание контекста. Также,
00:05:08если вам нравится наш контент, нажмите кнопку хайпа, ведь это помогает нам создавать больше
00:05:13подобных видео и охватывать больше людей. В наших прошлых роликах мы подчеркивали важность использования
00:05:18git, чтобы вся работа агентов отслеживалась в системе контроля версий. Вы также можете откатиться назад, если агенты
00:05:23реализовали что-то неправильно. Мы также выпускали видео, где использовали git для запуска агента на долгосрочной
00:05:28задаче, которое вы можете посмотреть на канале. Мы использовали параллельных агентов для работы над разными
00:05:32деревьями файлов (worktrees), чтобы они могли создавать все функции проекта, оставаясь изолированными друг от друга.
00:05:37Так мы могли объединить их результаты позже без конфликтов, так как работа агентов
00:05:41над одними и теми же файлами вызывает проблемы. Ветки не так удобны, потому что они приводят к конфликтам. Агентам
00:05:46сложно переключаться между ветками, так как ветки делят одну рабочую директорию, в отличие от worktrees.
00:05:50Поэтому мы дали промпт, в котором указали несколько функций для реализации и уточнили,
00:05:55что каждый агент должен работать в отдельном worktree. Система использовала отдельного
00:05:59агента для каждого дерева и реализовала функции изолированно, даже если описания их задач
00:06:03в некоторых моментах пересекались. После того как Claude правильно реализовал все функции в
00:06:08отдельных ветках, мы дали команду объединить результат, чтобы получить все функции в одной рабочей
00:06:13директории. Строгий режим (strict mode) необходим для переноса бремени проверки ошибок на агента. Это
00:06:18нужно настраивать для любого языка, который вы используете, потому что это ловит баги
00:06:22на этапе сборки, а не когда пользователи сталкиваются с ними в рантайме. Так как наш основной язык — TypeScript,
00:06:26мы всегда устанавливаем strict mode в true. Это включает проверку на null и неявные
00:06:31типы, заставляет соблюдать строгую типизацию, что в целом уменьшает количество ошибок в рантайме. Это важно
00:06:36для ИИ-агентов, так как у них нет встроенного способа отлавливать ошибки времени выполнения. Строгий режим сводит
00:06:41к минимуму риск сбоев в рантайме и гарантирует, что компилятор возьмет эти вопросы на себя. Агенты могут
00:06:46опираться на логи ошибок в терминале для применения известных исправлений. Вместо того чтобы полагаться только
00:06:51на проверку скриптами, стоит добавить еще один уровень тестирования. Вы пишете пользовательские истории (user stories),
00:06:56которые описывают взаимодействие пользователя с системой, чтобы направлять процесс тестирования после
00:07:00сборки приложения. Мы фактически определяем пользовательские истории перед реализацией проектов, так как это
00:07:05задает стандарт, которому должна следовать реализация. По промпту Claude написал несколько историй
00:07:10в папке, содержащей все возможные способы взаимодействия пользователя с системой. Каждая история
00:07:15описывает конкретный аспект приложения, его приоритет и критерии приемки, по которым агент проводит тест.
00:07:21Пользовательские истории охватили все возможные сценарии, включая идеальный путь и краевые случаи. Эти
00:07:26истории по сути говорят агентам, как взаимодействовать с только что построенной системой. Имея правильные
00:07:31инструкции по взаимодействию, любой агент может применить те же принципы к
00:07:35создаваемому приложению и лучше соответствовать ожиданиям пользователей. Когда истории были задокументированы, мы попросили
00:07:40Claude реализовать их одну за другой и дали команду начать с оптимального пути, указанного в каждой
00:07:45истории, убедившись, что все краевые случаи учтены. Таким образом, в реализации было меньше пробелов и
00:07:50пользователи оставались более довольны. Все советы, о которых мы говорили, доступны в
00:07:55виде готовых шаблонов в AI Labs Pro. Для тех, кто не знает, это наше недавно запущенное
00:08:00сообщество, где вы получаете готовые шаблоны, промпты, все команды и навыки, которые можно
00:08:05внедрить прямо в ваши проекты. Если вы цените то, что
00:08:10мы делаем, и хотите поддержать канал — это лучший способ. Ссылки в описании.
00:08:14Нам нужно использовать параллелизацию по максимуму, потому что именно так агент ускоряет
00:08:20свой рабочий процесс и внедряет вещи, которые не зависят друг от друга. Мы знаем, что Claude автоматически
00:08:25определяет, можно ли запустить задачу параллельно или последовательно, но
00:08:29создание агентов вручную тоже не помешает. Мы также рассматривали эти возможности агентов в нашем прошлом
00:08:34видео об ускорении рабочего процесса, но эта скорость достигается ценой повышенного расхода токенов.
00:08:39Тем не менее, усилия по параллелизации того стоят. В какой-то момент
00:08:43мы работали над исследованием влияния улучшений Opus 4.6, используя ту же модель, и она постоянно
00:08:49галлюцинировала, хотя мы предоставляли источники. Она писала неверную информацию, и нам приходилось
00:08:54постоянно ее поправлять. Исследование казалось бессмысленным, так как нам приходилось все исправлять
00:08:58самим. Чтобы предотвратить это в будущем, мы использовали параллельных агентов. Мы поставили задачу по исследованию,
00:09:03где хотели сравнить возможности роя агентов KimiK 2.5 и Claude.
00:09:09Мы задействовали двух агентов: одного для самого исследования, а другого для проверки фактов за первым агентом. Основная
00:09:14идея заключалась в том, чтобы оба агента общались друг с другом для обеспечения точности выводов, чтобы нам
00:09:19не пришлось делать это самим. В такой схеме один агент выполняет задачу, а другой критически
00:09:24ее анализирует, создавая состязательный процесс. Исследователь начал первым, а
00:09:28фактчекер ждал, пока не будет готов первый черновик. Как только черновик был готов,
00:09:33фактчекер приступил к проверке. Он мгновенно выявил множество неточностей в
00:09:38данных, которые привел исследователь, и нам больше не нужно было искать их вручную. Оба агента продолжали
00:09:43взаимодействовать, поддерживая строгий процесс проверки. Один агент был полностью посвящен
00:09:47уличению другого в неверной информации. В таком состязательном режиме можно запускать множество задач,
00:09:52не только исследования, но и разработку, где один агент пишет код, а другой проверяет реализацию на соответствие плану.
00:09:57По словам создателя Claude Code, агент работает лучше, если у него есть способ проверять свою работу.
00:10:02Суть здесь в том, чтобы дать агенту «глаза», то есть возможность убедиться, что реализованная функция корректна
00:10:07и соответствует ожиданиям. Поскольку эти агенты работают в терминале, они не могут
00:10:12выявить проблемы, возникающие в рантайме, особенно на стороне клиента. Мы используем несколько способов
00:10:17проверки работы агента. Первый — расширение Claude для Chrome, которое предоставляет браузерные инструменты,
00:10:21такие как захват DOM, проверка логов консоли и прочее. Еще один инструмент — Puppeteer MCP.
00:10:26Он полезен тем, что запускается в отдельном браузере без ваших существующих сессий, в отличие от расширения для Chrome.
00:10:31Он изолирован и не мешает вашим текущим сессиям, что дает дополнительный уровень
00:10:36приватности. Но наш фаворит — это браузер агента от Vercel. Это не MCP, а CLI-инструмент,
00:10:41дающий агентам возможности браузерного тестирования. В нем есть инструменты для навигации, создания скриншотов и
00:10:46многого другого. В отличие от других инструментов, он ориентируется не только на скриншоты.
00:10:51Вместо этого он использует дерево доступности (accessibility tree), где каждый элемент имеет уникальную ссылку. Это сжимает
00:10:56весь DOM с тысяч токенов до примерно 200–400, что гораздо экономнее для контекста. Это и было главной проблемой
00:11:01расширения Claude для Chrome, которую решил браузер агента. Расширение загружает весь DOM в
00:11:07окно контекста и быстро его исчерпывает. Мы также добавили инструкции в Claude.md, чтобы Claude
00:11:12сначала полагался на браузер агента, прежде чем переходить к тестированию на базе MCP. Так Claude использует браузер агента
00:11:17как основной метод проверки. Но есть и другой аспект. Тестирование важно, но есть способ
00:11:23уменьшить количество ошибок без тестов и код-ревью. Мы просим Claude предсказывать вещи,
00:11:28которые еще не произошли. Мы просим Claude проверить реализацию и выявить места, где
00:11:33приложение может дать сбой. Это работает, потому что мы даем Claude шанс предугадать потенциальные проблемы,
00:11:38сопоставляя их с ошибками в других приложениях, даже если мы сами еще не столкнулись с ними
00:11:43в ходе тестов. Это заставляет Claude взглянуть на код под другим углом.
00:11:47Когда мы попросили его об этом, он выявил критические пробелы, которые прошли даже через нашу многоуровневую
00:11:52систему тестирования, и нашел 18 проблем, которые могли бы навредить в продакшене.
00:11:57Наши обычные тесты их не поймали. Их удалось найти только тогда, когда мы заставили Claude взглянуть на
00:12:01проект под другим углом. На этом наше видео подходит к концу. Если вы хотите поддержать
00:12:06канал и помочь нам выпускать подобные ролики, вы можете сделать это с помощью кнопки «Суперспасибо»
00:12:10ниже. Как всегда, спасибо за просмотр, и до встречи в следующем видео!
00:12:15below. As always thank you for watching and I'll see you in the next one.

Key Takeaway

Эффективная работа с Claude Code строится на глубоком контексте, строгом контроле через хуки и использовании специализированных инструментов оптимизации контекста для создания надежных масштабируемых приложений.

Highlights

Использование команды insights для глубокого анализа прошлых сессий и исправления повторяющихся ошибок через файл claude.md

Важность создания структурированной документации (PRD, architecture.md, decision.md, feature.json) самим ИИ для минимизации галлюцинаций

Применение Git Worktrees для параллельной работы нескольких ИИ-агентов без конфликтов в коде

Оптимизация контекстного окна с помощью экспериментального режима MCP CLI и браузера агента от Vercel

Состязательный подход к работе: использование одного агента для исследования, а второго — для фактчекинга и поиска ошибок

Предотвращение нежелательных правок в тестах через использование кастомных хуков с блокирующим кодом завершения

Timeline

Аналитика сессий и настройка контекста

В начале видео рассматривается новая команда insights, которая позволяет Claude Code анализировать стиль работы пользователя и выявлять ошибки в прошлых сессиях. Спикер объясняет, как отчеты помогают найти причины затянутых сессий и оптимизировать промпты. В качестве примера приводится использование файла claude.md для предотвращения бесконечных опросов системы агентом. Это критически важно для постепенного обучения ИИ-помощника специфике конкретного проекта. Такая автоматизация выводов позволяет значительно ускорить взаимодействие в долгосрочной перспективе.

Автоматическая документация и MCP Context 7

Этот раздел посвящен важности качественной передачи контекста через документацию, которую Claude генерирует самостоятельно. Описываются четыре ключевых документа: PRD, архитектура, реестр решений и экономный feature.json для отслеживания прогресса. Спикер подчеркивает, что структурирование задач снижает вероятность ошибок практически до нуля. Дополнительно рассматривается инструмент MCP Context 7, который обеспечивает агента актуальной документацией по библиотекам. Это решает проблему разрыва в знаниях модели о новейших технологиях.

Контроль агента через хуки и TDD

Автор объясняет механизм работы хуков в Claude Code, которые позволяют запускать консольные команды в разные моменты жизненного цикла. Особое внимание уделяется кодам завершения, где код 2 служит для блокировки нежелательных действий агента. Демонстрируется практический пример защиты тестовых файлов от изменений самим ИИ при провале тестов. Это позволяет внедрить строгий процесс разработки через тестирование (TDD). Таким образом, разработчик сохраняет полный контроль над поведением системы, предотвращая «самовольные» правки кода.

Оптимизация контекста и Git Worktrees

Рассматривается проблема переполнения контекстного окна при использовании множества инструментов MCP. Спикер предлагает решение в виде экспериментального режима MCP CLI, который загружает инструменты только по запросу через bash. Также обсуждается методика использования Git Worktrees для параллельной работы нескольких агентов над разными частями проекта. Этот подход исключает конфликты при слиянии веток и позволяет агентам работать изолированно. В итоге сложные функции реализуются быстрее и стабильнее.

Строгий режим и пользовательские истории

В данном сегменте акцентируется внимание на использовании строгого режима (strict mode) в TypeScript для отлова багов на этапе сборки. Спикер утверждает, что это жизненно важно для ИИ-агентов, не умеющих эффективно отлаживать ошибки времени выполнения. Далее описывается процесс написания пользовательских историй (user stories) до начала реализации кода. Эти истории служат стандартом для агента и помогают учитывать как основной путь пользователя, так и краевые случаи. Такой подход гарантирует, что итоговый продукт будет соответствовать ожиданиям реальных людей.

Параллелизация и состязательные агенты

Спикер углубляется в тему параллелизации задач и создания специализированных «роев» агентов. Описывается методика состязательного процесса, где один агент выполняет исследование, а второй выступает в роли фактчекера. Это помогает бороться с галлюцинациями модели, так как второй агент критически анализирует каждый тезис первого. В видео показано, как фактчекер мгновенно находит неточности, избавляя человека от ручной проверки. Данная стратегия применима как для написания текстов, так и для сложного программирования.

Инструменты визуальной проверки и прогнозирование

Заключительная часть посвящена способам предоставления агенту «глаз» для проверки интерфейсов. Сравниваются расширение для Chrome, Puppeteer и фаворит автора — браузер агента от Vercel, использующий экономное дерево доступности. Спикер также раскрывает мощный метод: просьбу к Claude предсказать потенциальные сбои в реализации. Этот подход позволил обнаружить 18 критических проблем, которые не выявили автоматические тесты. Видео завершается призывом использовать данные методики для получения «несправедливого преимущества» в разработке.

Community Posts

View all posts