Мы беседуем с Кейланом Барнсом, сооснователем и генеральным директором Gauge, о том, как агенты по написанию кода выбирают инструменты для своей работы. Gauge запускает агентов, таких как Claude Code и Codex, в изолированных средах (песочницах) и отслеживает, что они читают, что выбирают и где застревают. Кейлан также рассказывает, почему они заменили встраиваемые ролики YouTube на Mux и что ждет компанию в будущем, включая выпуск версии Gauge с открытым исходным кодом.
Смотрите видео в плеере выше или читайте расшифровку ниже.
Кейлан Барнс, сооснователь и генеральный директор Gauge: Настройка Mux прошла просто невероятно гладко. Честно говоря, документацию и процесс адаптации Mux мы приводим другим клиентам в качестве эталона из 99-го перцентиля: «Вот как надо это делать».
Джошуа Альфонс: Добро пожаловать в Mux Dev Talks. И у нас в гостях Кейлан из Gauge, платформы роста, ориентированной на агентов. Кейлан, добро пожаловать. Мы хотели бы побольше узнать о Gauge. Расскажи о себе, о компании и о том, как вы начинали.
Кейлан: Да. Спасибо, что пригласил, Джош. Итак, мы — стартап из YC. Мы начинали в сфере AEO и GEO. Мы побывали на конференции разработчиков с открытым исходным кодом, организованной YC, где встретили множество компаний, которые начали получать входящий трафик от таких ИИ-источников, как ChatGPT. И тогда мы как раз работали в сфере инструментов разработки с открытым исходным кодом и собрали небольшой побочный проект. Опубликовали его на Hacker News. Он довольно сильно выстрелил, и мы начали работать со множеством отличных компаний — создателей инструментов для разработчиков: PostHog, Mux, OpenRouter, Braintrust, Supabase, Mintlify и так далее. Ну и, в общем, с тех пор мы мчимся на всех парах.
Джошуа: Здорово! Знаешь, наше знакомство с Gauge началось тогда, когда мы действительно хотели улучшить наш опыт в области AEO и GEO, убедиться, что агенты могут найти Mux и привести к нему пользователей. Но сейчас ситуация меняется, верно? Раньше разработчики сами выбирали API и инструменты, а теперь эти решения в основном принимают агенты. Расскажи, как вам удалось перейти от простого AEO и GEO к созданию полноценной новой платформы для агентов?
Кейлан: Да, отличный вопрос. Мы действительно поняли это благодаря нашим клиентам. Думаю, агенты по написанию кода и среды для них всегда были у нас на уме. Мы сами разработчики. Мы пользуемся этими инструментами изо дня в день. Наша команда очень увлечена... И наши клиенты сами задали нам этот вопрос: «Слушайте, здорово, что мы теперь отображаемся в ChatGPT, в Perplexity» и так далее, но ведь принятие решений сместилось не просто из Google Поиска и традиционных каналов в GEO и AEO, а теперь и в сторону агентов по написанию кода.
И ключевое отличие агента по написанию кода от, скажем, AEO или GEO заключается в том, что ваш продукт может быть не просто рекомендацией. Да. Агент может реально внедрить его. Так что это полноценный канал привлечения пользователей. Думаю, нашими лучшими клиентами всегда были компании с открытым исходным кодом и разработчики инструментов, с которыми мы работали. Эта проблема оказалась настолько важной, что ее развитие произошло для нас совершенно естественно.
Джошуа: Да, знаешь, Gauge действительно очень помог нам как в плане работы с разработчиками, так и в плане взаимодействия с агентами. Недавно мы стали использовать Gauge для нашей библиотеки промптов. И это очень помогает нам направлять агентов и пользователей на создание идеального промпта для использования Mux так, как им бы хотелось внедрить его в свои приложения.
Теперь, если перейти к… Позволь привести пример. Если вы выбираете базу данных или платформу аутентификации для добавления в свое приложение, как агент вообще определяет, какого провайдера выбрать? Что Gauge делает «под капотом», чтобы помочь принять правильное решение?
Кейлан: Да. Gauge позволяет привнести реальные данные в этот процесс принятия решений. Запуская этих агентов по написанию кода, среды и сеансы, мы можем воссоздать момент и процесс принятия решений, через которые проходят агенты, а затем изучить материалы, которые они используют для принятия этих решений. Один из ключевых выводов заключается в том, что в отличие от сферы AEO и GEO, где потребляется много маркетингового контента, списков вроде «топ-10» и сравнений, документация на самом деле является основным источником, определяющим процесс принятия решений для многих таких агентов. И во многом все сводится к тому, какая у вас техническая документация? Насколько агентам легко освоить вашу платформу и начать работу с ней? А ведь агенты по написанию кода работают с реальными кодовыми базами, верно? Они действуют в таких средах, где присутствует огромный объем контекста.
Поэтому мы видим: предположим, вы работаете над проектом на Django или на Next.js. Если у одного провайдера есть руководство по настройке Django, а у другого нет, агент с гораздо большей вероятностью выберет продукт, для которого в документации прямо прописана реализация или рекомендация.
Джошуа: Да. Можешь рассказать нам, как именно Gauge тестирует этих агентов по написанию кода? Опиши по шагам, как это происходит.
Кейлан: Да. Давайте возьмем один из таких промптов, которые вы разрабатываете для использования агентами.
Джошуа: Да.
Кейлан: Что мы делаем на самом деле: мы берем агента по написанию кода, помещаем его в изолированную среду, даем ему этот промпт и смотрим, что он делает. Затем мы можем повторять это снова и снова. Мы можем создавать контрольные точки (чекпоинты). Мы можем откатывать изменения, восстанавливать состояние, а затем пробовать различные варианты этого промпта и определять на основе критериев успеха, насколько успешно агент справился с тем пользовательским сценарием, для прохождения которого этот промпт и создавался.
И мы можем делать это не только для промптов и текста, но и для навыков и самой документации. Мы можем показывать агенту по написанию кода разные версии документации в песочнице и тестировать их без необходимости развертывать новые изменения, а также даже пробовать различные варианты вашей CLI и SDK прямо на платформе.
Джошуа: Это интересно. Ты упомянул навыки. В связи с этим вспоминается следующее: я уже видел файлы LLM.txt, а разные компании используют серверы MCP для самых разных функций. Что из этого действительно помогает? Мне кажется, правила постоянно меняются. Что бы ты порекомендовал команде, которая действительно хочет улучшить взаимодействие с агентами в целом? Им нужно абсолютно все или от чего-то можно отказаться?
Кейлин: Да. Это отличный вопрос. Сейчас, я думаю, идет большие дебаты насчет MCP и CLI. В целом мы видим, что агенты могут быть намного эффективнее с CLI, с точки зрения расхода токенов. Кроме того, наличие более детерминированной схемы, неявно встроенной в CLI, интерфейсы и вещи, которые агент может вызывать, гораздо лучше определены, и это очень помогает.
Короткий и простой ответ заключается в том, что важны все они, и здорово иметь все эти интерфейсы, а агенты будут вызывать их и обращаться к ним по разным причинам.
Навыки — это интересный момент, потому что мы действительно сталкиваемся с проблемой обновления навыков. По сути, это просто статический файл, который внедряется в контекст, и бывает довольно сложно изменить его в реальном времени. Один из конкретных примеров того, что мы сделали с Gauge, и видели, как другие успешно применяют это, заключается в том, что в нашем CLI есть команда под названием Gauge Инструкции, которая фактически выполняет роль навыка. Она дает агенту инструкции о том, как использовать Gauge CLI, как взаимодействовать с Gauge (каламбур не планировался) и эффективно работать, будучи продвинутым пользователем Gauge. И наш навык просто указывает на Gauge Инструкции и говорит агенту: «Эй, тебе стоит это посмотреть», поскольку интерфейс Gauge Инструкций мы можем обновлять в реальном времени и выпускать изменения очень легко, в отличие, по крайней мере прямо сейчас, от распространения навыков и их обновлений... Есть библиотеки и все такое, но это, эм, гораздо более сложная для контроля сфера.
Джошуа: Да. Я определенно согласен. Мы тоже сталкиваемся с некоторыми из этих проблем. И то, что мне действительно нравится в Gauge, — когда я нахожусь в панели управления, во время онбординга я мог просто скопировать промпт, вставить его в любой удобный мне инструмент и продолжить работу. Все устанавливается. Я готов к работе. Так что это немного похоже на то, что вы только что объяснили, верно? Отчасти.
Кейлин: О да. Мы используем Gauge для самих себя. То есть Gauge был создан с помощью Gauge, и мы уделяем особое внимание тому, чтобы наш CLI, наши навыки и все эти интерфейсы постоянно улучшались для обеспечения наилучшего пользовательского опыта для агентов.
Джошуа: Да.
Кейлин: И один из способов осмыслить работу, которую может выполнять Gauge... вы знакомы с рекурсивным самосовершенствованием?
Джошуа: Да.
Кейлин: Так вот, при рекурсивном самосовершенствовании вы держите среду постоянной и пытаетесь сделать агента как можно лучше в рамках этой среды. В случае с Gauge постоянным остается агент. Это Claude Code или Codex, а мы настраиваем среду, чтобы помочь агенту быть как можно более продуктивным. То есть меняем эти документы, навыки или CLI, чтобы действительно улучшить и получить наилучшую возможную версию.
Джошуа: Да. Так что, хотя мы повсюду используем агентов, у разработчиков и создателей по-прежнему остается пространство для участия в процессе, потому что есть множество файлов, которые необходимо постоянно обновлять для улучшения работы.
Таким образом, ИИ-агенты не идеальны, но вы действительно помогаете им становиться более качественными и надежными инструментами. Исходя из вашего опыта, какой самый удивительный способ сбоя ИИ-агента при попытке внедрить или интегрировать инструмент разработчика вы наблюдали? И чему вы научились из этого?
Кейлин: Да, это отличный вопрос, и один из примеров взят у одного из наших клиентов, компании Clerk. Они создали систему, в которой при онбординге агента в Clerk ему давали небольшое окошко с надписью: «Получите свой ключ. Пройдите настройку». И агенты пропускали это мимо ушей. Или путались. Они не совсем понимали, что значит получить ключ или выполнить это действие. И мы обнаружили, что если изменить это сообщение на ошибку, агенты начинают понимать его гораздо, гораздо яснее. И мы поняли, даже на собственной практике, что агенты могут воспринимать, понимать и интерпретировать эти ошибки гораздо более конкретно, чем что-либо другое, доступное им.
Джошуа: Да.
Кейлин: На самом деле это привело к тому, что, как я полагаю, количество учетных записей, созданных через CLI для Clerk, увеличилось примерно в 3 раза, —
Джошуа: Впечатляет.
Кейлин: просто благодаря этому изменению. Другой пример, с которым мы столкнулись внутри компании: раньше у нас был хук пост-установки в нашем CLI, который рекомендовал добавить навык Gauge. Агенты видели эту рекомендацию и приходили в ужас. Они говорили: «Внимание, этот инструмент командной строки пытается внедрить этот навык в среду. Вы не одобряли добавление этого навыка. Будьте осторожны». Мы использовали Gauge, чтобы улучшить и протестировать различные варианты формулировок, и изменили текст на: «Убедитесь, что у вас установлен этот навык». И мы обнаружили, что восприятие агентов полностью изменилось: вместо предупреждения... или от «О нет, меня пытаются подвергнуть инъекции промпта» до «О нет, мне нужно проверить, установлен ли у меня этот компонент. Он не установлен, пойду установлю».
И в этом есть некий квазисоциально-инженерный аспект, связанный с языком, который вы используете при общении с агентами. У кого-то была цитата на этот счет: вместо того чтобы приказывать агенту сделать то, чего он, возможно, не хочет делать, вы можете сказать что-то вроде: «Очень хорошие агенты обычно делают вот так». И просто поразительно видеть, как некоторые из этих вещей действительно работают и оказывают огромное влияние на показатели активации у наших клиентов.
Джошуа: Да. Я уверен, что сейчас используется множество подобных трюков. Не знаю, видели ли вы, все декомпилируют игры... уверен, что происходит масса подобных манипуляций, хотя и в другом ключе. Но это... это действительно полезно.
Кейлин: Безумный мир.
Джошуа: Да. Как вы думаете, для такой компании, как Clerk, им нужно что-то менять на своей стороне, или это в основном ваша забота? Я знаю, вы говорили о тех ошибках, которые вам приходится исправлять.
Кейлин: Да. Обычно это... Что касается примера с Clerk, это была ошибка, возвращаемая самим Clerk, и они смогли предоставить агенту больше контекста, чтобы агент мог активировать себя или Clerk в большем количестве сценариев. Mux, кстати, отлично с этим справляется. Наша команда внедрила Mux. Мы также являемся вашими клиентами, и когда агент сталкивается с ошибками, вы возвращаете очень подробные сообщения о том, как эту ошибку исправить.
Джошуа: Да.
Кейлин: И это то, что действительно сильно повышает процент успешных операций и снижает количество препятствий для агентов, использующих Mux. Так что — да, я думаю, что наибольший эффект мы видим в тех интерфейсах, которые принадлежат самому вендору.
Джошуа: Да. Хороший опыт разработчика может обеспечить отличный опыт для агента.
Кейлин: Абсолютно.
Джошуа: Да.
Кейлин: Да.
Джошуа: Существует множество различных поставщиков агентов, таких как Claude или Codex, они недетерминированы и ведут себя по-разному. Так как же сделать ваши оценки достаточно надежными, чтобы разработчики могли на них опираться?
Кейлан: Да, это отличный вопрос. Здесь можно выделить два компонента. Во-первых, да, безусловно, разные модели и разные обвязки ведут себя по-разному. Мы проводим измерения для всех них. Поэтому мы ориентируемся на глобальные оптимизации, но часто мы обнаруживаем, что вам нужно внести изменения, чтобы помочь Claude Code работать успешнее по сравнению с Codex, и мы можем помочь вам внести оба этих изменения. В крайнем случае вы даже можете предоставлять разный контент разным агентам по написанию кода в зависимости от их пользовательского агента при отправке запросов к вашим ресурсам.
И что касается этого детерминированного или недетерминированного аспекта, присущего агентам по написанию кода и ИИ в целом, это действительно похоже на подбрасывание монеты или бросание кубика. Если вы подбросите монетку один раз, это выглядит довольно случайно. Если вы подбросите монетку 100 раз, это начинает становиться весьма предсказуемым в том смысле, что, мол, в половине случаев выпадает орел, в половине — решка. Это очень напоминает метод Монте-Карло, когда мы просто запускаем большое количество испытаний или оценок, чтобы действительно понять базовое поведение модели.
Джошуа: Отлично. Немногим ранее мы говорили о контексте на основе кода. Не могли бы вы рассказать историю о чем-то, что вас по-настоящему удивило? Возможно, это произошло с кем-то из ваших клиентов?
Кейлан: Да, это отличный вопрос. Мы заметили, что контекст кодовой базы может быть чуть ли не важнее самого текста промпта, когда речь заходит о рекомендациях и выборе. Один очень интересный вывод, к которому мы недавно пришли, заключается в следующем: например, Supabase очень известна своими базами данных.
Джошуа: Да.
Кейлан: И у них также есть другие продукты. У них есть продукт для граничных вычислений (edge functions), у них есть продукт для аутентификации. И мы изучали ситуацию вроде: хорошо, Supabase отлично преуспевает в сфере баз данных, ее часто рекомендуют в качестве поставщика по умолчанию. В сфере аутентификации или даже граничных вычислений ее рекомендуют примерно в 0% случаев. Ее практически никогда не порекомендуют вместо, скажем, Cloudflare, если мы рассматриваем граничные вычисления. Но если вы используете Supabase и являетесь пользователем продукта баз данных Supabase, и вы ищете продукт для граничных вычислений, то в более чем 90% случаев вам порекомендуют именно Supabase. Или если вы используете Supabase ради их базы данных и ищете продукт для аутентификации, вам снова порекомендуют их в подавляющем большинстве случаев.
И здесь кроется очень интересный вывод: на самом деле существует отличный путь для перекрестных продаж продуктов агентам. Supabase необязательно выиграет битву за граничные вычисления или аутентификацию, но если они выигрывают битву за базы данных, они затем могут преуспеть и в этих других критериях выбора при прямом сравнении. И это показательно для PostHog, еще одного нашего клиента, у которого 14 различных продуктов. Компания очень известна своей продуктовой аналитикой. Это их стандартная точка входа, с которой они попадают в организации. Но как только вы начинаете использовать PostHog для продуктовой аналитики, если вы ищете запись сеансов или переключатели функций (feature flags), они действительно покажут себя с лучшей стороны в этих сценариях, если вы работаете в репозитории, который уже использует PostHog.
Джошуа: Здорово, то есть… Как команда или компания может извлечь выгоду из этого трюка? Рекомендация здесь заключается в том, чтобы действительно определить свою точку входа, где вы побеждаете. Затем вы хотите приумножить это преимущество, верно? Так что для Mux, очевидно, в качестве видеоапи для разработчиков это и будет вашей точкой входа.
И второй момент заключается в том, чтобы убедиться, что агенты также осведомлены об этих других продуктах, потому что они почти всегда будут по умолчанию предлагать апселл или кросс-селл существующей части стека, а не привлекать нового вендора или создавать что-то с нуля даже в некоторых случаях.
Джошуа: Да, нужно поддерживать такой паритет. Сделать все гладко. Это… Я понятия не имел, что такое происходит.
Кейлан: Это просто безумие.
Джошуа: Да. Нам очень понравилось работать с Gauge, от дашборда до интерфейса командной строки. Это оказалось очень полезно для проведения наших оценок. И у вас тоже есть история использования Mux, когда вы заменили видеоплеер YouTube и использовали для этого агента. Можете ли вы рассказать нам, были ли какие-то трудности у агента при его использовании? И приходилось ли какому-то человеку вмешиваться, чтобы что-то исправить?
Кейлан: Да. Мы очень счастливы быть клиентами Mux. Изначально у нас были встроены видеоролики YouTube для некоторых из наших учебных видео, руководств и тому подобного. И одной из критических проблем, с которыми мы столкнулись, было то, что YouTube буквально показывал рекламу на нашем маркетинговом сайте, чего мы совершенно не хотели видеть.
А настройка Mux прошла невероятно плавно. Честно говоря, документация Mux и этот процесс адаптации — это то, чем мы делимся с другими клиентами как нечто из разряда 99-го перцентиля: «Вот как надо это делать». На самом деле это был просто потрясающий опыт: от загрузки видео до их размещения на сайте, настройки всех необходимых параметров и ленивой загрузки всего содержимого.
И даже когда агенты сталкивались с ошибками, одна из вещей, с которыми вы, ребята, справляетесь великолепно, — это возвращение в сообщении об ошибке информации о том, куда перейти и как исправить или устранить эту ошибку, и это то, с чем агенты могут затем справиться автономно, вместо того чтобы возвращаться к пользователю с сообщением: «Помогите, я столкнулся с этой ошибкой. Все сломалось по таким-то причинам». Агент может заметить эту ошибку, получить указание на нужный ресурс, найти его и да, продолжить работу в штатном режиме.
Джошуа: Да. Что я заметил в том, как вы встроили Mux на свой сайт, так это то, как вы оставили описания, а также некоторые транскрипции. Похоже, это сделано для агента, потому что, знаете ли, люди могут смотреть видео, а агенты технически не могут. Расскажите, как вы определяли, что оставить для агента, а что для человека?
Кейлан: Это отличный вопрос. Я думаю, что когда дело доходит до встраивания стенограмм и контекста видео на веб-сайт, это чрезвычайно полезно для агента. Вы хотите убедиться, что эти материалы действительно встроены на стороне сервера. Они не должны рендериться на стороне клиента так, чтобы агент не мог их получить. И на самом деле мы обнаружили, что чем больше контента, тем лучше. Так что главная особенность агентов по написанию кода — это предоставление им как можно большего контекста. И поэтому наличие полной расшифровки невероятно ценно. В определенный момент, возможно, если вы запускаете очень длинное видео с огромным количеством контекста, его сокращение может оказаться весьма полезным.
Если задуматься о том, чего хотят агенты, им нужно, чтобы вы были максимально прямыми, честными и сразу переходили к делу. Для людей же рассказ историй, утаивание главного, создание саспенса — все это отличные приемы для создания качественного контента.
Джошуа: О да.
Каэлан: Агентам это вообще не нужно. Агентам нужны факты сразу. Им нужны факты в заголовке, в описании, в транскрипции, в футере. Просто дайте мне ответ на вопрос, информацию по которому я пытаюсь найти.
Джошуа: Да. Скорее всего, именно это люди и делают, когда говорят: «Эй, дай мне краткое содержание этого видео» или «Подскажи, где что найти». Им нужен прямой ответ. И именно этого на самом деле и ищут агенты.
Исходя из вашего опыта создания CLI-инструмента и добавления кучи функционала: что команды делают правильно или неправильно в отношении CLI-инструментов, когда хотят улучшить опыт работы с агентами?
Каэлан: Да. Я думаю, большая ошибка — относиться к CLI как к дополнению или какой-то части вашего опыта. Когда вы думаете об агентах, CLI действительно должен уметь делать абсолютно все то же самое, что и ваше приложение.
Джошуа: Да.
Каэлан: И поэтому, если вы хотите, чтобы агенты могли управлять вашим ПО и использовать его, обеспечение паритета функций в CLI с вашим реальным приложением, а также с вашими SDK, API или чем угодно еще (например, MCP и другими поверхностями), действительно очень и очень важно.
Другая вещь, на которую я бы указал: в CLI и во всех его командах и описаниях... Я упоминал инструкции Gauge ранее, где мы фактически можем предоставить большой объем контекста напрямую агентам через CLI. Вы даже можете подумать о снижении барьера для агента, чтобы ему не приходилось отправляться на поиски и читать вашу документацию. Если весь этот контент доступен внутри CLI, вы можете избавить агента от необходимости искать внешние источники.
Вы также можете дать ссылки на свою документацию, и это отлично работает до тех пор, пока есть простой и прямой путь через эту поверхность к информации, нужной агенту.
Джошуа: Да. Какое у вас было предположение по поводу создания ИИ-агентов или просто разработки с помощью ИИ-агентов, которое оказалось абсолютно неверным и которое заставило вас взглянуть на вещи совершенно по-новому благодаря Gauge?
Каэлан: Да. Одно из самых больших заблуждений было связано с LLMs.txt. Когда мы работали в сфере AEO и GEO, появился LLMs.txt как предложенный стандарт, помогающий LLMs ориентироваться на веб-сайтах.
Джошуа: Да, это было начало.
Каэлан: Самое начало. И мы изучили все наши данные и обнаружили, что ChatGPT и Claude никогда не заглядывают в LLMs.txt. Они не запрашивают страницу и не читают ее. Поэтому сначала мы подумали: «Это не так уж важно». Главная причина заключалась в том, как ИИ-агенты (даже не ИИ-агенты, а чат-боты) взаимодействовали с вебом — через поиск. А когда вы запускаете поиск, даже если ваш LLMs.txt проиндексирован, он вряд ли появится в результатах поиска. И агенты просто не находили его.
Когда мы начали оценивать кодинг-агентов, мы обнаружили противоположное. Кодинг-агенты действительно переходили на сайт, просматривали и читали LLMs.txt, версии страниц в формате markdown — все эти предложенные стандарты активно потреблялись кодинг-агентами, просто не поисковыми инструментами.
Джошуа: Да, я тоже так думаю.
Каэлан: Черное SEO.
Джошуа: Да.
Каэлан: Да.
Каэлан: Потрясающе.












