newsmode MarketNews
arrow_back К списку
rss_feedLatent Space ·06.03.2026 open_in_newОригинал

Cursor's Third Era: Cloud Agents

auto_awesomeКраткое саммари

Это интервью Latent Space с Jonas и Samantha из Cursor про запуск облачных агентов — третью эру продукта после tab-автокомплита и локальных агентов. Облачный агент работает в собственной VM с полноценным desktop, сам тестирует свои изменения, записывает видео-демонстрации результата и даёт пользователю VNC-доступ для ручной проверки. Обсуждаются slash-команды (/no-test, /repro, /fix-bb, /council), интеграция с Datadog MCP, Marketplace для MCP/skills, режим grind для долгих задач и параллельный запуск best-of-N с разными моделями (Opus 4.5, Codex 5.3). Спикеры рассказывают, как Slack превращается в основную IDE для командной разработки, как Cursor отказался от файлового редактора и встроенного браузера в web UI ради подталкивания пользователей делегировать агентам, и почему ботлнек смещается с написания кода на ревью и доставку в прод. Прогноз: к концу года объём облачных агентов превысит локальные более чем в 2 раза, а ключевыми задачами остаются онбординг агентов в репо, память и self-awareness (понимание агентом собственного окружения и границ).

Третья эра Cursor: облачные агенты

Все спикеры объявлены на AIE EU, расписание скоро будет. Присоединяйтесь к нам там или в Miami с известными организаторами React Miami! Singapore CFP тоже открыт!


Мы уже несколько раз отмечали это в AINews, но в Долине сложился подавляющий консенсус: «IDE мертва». В ноябре это было лишь интуитивное ощущение, а теперь у нас есть данные: даже в каноничной компании-«форке VSCode» люди официально используют агентов больше, чем tab-автокомплит (первая волна AI-кодинга):

Cursor запустил облачных агентов уже несколько месяцев назад, и конкретно этот запуск посвящён Computer Use, который сильно продвинулся с тех пор, как мы впервые говорили об этом с Anthropic в 2024 году, и который Jonas продуктизировал под именем Autotab:

Новый Claude 3.5 Sonnet, Computer Use и создание SOTA-агентов — с Erik Schluntz, Anthropic

The new Claude 3.5 Sonnet, Computer Use, and Building SOTA Agents — with Erik Schluntz, Anthropic

Мы объявили первого спикера, друга шоу Dylan Patel, и набор тем для Latent Space LIVE! на NeurIPS. Регистрируйтесь на офлайн/трансляцию и приходите спорить!

Также мы пользуемся возможностью провести живую демонстрацию, поговорить о slash-командах и subagents, а также о будущем continual learning и персонализированных моделей для кодинга — то, над чем Sam ранее работал в New Computer. (Тот факт, что оба этих человека — топовые CEO собственных стартапов, которые теперь присоединились к безумной концентрации талантов в Cursor, тоже не стоит упускать из виду.)

Полный эпизод на YouTube!

Таймкоды

00:00 Эксперименты с агентным кодом 00:53 Почему облачные агенты важны 02:08 Первый столп: тестирование 03:36 Второй столп: видео-ревью 04:29 Третий столп: удалённое управление 06:17 Мета-демки и воспроизведение багов 13:36 Slash-команды и MCP 18:19 От tab к командной работе 31:41 Философия минимального веб-UI 32:40 Почему нет файлового редактора 34:38 Спор о full stack Cursor 36:34 Выбор модели и авто-роутинг 38:34 Параллельные агенты и Best-of-N 41:41 Subagents и управление контекстом 44:48 Grind-режим и будущее throughput 01:00:24 Онбординг облачного агента и память

Транскрипт

EP 77 — CURSOR — аудио-версия

[00:00:00]

Эксперименты с агентным кодом

Samantha: Это ещё один эксперимент, который мы запустили в прошлом году и тогда решили не релизить, но возможно вернёмся к LLM Judge — только этот тоже был агентным и мог писать код. То есть он не просто выбирал, но и брал выводы из двух или N моделей, на которые смотрел, и писал новый diff.

И что мы обнаружили — есть преимущества от использования моделей разных провайдеров в качестве базового уровня этого процесса. По сути, ты получаешь почти синергетический выход, который лучше, чем если бы у тебя был очень унифицированный нижний слой моделей.

Jonas: Мы считаем, что в ближайшие месяцы большой прорыв будет не в том, что один человек с моделью успевает больше — то есть вода течёт быстрее. Мы будем делать саму трубу гораздо шире, чтобы паралеллизировать больше: будь то рои агентов или параллельные агенты — и то и другое способствует тому, чтобы успевать гораздо больше за то же время.

Почему облачные агенты важны

swyx: На этой неделе один из крупнейших запусков, что Cursor когда-либо делал — это облачные агенты. У вас [00:01:00] облачные агенты уже были, но здесь ты по сути даёшь Cursor компьютер, верно? Да. То есть они по сути купили Autotab и просто переупаковали его. Так оно или…

Jonas: это большая часть.

Да. Облачные агенты уже работали в собственных компьютерах, но они скорее читали код. Да. И эти компьютеры не были подготовлены — это были, как правило, пустые VM, не настроенные под DevEx или под конкретный репозиторий, с которым работает агент. Одна из вещей, о которых мы говорим: если поставить себя на место модели — ты видишь поток токенов, и всё, что ты можешь сделать, это читать код и выдавать токены, надеясь, что ты сделал правильно,

swyx: ни единого шанса

Jonas: Я бы был так плох.

Очевидно же, что нужно запускать код. И мне кажется, это тоже не сильно контр-интуитивный тейк, но никто этого ещё не делал. И вот дать модели инструменты, чтобы она сама себя онбордила, а потом использовала полный computer use end-to-end — пиксели на входе, координаты на выходе — и облачный компьютер с разными приложениями внутри: это и есть тот большой прорыв, который мы внутри увидели в плане использования. Раньше мы использовали это для мелких правок копирайта [00:02:00] — а теперь нет.

Мы реально запускаем новые фичи через этот новый тип агентного воркфлоу. Окей, давайте посмотрим. Круто.

Тур по живой демке

Jonas: Вот как это выглядит на cursor.com/agents. Этого я запустил какое-то время назад. Слева — чат. Очень классическая агентная штука. Главное новое здесь — то, что агент будет тестировать свои изменения.

Видишь, он работал полчаса. Это потому, что он не только тратил время на написание токенов кода, но и тратил время на end-to-end тестирование. Он стартовал dev-серверы, итерировал когда нужно. И это одна часть — модель работает дольше и возвращается не с PR «я попробовал что-то», а с PR «я протестировал, готов к ревью».

Один из других intuition pump, которые мы используем: если бы человек дал тебе PR и попросил отревьюить, но сам не протестировал — ты бы тоже разозлился, потому что сказал бы: «Проси меня о ревью, только когда оно реально готово». Так мы и сделали с

Дефолты тестирования и контроль

swyx: простой вопрос, который я хотел задать сразу.

Некоторые PR гораздо меньше, [00:03:00] просто правка копирайта. Он всегда делает видео или иногда…

Jonas: Иногда.

swyx: Окей. А по какому критерию?

Jonas: Модель сама решает. У нас есть дефолтные подсказки про то, какие типы изменений тестировать. Есть slash-команда /no test, и если ты её используешь — модель не будет тестировать,

swyx: но по дефолту — тест.

Jonas: По дефолту — откалибровано. То есть мы говорим ей: не тестируй очень простые правки копирайта, но тестируй более сложное. И пользователи также могут писать свой agents.md и указывать: если ты редактируешь вот эту подсистему моего моно-репо, никогда не тестируй — потому что это всё равно не сработает, например.

Видео и удалённое управление

Jonas: Столп первый — модель реально тестирует. Столп второй — модель возвращается с видео того, что она сделала.

Мы обнаружили, что в этом новом мире, где агенты могут end-to-end писать гораздо больше кода, ревью кода — одно из новых бутылочных горлышек. И ревью видео — это не замена ревью кода, но это точка входа, с которой гораздо проще начать, чем смотреть [00:04:00] на какой-то гигантский diff.

Обычно ты запускаешь агента, он закончил, ты возвращаешься — и первое, что ты делаешь, это смотришь это видео. Вот, например, видео. В этом случае я хотел tooltip над кнопкой. И он пошёл и показал мне в этом видео, как это выглядит. Здесь, кажется, он реально использовал галерею.

Иногда он будет собирать storybook-подобные галереи, где можно увидеть этот компонент в действии. Это столп номер два — демо-видео того, что он построил. А столп номер три — у меня есть полный удалённый доступ к этой VM. Я могу зайти прямо сюда, наводить курсор, печатать — у меня полный контроль.

То же самое для терминала. Полный доступ. И это тоже очень полезно, потому что иногда видео — это всё, что нужно увидеть. А часто видео не идеально — оно покажет тебе: стоит ли это либо сразу мерджить, либо часто стоит ли с этим поитерировать, чтобы довести до финальной стадии, когда я готов мерджить.

Я могу пройтись по другим примерам, где первое видео [00:05:00] не было идеальным, но дало уверенность, что мы на правильном пути — а через два-три follow-up всё стало готово. А ещё у меня здесь полный доступ — некоторые вещи просто хочется потрогать. Хочется понять, что это такое — и нет замены живому превью.

VNC-доступ к удалённой VM это даёт.

swyx: Потрясающе. Что, прости, что такое VNC?

Jonas: Просто удалённый рабочий стол. Remote desktop. Ага.

swyx: Sam, есть какие-то ещё детали, которые ты всегда хочешь подсветить?

Samantha: Да, для меня видео были супер-полезными. Особенно в случаях, где для меня типичной проблемой с агентами и облачными агентами раньше была почти что недоспецификация моих запросов — наш plan mode и долгие переписки, чтобы получить детальный implementation spec, это способ снизить риск недоспецификации, но всё равно похоже, что как у человеческой коммуникации есть деградация со временем, у тебя есть риск: окей, когда я скачаю — на этапе скачивания и локального запуска этой ветки я увижу, что вот это должен был быть тоггл, а у тебя чекбокс, и почему ты не уловил эту деталь?

А когда видео есть сразу, [00:06:00] это просто создаёт согласование — ты говоришь об общем артефакте с агентом. Это очень понятно, и для меня это супер-полезно.

Jonas: Я могу быстро пробежаться по другим. Да. Примерам.

Мета-агенты и больше демок

Jonas: Вот этот очень фронтенд-тяжёлый. Один вопрос, который я

swyx: хотел задать — это только для фронт-

Jonas: энда?

Именно. Один вопрос, который мог возникнуть: это только для фронтенда? Вот ещё пример: я хотел, чтобы он реализовал более понятное сообщение об ошибке при сохранении секретов. Облачные агенты поддерживают добавление секретов — это часть того, что нужно для доступа к определённым системам. Часть онбординга — это выдача доступа.

Это cloud работает над

swyx: облачными агентами. Да.

Jonas: Это забавная штука

Samantha: Может получиться супер-мета. Это

Jonas: может стать супер-мета — он может запускать собственных облачных агентов, общаться с ними. Иногда сложно обхватить это умом. Мы отключили — это облачные агенты, запускающие новых облачных агентов. Так что пока запрещаем.

Когда-нибудь — возможно. Когда-нибудь — возможно. Когда-нибудь — возможно. Здесь, на самом деле, изменение было в основном на бэкенде в плане обработки ошибки, где если [00:07:00] секрет был слишком большой, то — о, это вообще-то очень круто. Вау. Это DevTools. Это DevTools. Так вот, если секрет слишком большой, мы…

Разрешаем секреты выше определённого размера. У нас есть лимит на размер. И сообщение об ошибке там было очень плохим — просто какое-то общее «failed to save». Я попросил: «Эй, нужно нормальное сообщение об ошибке». Первая крутая штука, которую он сделал: нулевые подсказки про то, как это тестировать. Вместо того чтобы напечатать символ A 5000 раз, чтобы упереться в лимит, он открывает DevTools, пишет JS, чтобы вставить во input 5000 символов A, потом нажимает Save, закрывает DevTools, жмёт Save и получает это новое сообщение об ошибке.

Видео, похоже, оборвалось, но здесь видно скриншот сообщения об ошибке. Это end-to-end frontend-backend фича, чтобы получить

swyx: да.

Jonas: И

swyx: И тебе просто нужна полная VM, полный компьютер, чтобы запускать всё.

Окей. Да.

Jonas: Да. У нас были версии этого. Это один из уроков Autotab, который мы начали в 2022. [00:08:00] Нет, в 2023. И в то время это был browser use, DOM — все эти разные штуки. И я думаю, мы в конце концов стали довольно AGI-пилленными в смысле «просто дай модели пиксели, дай ей коробку — мозг в коробке — это то, что тебе нужно, и нужно убрать ограничения вокруг контекста и возможностей так, чтобы бутылочным горлышком был интеллект».

А учитывая, насколько умны модели сегодня, это очень далёкое бутылочное горлышко. И вот выдача ей полной VM и онбординг с настроенным DevEx — как у человека — для нас внутри стала реально большим скачком в возможностях.

swyx: Да, я бы сказал — где-то год назад модели были даже недостаточно хороши, чтобы делать что-то из этого.

Так что

Samantha: даже полгода назад. Да.

swyx: Да, мне говорили, что примерно с выходом Sonnet 4 это стало достаточно хорошо, чтобы полностью автоматизировать по пикселям.

Jonas: Да, я думаю, это всегда вопрос — когда достаточно хорошо. В частности, с Opus 4.5, 4.6 и Codex 5.3 мы обнаружили, что это были дополнительные [00:09:00] скачки в способностях модели к автономности — просто

уйти, разобраться в деталях и вернуться, когда готово.

swyx: Хочу отметить пару деталей. Один — TanStack Router. Я его вижу. Да. Я большой фанат. Знаешь кого-нибудь, я должен назвать TanStack.

Jonas: Нет.

swyx: Просто случайная лора. Какой-то чувак Sue Tanner. И ещё одна штука — если переключиться обратно на видео.

Jonas: Да.

swyx: Хочу отметить эту штуку. Наверное, это сделала Sam. Не знаю

Jonas: главы.

swyx: Как это называется? Да, это называется Chapters. Да. Это что-то типа Vimeo. Не знаю. Но это так красиво, дизайн-детали — и очевидно, компания под названием Cursor должна иметь красивый курсор

Samantha: и это

swyx: и есть курсор.

Samantha: Cursor.

swyx: Видишь брендинг? Это курсор. Курсор, ага. Окей, круто. И потом я такой — пожаловался Evan: «Окей, но вы забрендили всё, кроме обоев». А он: «Нет, это обои Cursor». Я такой: «Что?»

Samantha: Да. Обои выбрал Rio, кажется. Да. Видео.

Это, наверное, Alexi, и да, ещё несколько из команды — с главами на видео. Matthew Frederico. Тут была большая командная работа. Это огромное усилие.

swyx: Я просто люблю дизайн-детали.

Samantha: Да.

swyx: А когда скачиваешь, добавляется маленький курсор. Типа TikTok-клип. [00:10:00] Да. Да.

Чтобы стало совсем очевидно, что это от Cursor,

Jonas: мы сделали TikTok-брендинг в конце. Это было в нашем launch-видео. Alexi показал облачного агента, который построил эту фичу. Что было забавно, потому что это был случай, когда одно из следствий наличия этих видео — мы используем best-of-N, когда запускаешь head-to-head разные модели на одном промте.

Мы используем это гораздо чаще, потому что одна из сложностей раньше была в том, что ты запускаешь четыре модели, и они возвращаются с какими-то гигантскими diff’ами — типа по 700 строк кода, помноженных на четыре. Что ты будешь делать? Будешь всё это ревьюить? Это ужас. Но если они возвращаются с четырьмя 20-секундными видео — окей, я посмотрю четыре 20-секундных видео.

И даже если ни одно не идеально, ты можешь понять — с каким из них хочется поитерировать, чтобы довести до финала. Да. И это реально очень весело.

Воркфлоу воспроизведения багов

Jonas: Вот ещё пример, который мы нашли очень классным — мы превратили его в slash-команду /[00:11:00]repro. Для багов в особенности: у модели есть полный доступ к собственной VM, она может сначала воспроизвести баг, снять видео с его воспроизведением, починить баг, снять видео с тем, что баг исправлен — делая тот же паттерн воркфлоу, только баг уже не воспроизводится.

И это та единственная категория, которая перешла от «такие баги очень тяжело воспроизвести, занимают тонны времени локально, даже если запускаешь облачного агента — ты не уверен, что он реально починил» — к «когда такое случается, ты замерджишь это за 90 секунд или около того».

Вот пример — давай посмотрим, это сломанный или исправленный, окей, это исправленный. Окей. У нас был баг на cursor.com/agents: если ты прикрепляешь изображения, потом удаляешь их и всё равно отправляешь промт — они всё равно прикреплялись к промту. Окей. Здесь видно — Cursor использует свой полный десктоп.

Это один из случаев, когда если делать просто [00:12:00] browser-use штуки — тебе придётся плохо. Потому что теперь ему нужно загружать файлы. Он просто использует нативный файловый viewer, чтобы это сделать. И видно, что он загружает файлы. Он собирается отправить промт, и потом откроет — это мета, это cursor agent промтит cursor agent внутри собственного окружения.

И видно — баг: пять изображений прикреплено, тогда как при отправке было только одно изображение.

swyx: Понятно. Да. Но это нужно включить, если хочешь использовать Cursor-агента внутри Cursor.

Jonas: Именно. И вот здесь это видео «после» — он делает то же самое. Прикрепляет изображения, удаляет часть, жмёт Send.

И видно — когда этот агент поднят, в attachments осталось только одно изображение. Да.

swyx: Красота.

Jonas: Окей. Лёгкий мердж.

swyx: Да. Когда он решает так сделать? Потому что это лишний шаг.

Jonas: Да. Я думаю, что пока не отлично откалибровал модель на то, когда воспроизводить.

Да. Иногда она делает это по собственной инициативе. Да. Мы были консервативны — стараемся, чтобы она делала это только когда [00:13:00] довольно уверена, потому что это добавляет время к работе. Но мы также добавили такие штуки, как /repro, где ты можешь просто написать «fix this bug /repro» — и она поймёт, что должна сначала сделать тебе видео того, как она реально находит и убеждается, что может воспроизвести баг.

swyx: Да. Один ML-сюжет, к которому это привязано — reward hacking. Ты пишешь тест, который должен пройти. Сначала пишешь тест, он показывает мне, что тест падает, потом доводишь тест до прохождения — это классический red-green.

Jonas: Угу.

swyx: Типа

Jonas: TDD.

swyx: штука.

Очень круто. Это была последняя демка? Есть

Jonas: Да.

Что-нибудь, что я упустил по демкам или моментам, которые, как ты думаешь?

Samantha: Думаю, это покрывает всё. Да.

swyx: Круто. Прежде чем мы прекратим расшаривать экран — можешь дать просто тур по slash-командам? Какие хорошие?

Samantha: Да, мы хотим повысить discoverability здесь.

Это, наверное, будет одна из будущих вещей, над которой будем работать. Да. Но точно есть много хорошего сейчас.

Jonas: У нас много внутренних, которые, кажется, не особо интересные. Вот внутренняя, которую сделал я. Не знаю, использует ли ещё кто-то в Cursor — Fix BB.

Samantha: Я никогда не слышала.

Jonas: Ага. [00:14:00]

Fix Bug Bot. Это штука, которую мы хотим интегрировать плотнее. Так что ты сделал её для

swyx: себя.

Jonas: Я сделал это для себя. Это доступно всем в команде, но никто о ней не знает. Но да, будут комменты Bug Bot, и у Bug Bot много крутых штук. Мы недавно запустили Bug Bot Auto Fix — можно кликнуть кнопку или поменять настройку, и он автоматически чинит свои находки, и это отлично работает в куче случаев.

Есть случаи, когда контекст оригинального агента, создавшего PR, реально полезен для починки бага — потому что может оказаться, что баг — это регрессия, и на самом деле ты хотел сделать что-то скорее так. И вот наличие исходного промта и всего контекста агента, который работал над этим — и здесь я мог просто написать /fix… раньше мы могли писать /fixbb, и он это делал.

/no test — ещё одна. /repro здесь — мы её упоминали.

Samantha: Одна из моих любимых — cloud agent diagnosis. Эта использует Datadog MCP по полной. Окей. И я думаю, [00:15:00] Nick и David из нашей команды её написали. И по сути, если есть проблема с облачным агентом — мы поднимаем кучу sub-…

Одного

swyx: экземпляра.

Samantha: Да. Берём идеи и аргументы, поднимаем кучу subagents, которые через Datadog MCP исследуют логи и находят все проблемы, что могли случиться. Это сокращает время отладки — потенциально, через Datadog UI ты можешь делать быстрые вещи быстро, но это сокращает до одного вызова агента, вместо того чтобы самому копаться в логах.

Jonas: Тебе стоит ещё рассказать про то, что мы делали с транскриптами.

Samantha: Да. По сути, мы внутри сделали такие штуки — будут публичные версии скоро, где ты можешь поднять агента и дать ему доступ к транскрипту другого агента, чтобы либо отладить произошедшее.

Действовать как внешний дебаггер. Понятно. Или продолжить разговор — почти как fork.

swyx: Транскрипт включает всю chain of thought за 11 минут здесь, 45 минут там.

Samantha: Да. Именно. По сути, действуя как вторичный агент, отлаживающий первого. Мы начали выкатывать это и

swyx: они все — один и тот же [00:16:00] код.

Это просто разные промты, но сам код тот же.

Samantha: Да. По сути та же инфра облачного агента и тот же harness. И когда мы делаем такие вещи как включение — есть дополнительная инфраструктура, которая пробрасывает внешний транскрипт, если мы прикладываем его как attachment. Но для таких штук, как cloud agent diagnosis, в основном используется Datadog MCP. Мы также запустили MCPs вместе с launch-ом cloud agent — поддержку cloud agent MCPs.

swyx: О, это было упущено.

Jonas: Мы будем делать большой маркетинговый момент по этому на следующей неделе, но да, теперь можно использовать MCPs и

swyx: люди тоже это послушают.

Да,

Jonas: они

Samantha: будут на третий день впереди. Будут впереди. И я… я на самом деле не знаю, доступен ли Datadog MCP публично. Понимаю, что не уверена — я её бета-тестирую, но это одна из моих любимых.

swyx: Я думаю, эта интересная для Datadog. Потому что Datadog хочет владеть этим сегментом.

Интересно с Bits. Не знаю, пробовала ли ты Bits.

Samantha: Не пробовала Bits.

swyx: Да.

Jonas: Это их продукт cloud agent.

swyx: Да. Да. Они хотят быть тем — мы владеем твоими логами и даём… частью [00:17:00] self-healing software, который все хотят. Да. Но очевидно, у Cursor сильное мнение по поводу coding agents, и ты — у тебя — забираешь это себе. Что очевидно, ты будешь делать, и не каждая компания — это Cursor, но интересно — если ты Datadog, что ты делаешь здесь?

Раскрываешь свои логи через MCP и даёшь другим работать с ними? Или пытаешься владеть этим, потому что это дополнительный бизнес? Да. Интересный вопрос.

Samantha: Хороший вопрос. Всё, что я знаю — я обожаю Datadog MCP,

Jonas: И да, не сюрприз, что люди будут это требовать, верно?

Samantha: Да.

swyx: Это, это как любая

система

swyx: system-of-record компания — это вопрос «сколько отдавать?». Круто. Думаю, это всё по туру по cloud agents. Круто. Просто поговорим — cloud agents были… когда Kristen впервые полюбила cloud agents? Знаешь, в июне

Jonas: в прошлом году.

swyx: В июне прошлого года. То есть это медленно разворачивалось — то, что вы делали, типа Michael сделал пост, где сам показал этот график — агенты обгоняют tab. И я такой: вау, это же крупнейший переход в коде.

Jonas: Да.

swyx: За [00:18:00] последний

Jonas: да. Я думаю, это получило огласку.

Да. Я думаю, это очень интересный…

swyx: не очень. Я думаю, это подсветил наш друг Andrej Karpathy сегодня.

Jonas: Окей.

swyx: Расскажи подробнее. Что это значит? Да. Мне только что дали клавишу Cursor Tab.

Jonas: Да. Да.

swyx: Это

Samantha: круто.

swyx: Знаю, но её скоро поставят в музей.

Jonas: Так и есть.

Samantha: Должна сказать, я сама уже мало использую tab.

Jonas: Да. Я думаю, то, как выглядит написание кода с AI — создание софта в общем, даже если хочется уйти на более высокий уровень — меняется очень быстро. Не горячий тейк, но я думаю, что с нашего ракурса в Cursor одна из вещей, которая, наверное, недооценивается извне, — это то, что мы очень самосознательно относимся к этому факту. Cursor стартовал в фазе один, эре tab и автокомплита.

И это было реально полезно в своё время. Но многие начинают смотреть на текстовые файлы и редактировать код — мы называем это hand coding теперь, когда ты реально печатаешь буквы, это

swyx: о, это мило.

Jonas: Ага.

swyx: О, это мило.

Jonas: Ты такой бумер. Такой бумер. [00:19:00] И это, я думаю, было медленно ускоряющимся, а в последние месяцы — стремительно ускоряющимся сдвигом.

И мы думаем, что то же самое случится со следующей вещью, где — я думаю, некоторые боли вокруг tab: он классный, но я просто хочу отдать больше агенту, и я не хочу делать по одному tab за раз. Я хочу просто дать ему задачу — и он уйдёт и сделает более крупный кусок работы, а я могу

откинуться чуть назад и оперировать на более высоком уровне абстракции. Это случится снова — от агентов, возвращающих тебе diff’ы, где ты в полях и даёшь им 30-секундные — 3-минутные задачи, до того, что ты даёшь им 3-минутные — 30-минутные — 3-часовые задачи и получаешь обратно видео и пробуешь превью, а не сразу смотришь на diff каждый раз.

swyx: Да. Что-нибудь добавишь?

Samantha: Один другой сдвиг, который я заметила, когда наши облачные агенты внутри по-настоящему взлетели — это сдвиг от преимущественно индивидуальной разработки к почти коллаборативной природе разработки. Для нас Slack — это почти что среда разработки [00:20:00].

Так что я

swyx: возможно, даже не строить кастомный UI — может, это штука для отладки, но на самом деле это так и есть.

Samantha: Я чувствую, да, тут ещё много можно исследовать, но по сути для нас Slack — это место, где происходит много разработки. У нас есть issue-каналы или каналы обсуждения продукта, где люди постоянно @cursing — и это запускает облачного агента.

И для нас, по крайней мере, у нас включены team follow-ups. То есть если Jonas запустил Cursor в треде, я могу ответить и добавить контекста. И это превращается почти в discussion-сервис, где люди могут коллаборировать в UI. Часто я запускаю расследование, а потом иногда даже прошу его сделать git blame и тегнуть людей, которых стоит привлечь. Потому что он может тегать людей в Slack, и потом другие люди приходят

swyx: может тегать других людей, которые не вовлечены в разговор? Да. Может просто @Jonas, скажем, если был…

Samantha: Да.

swyx: Круто. Вам ребят стоит сделать из этого большое событие.

Samantha: Знаю. Я чувствую, что с нашей Slack-поверхностью ещё много чего можно показать внешне. Но да, по сути, [00:21:00] он может привлекать других людей, и потом эти люди тоже могут вносить вклад в тред, и в итоге ты получаешь PR с видимыми артефактами, и люди могут сказать: «Окей, круто, мерджим».

То есть для нас IDE как бы переезжает в Slack в некотором смысле.

swyx: У меня такой же опыт, но это не разработчики, это я.

Samantha: Да.

swyx: Дизайнер, sales-люди.

Samantha: Да.

swyx: Я по техническому маркетингу, видению, дизайнер по дизайну, sales-люди — вот легальный источник того, о чём договорились.

И они все просто коллаборируют и поправляют агентов. Верно.

Jonas: Я думаю, мы поняли, что когда есть эти треды — та работа, которая остаётся людям и которую они обсуждают в этих тредах — это и есть тот самородок интересного и релевантного. Это не скучные детали типа «где должен стоять этот if». Это «хотим ли мы это вообще релизить? Это правильный UX? Это правильный форм-фактор?»

Да. «Как сделать это более очевидным для пользователя?». Вот эти реально интересные, более высокого порядка вопросы, по которым очень легко коллаборировать — и оставить имплементацию облачному агенту.

Samantha: Полностью. И больше нет обсуждений: «Я буду это делать? Ты будешь это делать? [00:22:00] Cursor это делает». Тебе просто нужно решить, нравится ли тебе.

swyx: Иногда, не знаю, есть ли — вы, ребят, наверное, уже сообразили — но поскольку я… нужна кнопка mute. Типа «cursor, мы возьмём это оффлайн, но всё ещё онлайн, нам надо поговорить среди людей сначала, прежде чем ты можешь… ты можешь перестать отвечать на всё».

Jonas: Ага. Это дизайн-решение — сейчас Cursor не будет встревать, пока ты явно не упомянешь его. Да. Да.

Samantha: То есть он не всегда слушает. Да.

Jonas: Я могу видеть все промежуточные сообщения.

swyx: Вы делали рекурсивное — Cursor может добавить другого Cursor или заспаунить другого Cursor?

Samantha: О,

Jonas: у нас были версии этого.

swyx: Потому что — потому что он может добавлять людей.

Jonas: Да. Одна из других вещей, над которыми мы работали, — следствие того, что генерировать код стало так легко, — это то, что довезти его до прода всё ещё сложнее, чем должно быть.

И в целом — ты решаешь одно бутылочное горлышко, а появляются три новых. Да. Одно из новых — это попадание в прод, и у нас есть внутренняя шутка: ты обсуждаешь какую-то фичу, и кто-то говорит: «У меня уже PR на это». Это так легко — добраться до «у меня PR на это», [00:23:00] но всё ещё относительно сложно дойти от «у меня PR на это» до «я уверен и готов это мерджить».

И я думаю, что в ближайшие недели и месяцы это то, о чём мы много думаем — как масштабировать compute в этом пайплайне доставки от первого черновика, который сделал агент.

swyx: Это разве не то, для чего merge — типа графит, как…

Jonas: графит — большая часть этого. Cloud agent testing

swyx: это полностью интегрировано, или это всё ещё разные компании

Jonas: работают над — мы расскажем больше в будущем, но цель — иметь отличный end-to-end опыт, где Cursor не просто помогает тебе генерировать токены кода, он помогает тебе создавать софт end-to-end.

И ревью — большая часть этого, и в особенности по мере того, как модели стали гораздо лучше писать код, генерировать код, мы почувствовали, что это относительно вылезает чаще.

swyx: Извини, это совершенно незапланированное — есть люди, которые спорят: одна сторона — нужен AI для ревью AI, и есть другой подход, школа мысли, где: нет, [00:24:00] ревью мертво.

Типа просто покажи мне видео.

Samantha: Да. Я снова чувствую, для меня видео — это часто согласование, и я всё равно часто хочу пройти через процесс ревью кода.

swyx: Типа всё равно смотреть на файлы и

Samantha: всё. Да. Тут есть спектр, конечно. Если видео реально хорошо сделано и реально полностью всё тестирует, можно чувствовать себя достаточно уверенно, но всё равно полезно посмотреть код.

Я много внимания уделяю Bug Bot. Bug Bot стал реально широко адоптирован внутри. Мы часто говорим людям: не оставляйте комменты Bug Bot без ответа. Потому что у нас высокая уверенность в нём. Поэтому люди всегда отвечают на комменты Bug Bot.

Jonas: Стоит два раза в жизни замерджить что-то, потом вернуться позже — а там баг, который ты замерджил, и ты возвращаешься позже и такой: «Эх, Bug Bot же нашёл это, надо было послушать Bug Bot».

Стоит этому случиться два-три раза — ты учишься ждать Bug Bot.

Samantha: Да. Я думаю, для нас есть это code-level review, где смотрят на сам код, и feature-level review, где смотрят на фичи. Есть целый ряд разных областей.

Со временем будут такие вещи, как performance-level review, security [00:25:00] review — где это более разные аспекты того, как фича может повлиять на ваш кодбейс, для которых вы потенциально захотите использовать агента.

Jonas: И некоторые из них, как Bug Bot, будут синхронными, и ты обычно захочешь его дождаться перед мерджем.

Но я думаю, ещё одна штука, которую мы начинаем видеть, — с облачными агентами ты масштабируешь параллелизм и объём генерируемого кода. Стартапы из 10 человек начинают нуждаться в DevEx и пайплайнах, которые раньше нужны были компании из 10 000 человек. И это выглядит как многие вещи, которые компании из 10 000 человек изобрели, чтобы безопасно довозить такой объём софта в прод.

То есть вещи как «релизься часто», или «релизься медленно», «имей разные стадии релиза», «имей чекпоинты», «автоматизированные способы детекции регрессий». Я думаю, нам понадобятся stacked diffs, merge queues. Именно. Многие из этих вещей будут важны

swyx: вперёд.

Я думаю, большинство людей до сих пор не знают, что такое stacks. У меня много друзей в Facebook, и я… я довольно дружу с Graphite. Я просто… [00:26:00] никогда мне это не было нужно, потому что я не работаю в такой большой команде, и это просто демократизация — нет, вот то, что мы уже решили на очень большом масштабе, и вот как это полезно тебе тоже.

Для меня одна из прекрасных вещей в GitHub — то, что он реально полезен мне как индивидуальному соло-разработчику, хотя это collaboration software.

Jonas: Угу.

swyx: И я не думаю, что много DevEx-инструментов это поняли. Этот переход с большого на маленькое.

Jonas: Да. Cursor — это, наверное, обратная история.

swyx: Это малое — на

Jonas: Да. Где исторически Cursor, часть того, почему мы росли так быстро, — это что кто угодно в команде мог его подхватить, и фактически люди подхватывали его на выходных для side-проектов, и потом приносили на работу. Потому что им так нравилось его использовать.

swyx: Да.

Jonas: И я думаю, вещь, над которой мы начали работать больше — не мы конкретно, но как компания и другие в Cursor — это делать его реально классным для команд и делать так, чтобы 10-й человек, начавший использовать Cursor в команде, сразу был настроен. Мы недавно запустили Marketplace, чтобы другие могли [00:27:00] конфигурировать MCPs и skills (плагины).

То есть skills и MCPs другие люди могут сконфигурировать, чтобы мой Cursor был готов и настроен. Sam обожает Datadog MCP и Slack MCP — ты тоже много её использовала, но

Samantha: тоже пре-релиз, но я чувствую, что она настолько хороша.

Jonas: Да, мой Cursor должен быть сконфигурирован — если Sam так считает, это просто потрясающе и необходимо.

swyx: Это автоматически шерится, или нужно зайти и…

Jonas: Зависит от MCP. Некоторые, очевидно, на пользователя. Да. Sam не может включить Slack MCP моего Cursor, но некоторые — team-level, и они могут быть настроены админами.

swyx: Да. Да. Это круто. Да, у нас был человек в подкасте, когда Cursor было пять людей, и все были такие: «Окей, что фишка?»

И обычно это что-то — teams, орг и enterprise, но это реально работает. Но обычно на этой стадии, когда вас пятеро, когда вы просто форк VS Code — это «как вы туда дойдёте?». Да. «Будут ли люди за это платить?». Люди платят.

Jonas: Да. И я думаю, для облачных агентов мы ожидаем [00:28:00]

что будут похожие PLG-штуки, где, я думаю, с самого начала мы видели много адопции с меньшими командами, где кодбейзы не такие сложные в настройке. Да. Если тебе нужен какой-то безумный docker layer caching, чтобы билды не занимали два часа — нам понадобится чуть больше времени, чтобы такую инфраструктуру поддержать.

Тогда как если у тебя front-end backend — one-click агенты могут установить всё, что им нужно.

swyx: Это хороший повод задать тебе пару технических вопросов чек-боксного типа. Могу ли я выбрать размер VM?

Jonas: Пока нет. Планируем добавить.

swyx: Очевидно, хочется L, XXL, что угодно — типа как Amazon с этим меню.

Jonas: Да, именно. Добавим.

swyx: Да. В каком-то смысле вам надо стать чем-то вроде EC2 — почти как «арендуешь ящик».

Jonas: Арендуешь ящик. Да. Мы много говорим про «мозг в коробке». Да. И Cursor мы хотим, чтобы был «мозгом в коробке»,

swyx: но ментальная модель другая? Больше serverless?

Больше persistent? Что-то ещё?

Samantha: Мы хотим, чтобы было немного persistent. Десктоп должен быть [00:29:00] чем-то, к чему можно вернуться даже через несколько дней. Возможно, ты возвращаешься, они всё ещё думают над фичей какое-то время.

swyx: То есть полная приостановка памяти и возвращение, а потом продолжение.

Samantha: Именно.

swyx: Это интересно, потому что то, что я хочу — от Manus, Open Crawl, whatever — я хочу иметь возможность залогиниться со своими credentials в эту штуку, но не хранить их в каком-то секрет-сторе или ещё где. Потому что это, типа, моё самое чувствительное.

Да. Это типа моя почта, что угодно. И просто пусть это persist в образе. Не знаю, как это под капотом — типа re-hydrate и продолжать. Но я не думаю, что много infra работает таким образом. Много её stateless, где сохраняешь в Docker-образ, и всё — только то, что можешь описать в Dockerfile.

Это единственная штука, которую можно склонировать много раз параллельно.

Jonas: Да. У нас есть куча разных способов их настройки. Есть Dockerfile-based подход. Главный дефолтный способ — это, на самом деле, снапшоттинг

swyx: типа Linux VM

Jonas: как VM, да. Запускаешь кучу install-команд, и потом снапшотишь по сути файловую систему.

И это настраивает тебя на всё [00:30:00], что нужно, чтобы поднять новую VM из этого шаблона.

swyx: Да.

Jonas: И это немного отличается от того, о чём говорила Sam — про hibernating и re-hydrating, где это полный снапшот памяти. Там, если у меня был открыт браузер на конкретной странице, и мы возвращаем это назад — эта страница всё ещё там.

swyx: Было ли внутри обсуждение того, что каждый раз, когда ты снимаешь видео, ты показываешь немного десктопа и браузер, и это не нужно, если ты показываешь только браузер. Если ты, ну, ты знаешь, демонстрируешь front-end приложение.

Почему не просто показать браузер? Типа,

Samantha: у нас есть panning и зум. Да. Он может решать, когда записывает и режет видео, чтобы подсветить разные вещи. Я думаю, мы пробовали разные способы сегментации, и да, там было несколько ревизий.

Jonas: Да. Я думаю, одна из интересных штук — версия, которую ты сейчас видишь на cursor.com — это половина того, что у нас было на пике, мы решили unship довольно много штук. Две интересные. Одна напрямую отвечает на твой [00:31:00] вопрос: у нас был нативный браузер, который ты имел локально — это был, по сути, iframe, который через port-forwarding мог грузить URL, мог общаться с localhost в VM.

То есть это даёт тебе… ну, в

swyx: браузере твоего компьютера

типа

Jonas: в твоём локальном браузере. Да. Идёшь на localhost:4000, и это перенаправляется на localhost:4000 в VM через port-forward. Мы это un-ship’нули

swyx: как ngrok.

Jonas: Как ngrok. Именно. Мы это un-ship’нули, потому что почувствовали, что remote desktop достаточно low-latency и более general-purpose.

Поэтому мы строим Cursor Web, но также строим Cursor Desktop. И реально полезно иметь весь спектр. И даже для Cursor Web, как вы видели в одном из примеров, агент загружал файлы — а я не мог бы загрузить файлы и открыть file viewer, если бы у меня был доступ только к браузеру.

И мы много думали — это может показаться смешным от Cursor, который начинал как VS Code Fork и унаследовал кучу классных вещей, но также кучу [00:32:00] legacy UI от VS Code.

Минимальные поверхности веб-UI

Jonas: И вот с web UI мы хотели быть очень целенаправленными — держать его минимальным и выставлять правильный набор примитивных app-поверхностей, как мы их называем, которые являются общими фичами того облачного

окружения, которое использует и ты, и агент. Агент использует desktop и контролирует его. Я могу использовать desktop и контролировать. Агент запускает terminal-команды. Я могу запускать terminal-команды. Вот наша философия. Другая штука, о которой, может быть, интересно поговорить — что мы un-ship’нули, и обе эти штуки мы можем вернуть и решить в какой-то момент в будущем, что мы изменили мнение про trade-offs или довели до такого уровня… выкатить

swyx: это.

Пусть пользователи скажут, что им это нужно. Именно. Окей, хорошо.

Почему нет файлового редактора

Jonas: Так вот, одна из других штук — это files-приложение. У нас была в какой-то момент во время внутреннего тестирования возможность видеть рядом — у меня были desktop и terminal справа в табах ранее — также files-app, где можно было видеть и редактировать файлы.

И мы реально почувствовали, что в каком-то смысле, [00:33:00] ограничивая то, что можно сделать там, люди будут естественно больше оставлять агенту и попадать в этот новый паттерн делегирования, что мы посчитали очень ценным. И сейчас в Cursor Web нет способа редактировать эти файлы.

swyx: Да. Кроме как открыть PR, зайти в GitHub и сделать там.

Jonas: Да.

swyx: Что раздражает.

Jonas: Просто скажи агенту,

swyx: Я критиковал OpenAI за это. Потому что приложение Codex от OpenAI не имеет file editor — есть file viewer, но нет file editor.

Jonas: А ты много используешь file viewer?

swyx: Нет. Я понимаю, но иногда я хочу. Единственный способ — это чёрт возьми идти в… нет, у них есть кнопка «open in Cursor», или «open in Antigravity», или «open in whatever», и люди указывали на это.

Я был частью группы ранних тестеров. Люди указывали на это, и они говорили: это design smell. Тебе на самом деле нужен VS Code Fork, у которого есть все эти штуки, но ещё и file editor. А они: «Нет, просто доверьтесь нам».

Jonas: Да. Я думаю, мы как Cursor хотим как продукт предлагать [00:34:00] весь спектр, и поэтому ты хочешь иметь возможность

работать на реально высоких уровнях абстракции и кликнуть и увидеть самый низкий уровень. Это важно. Но я также думаю, что ты не будешь это делать в Slack. И поэтому есть поверхности и способы взаимодействия, где в некоторых случаях ограничение UX-возможностей создаёт более чистый опыт, более простой, и подталкивает людей в эти новые паттерны, где даже локально — мы шутили об этом — люди реально не редактируют файлы, не пишут код руками.

И мы хотим строить туда, куда это идёт, а не туда, где это было

swyx: много крутого. И окей. У меня ещё пара.

Спор о full-stack хостинге

swyx: Так что — наблюдения по дизайну этих штук. Одна из вещей, о которых я всегда думаю — Cursor и другие peers Cursor начинают с DevEx-инструментов и движутся к облачным агентам.

Другие люди, типа Lovable и Bolt этого мира, начинают с «вот vibe code — full cloud thing». Они уже были cloud agents до того, как кто-то другой стал cloud agents, и мы дадим тебе полную deploy-платформу. То есть мы владеем всем циклом. Мы владеем всей инфрой, у нас есть логи, у нас есть живой сайт, [00:35:00] что угодно.

И ты можешь крутить этот цикл. Cursor не владеет этим циклом даже сегодня. У тебя нет Vercel, у тебя нет — нет своей deploy-инфры. Это даёт тебе силы, потому что любой может это использовать, и любой enterprise — какую бы у тебя ни была infra, мне всё равно. Но также даёт ограничения — насколько вы можете реально полностью отладить end-to-end.

Я просто это выкладываю — есть ли будущее, где будет full-stack Cursor, типа cursorapps.com, где я хостю свой Cursor-сайт, что по сути клон Vercel? Не знаю.

Jonas: Я думаю, это интересный вопрос для постановки, и логика, которую ты выложил, как ты бы туда пришёл — это логика, с которой я в большой степени согласен.

swyx: Да. Да.

Jonas: Я думаю, прямо сейчас мы реально сфокусированы на том, что мы видим как следующее большое бутылочное горлышко, и поскольку существуют такие вещи, как Datadog MCP, я не думаю, что лучший способ помочь нашим клиентам выкатывать больше софта — это построить hosting solution прямо сейчас.

swyx: Кстати, это вещи, которые я обсуждал с некоторыми из компаний, которые я только что назвал.

Jonas: Да, конечно. Прямо сейчас большое бутылочное горлышко — это вывести код туда, и [00:36:00] в отличие от Lovable и Bolt, мы фокусируемся гораздо больше на существующем софте. И zero-to-one greenfield — это совсем другая проблема. Представь, как пойдёшь к Shopify и будешь убеждать их деплоить на твоём deployment solution.

Это очень другое и, я думаю, гораздо дольше будет видно, как это работает. Может никогда не случиться — относительно «о, это zero-to-one app».

swyx: Скажу — это соблазнительно, потому что слушай, типа 50% твоих приложений — это Vercel, Supabase, Tailwind, React. Это стек. Это то, что все делают.

Так что — это типа интересно.

Jonas: Да.

Выбор модели и авто-роутинг

swyx: Другая штука — выбор модели. Прямо сейчас в облачных агентах он засунут вниз слева. Конечно, сегодня это Codex High, но мне важно, если он внезапно переключится на Opus? Наверное, нет.

Samantha: Мы точно хотим давать людям выбор по моделям, потому что мета меняется очень часто.

Я была большой Opus 4.5 максималисткой, а когда вышел Codex 5.3, я резко переключилась. Так что теперь использую только его.

swyx: Да. Согласен. Не знаю, но в основном — когда я использую его в Slack, [00:37:00] Cursor очень хорошо это показывает. Да, Cursor. Если люди пойдут использовать, вот модель, которую мы используем.

Да. Вот как переключиться, если хочешь. Но иначе это типа абстрагировано — что красиво, потому что тогда реально, ты должен сам решать.

Jonas: Да, я думаю, мы хотим делать больше с дефолтами.

swyx: Да.

Jonas: Где мы можем предлагать людям. У нас есть в редакторе, в desktop-приложении, Auto, который роутит твой запрос и делает там разные вещи.

Думаю, мы захотим сделать что-то похожее и для облачных агентов. Пока не сделали. И поэтому у нас есть люди как Sam, которые очень подкованные и хотят точно знать, какую модель хотят, и также есть люди, которые хотят, чтобы мы выбрали лучшую модель для них — потому что у нас есть удивительные люди как Sam, и мы — мы эксперты.

Да. У нас есть и трафик, и внутренний вкус, и опыт, чтобы знать, что мы считаем лучшим.

swyx: Да. У меня есть текущий тейк — agent lab vs model lab. И для меня Cursor и другие компании — это пример agent lab, который строит новый playbook, отличный от model lab, где это очень GPU-тяжёлое.

У вас, очевидно, есть research-команда [00:38:00]. И моя теза: каждый agent lab будет иметь router, потому что тебя будут спрашивать — какой… я не успеваю каждый день. Я не Sam, я не успеваю каждый день. Если использовать тебя как arbiter вкуса — поставь меня на Cursor Auto.

Это бесплатно? Не бесплатно.

Jonas: Auto не бесплатно, но есть разные тарифные планы. Да.

swyx: Поставь меня на Cursor, решай за меня на основе всех других людей, которых ты знаешь лучше, чем меня. И я думаю, каждый agent lab должен по сути в итоге это делать, потому что это реально даёт тебе экстра-силу — люди перестают иметь лояльность к одному лабу.

Jonas: Да.

Best-of-N и model councils

Jonas: Две другие, может быть, интересные штуки, не знаю, насколько они у тебя на радаре. Одна — best-of-N штука, которую мы упоминали — запуск разных моделей head-to-head на самом деле довольно интересен, потому что

swyx: которая существует в Cursor.

Jonas: Это существует и в Cursor IDE, и в Web. Так что проблема — где их запускать?

swyx: Окей.

Jonas: И я могу расшарить экран, если интересно. Да-интересно.

swyx: Да. Да. Очевидно, parallel agents очень популярны.

Jonas: Да, именно. Parallel agents.

swyx: в твоём ментальном восприятии — это одно и то же? Best-of-N и parallel agents? Не хочу за тебя слова вставлять [00:39:00].

Jonas: Best-of-N — это подмножество parallel agents, где они работают на одном промте.

Это был бы мой ответ. Вот как это выглядит. Здесь в этом дропдауне я могу просто выбрать несколько моделей.

swyx: Да.

Jonas: И теперь, если я делаю промт — я сделаю что-то глупое — я запускаю эти пять моделей.

swyx: Окей. Это фейк-клон, конечно. 2.0, да.

Jonas: Да, именно. Но они запускаются — так что Cursor 2.0, ты можешь делать desktop или cloud.

Это cloud конкретно, где преимущество над worktrees в том, что у них собственные VM, они могут запускать команды и не будут пытаться убить порты, на которых работает другой. Это некоторые из болей. Это все

swyx: называются worktrees?

Jonas: Нет, это всё облачные агенты со своими VM.

swyx: Окей. Но

Jonas: когда делаешь это локально, иногда люди делают worktrees, и это был основной способ, которым люди до сих пор настраивали parallel.

Должен сказать.

swyx: Это так запутывает людей.

Jonas: Да.

swyx: Никто не знает, что такое worktrees.

Jonas: Именно. Я думаю, мы фазим worktrees.

swyx: Реально?

Jonas: Да.

swyx: Окей.

Samantha: Но да. И ещё одна вещь, которую я бы сказала по поводу мультимодельного выбора — [00:40:00] это ещё один эксперимент, который мы запустили в прошлом году и решили на тот момент не релизить, но можем вернуться. И там было интересное обучение, релевантное для разных провайдеров моделей. Это была штука, которая запускала кучу best-of-N, а потом синтезировала и по сути запускала слой моделей-синтезаторов. И это были другие агенты, которые брали LLM Judge, но этот тоже был агентным и мог писать код. Так что он не просто выбирал, но и брал выводы из двух или N моделей, на которые смотрел, и писал новый diff.

И что мы обнаружили: на тот момент по крайней мере были преимущества от использования моделей разных провайдеров в качестве базового уровня этого процесса. Типа, по сути, можно было получить почти синергетический выход, лучший, чем при унифицированном [00:41:00] нижнем тире моделей. Это было реально интересно — потому что даже в будущем, когда у тебя одна модель впереди других на какое-то время, может быть выгода от того, что несколько top-tier моделей вовлечены в model swarm или agent swarm — что у них у каждой свои сильные и слабые стороны.

Да.

Jonas: Andrej называл это «совет», да?

Samantha: Да, именно. У нас есть другая внутренняя команда, которую Ian написал — /council. О, и они… да.

swyx: Да. Эта идея в разных формах везде. И для меня — для меня продуктизация, которую вы сделали, да, очень гибкая, но.

Если бы я добавил ещё одно — да, твоё, это было бы слишком много. Я имею в виду, скажем,

Samantha: В идеале — это что-то, что пользователь может просто выбрать, и всё происходит под капотом так, что ты просто получаешь выгоду от этого процесса в конце и лучший вывод, по сути, не теряясь в сложности промежуточного судейства.

Jonas: Окей.

Subagents для контекста

Jonas: Ещё одна штука про многих агентов, про разных parallel-агентов, которая интересна — это идея, которая существует уже какое-то время и недавно начала работать — subagents. И это другой способ заставить агентов разных промтов, разных целей и разных моделей, [00:42:00] разных vintages работать вместе.

Коллаборировать и делегировать.

swyx: Да. Я очень — одна из моих, я всегда ищу — «это год того-то», верно? Да. Я думаю, одно из «того-то» — это subagents. Я думаю, это «то», но я не использовал их в Cursor. Они полностью сформированы или как? Честно говоря, нужен intro. Я каждый раз формирую их заново?

У меня фиксированные subagents? Чем они отличаются от slash-команд? Есть все эти реально базовые вопросы, на которые никто не останавливается ответить, потому что все слишком заняты лонч-ами. Нам нужно

Samantha: честно, ты можешь — можно увидеть их в Cursor сейчас, если просто сказать «подними 50 subagents, чтобы…» Cursor определяет

swyx: что такое subagents.

Да.

Samantha: Да. По сути, я не должна говорить за всю subagents команду — это другая команда, которая над этим работала, но наш тезис или то, что мы видели внутри — они отличные для управления контекстом для долгих тредов или если ты просто пытаешься бросить больше compute на что-то.

Мы сильно использовали почти что generic task interface, где главный агент может определить, [00:43:00] что входит в subagent. Так что если я говорю «исследуй мой кодбейс», он может решить поднять один explore-subagent или может решить поднять пять explore-subagents.

swyx: Но я не выбираю, какие это subagents, да? Всё определяется моделью.

Samantha: Я думаю — мне надо освежить себя по subagent-интерфейсу.

Jonas: Есть встроенные — explore-subagent встроен бесплатно. Но ты также можешь инструктировать модель использовать другие subagents, и она это сделает. Ещё один пример встроенного subagent — я только что запустил один в Cursor, могу показать, как это выглядит.

swyx: Да. Потому что я пытался это сделать в чистом prompt-пространстве.

Jonas: Это desktop-приложение? Да. Да. И это

swyx: и всё, что нужно сделать, да? Да.

Jonas: Это всё, что нужно сделать. Так что я сказал «используй subagent, чтобы исследовать», и я думаю — да, я даже могу кликнуть и посмотреть, над чем работает subagent. Он запустил какую-то find-команду, и это Composer под капотом.

Хотя моя основная модель — Opus, он делает smart-роутинг — в этом случае explore требует читать тонны вещей. И поэтому более быстрая модель реально полезна, чтобы получить [00:44:00] ответ быстро. Вот как выглядят subagents. И мы хотим много сделать, чтобы выставить хуки и способы для людей конфигурировать.

Другой пример Cursor-овского встроенного subagent — computer-use subagent в облачных агентах, где мы обнаружили, что эти траектории могут быть длинными и включать много изображений и выполнение какой-то тестирующей задачи верификации. Мы хотели использовать модели, особенно хорошие в этом.

Это одна причина использовать subagents. И другая причина использовать subagents — мы хотим, чтобы контекст был саммаризован — сжат на уровне subagent. Это реально хорошая граница, на которой можно сжать этот rollout и тестирование в финальное сообщение, которое агент пишет, которое потом передаётся родителю — вместо того чтобы делать какой-то глобальный compaction или что-то такое.

swyx: Потрясающе. Круто. Раз уж мы в разговоре про subagents — не могу провести разговор про Cursor и не поговорить про lithium-штуки. Что это? Что такое? Он построил браузер. Он построил OS. Да. И [00:45:00] он экспериментировал с кучей разных архитектур и в итоге переизобрёл org-чарт software engineer.

Всё это круто, но какой твой тейк? Какие, есть ли закулисные истории про всё это приключение?

Samantha: Некоторые из этих экспериментов нашли путь в фичу, доступную в облачных агентах сейчас — long-running agent mode, внутри мы называем его grind mode.

И я думаю, какой-то намёк на grind mode доступен в пикере сегодня. Потому что можно выбрать «grind until done». И это был результат экспериментов, которые Wilson начал в этом ключе — я думаю, Ralph Wigga loop в то время как раз летал, но он также независимо нашёл и экспериментировал.

И это привело к этой продуктовой поверхности.

swyx: И это просто простая идея — иметь критерии завершения и не останавливаться, пока не завершишь.

Samantha: Есть чуть больше сложности в нашей имплементации. Есть специфическое — ты должен начать с согласования, и есть planning stage, где он будет работать с тобой и не начнёт grind execution mode, пока не решит, что план приемлем для вас обоих [00:46:00].

По сути,

swyx: Я отказываюсь работать, пока ты меня не порадуешь.

Jonas: Мы обнаружили, что это реально важно — люди давали очень недоспецифицированные промты и потом ожидали, что он вернётся с магией. И если он уйдёт работать на три минуты — это одно. Когда он уйдёт работать на три дня — наверное, стоит провести несколько часов вверху, убедившись, что ты сообщил, чего реально хочешь.

swyx: Да. И просто чтобы реально подчеркнуть — мы реально имеем в виду три дня, что — никакого

Jonas: человека. О да. У нас были и трёхдневные. Какое-то вмешательство — никакого.

Samantha: Не знаю, какой рекорд, но было долго с grand’ом

Jonas: И штука, доступная в Cursor — long-running агент, если думать о нём очень абстрактно — это как одна worker node.

Тогда как то, что построило браузер — это общество воркеров и плэннеров и разных коллаборирующих агентов. Потому что мы начали строить браузер с одной worker node на тот момент — это был просто агент. И это стало одной worker node, когда мы поняли, что throughput системы — не там, где должен быть [00:47:00], чтобы сделать что-то такого масштаба, как браузер.

swyx: Да.

Jonas: И это тоже стало реально большой ментальной моделью для нас с cloud, cloud-агентами — есть классические инженерные latency-throughput trade-offs. Код — это вода, текущая через трубу. Мы считаем, что в ближайшие месяцы большой прорыв будет не в том, что один человек с моделью успевает больше — то есть вода течёт быстрее. Мы будем делать трубу гораздо шире и так распараллеливать больше — будь то рои агентов или parallel-агенты — и то и другое способствует тому, чтобы…

успевать гораздо больше за то же время. Но любая конкретная из этих задач не обязательно должна быть выполнена так быстро. И throughput — это реально большая штука, где если ты видишь систему из ста concurrent-агентов, выдающих тысячи токенов в секунду — ты не можешь вернуться. Просто… ты видишь проблеск будущего, где, очевидно, много caveats. Никто не использует этот браузер IRL. Есть куча вещей, не совсем правильных пока, но мы дойдём до систем, которые производят реальный production-код [00:48:00] на этом масштабе гораздо скорее, чем люди думают. И это заставляет тебя думать — что вообще случится с production-системами. У нас недавно сломались GitHub Actions, потому что у нас столько агентов производят и пушат код, что CI/CD просто перегружен. Потому что внезапно — мы по сути выросли. Cursor растёт очень быстро в любом случае, но ты растишь headcount в 10 раз, когда люди запускают в 10 раз больше агентов.

И многие из этих систем — именно, многие из этих систем должны будут адаптироваться.

swyx: Это также напоминает — мы все трое живём в app-слое, но если поговорить с исследователями, делающими RL-инфру — это то же самое. Это все эти parallel rollouts и их шедулинг, и чтобы как можно больше throughput шло через них.

Да, то же самое.

Jonas: Мы говорили вкратце перед записью. Ты упоминал чипы памяти и некоторый shortage там. Другая штука, которую просто сложно охватить умом — масштаб системы, которая строила браузер, concurrency там.

Если у Sam и меня обоих будет такая система, [00:49:00] выкатывающая наш софт. Количество inference, которое нам понадобится на разработчика — просто умопомрачительно. И это делает — иногда, когда я об этом думаю, я думаю, что даже при самых оптимистичных прогнозах того, что нам понадобится по buildout, мы недооцениваем, до какой степени эти swarm-системы могут churn-ить на масштабе и производить код, ценный для экономики.

И,

swyx: да, можешь вырезать, если это чувствительно, но я просто — есть оценки того, сколько у вас токеновое потребление?

Jonas: Типа на разработчика?

swyx: Да. Или у тебя самого. Не надо comfy-average. Просто любопытно.

Samantha: Я какое-то время не была админом в дашборде usage, так что не могла видеть, но это был…

swyx: мой вырос.

Samantha: О да.

swyx: Но я думаю

Samantha: в плане того, сколько работы я делаю — скорее так: у меня нет беспокойств про разработчиков, теряющих работу, по крайней мере в ближайшей перспективе. Потому что это более широкое обсуждение.

swyx: Да. Да. Ты пошла туда. Я не шёл, я туда не шёл. Я просто — сколько больше ты используешь?

Samantha: Так много всего надо построить. И поэтому я по сути просто [00:50:00] постоянно — у меня больше амбиций, чем было раньше. Да. Лично. Да. Не могу говорить за всё. Но для меня это: я занята как никогда раньше.

Я использую больше токенов и я также делаю больше вещей.

Jonas: Да. Да. У меня нет статистики на себя, но я думаю, в широком смысле — то, что мы видели, и что, как мы ожидаем, продолжится — это парадокс Джевонса.

swyx: Без этого нельзя в нашем подкасте

Jonas: именно. Мы это сделали. Теперь можем заканчивать. Мы сказали слова.

Фаза один — tab autocomplete — люди платили по 20 баксов в месяц. И это было отлично. Фаза два, где ты итерируешь с этими локальными моделями. Сегодня люди платят по сотни долларов в месяц. Я думаю, когда мы думаем об этих highly parallel agents, работающих долго в своих собственных VM-системах, мы уже в точке, где люди будут тратить тысячи долларов в месяц на человека, и я думаю, потенциально десятки тысяч и больше — это не то что мы жадные до захвата большего денег, но что происходит — индивидуумы получают на столько больше leverage.

И если один человек может делать столько, сколько 10 — да, этот инструмент, который позволяет это, будет невероятно ценным [00:51:00] и стоит инвестиций — и того, чтобы брать лучшее существующее.

swyx: Ещё один вопрос про Cursor в целом, и потом open-ended для вас, чтобы вы плагнули, что хотите.

Как Cursor нанимает в эти дни?

Samantha: Что значит «как»?

swyx: Очевидно, LeetCode мёртв.

Samantha: О, окей.

swyx: Все говорят «work trial». Разные люди имеют разный уровень адопции агентов. Некоторые люди могут реально адоптировать — могут быть гораздо продуктивнее. Но другим людям нужно немного времени.

И иногда они никогда не жили в token-rich месте, как Cursor.

И как только живёшь в token-rich месте — ты просто работаешь по-другому. Но нужно это сделать. И много людей — в любом случае, это open-ended. Как агентная разработка, agentic coding изменили твои мнения по найму?

Есть какие-то широкие инсайты? Да.

Jonas: По сути, я спрашиваю это для других людей, верно? Да, абсолютно. Абсолютно. Чтобы услышать мнение Sam — мы вдвоём об этом не говорили. Я думаю, мы не видим обязательно крутость в последней штуке с AI-coding как prerequisite.

Я думаю, это знак, что люди следят и [00:52:00] любопытны и готовы апскейлить себя в происходящем — потому что, как мы говорили — последние три месяца, игра полностью изменилась. То, что я делаю весь день, совсем другое.

swyx: Это моя работа, и я не могу,

Jonas: Да, абсолютно.

Я думаю, до сих пор, как говорила Sam, фундаменты остаются важны в текущей эре, и способность пойти и кликнуть в детали. Модели сегодня всё ещё имеют слабости — если позволять им работать слишком долго без уборки и рефакторинга, код станет неряшливым, будут плохие абстракции.

И поэтому всё ещё нужны люди, которые строили системы раньше, знают хорошие паттерны, когда их видят, и знают, куда направлять.

Samantha: Согласна с этим. Я бы сказала — снова, Cursor оперирует тоже очень быстро, и леверидж agentic engineering — наверное, одна из причин, почему это возможно в текущий момент.

Я думаю, в прошлом это были просто люди, кодирующие быстро, а теперь есть люди, которые используют агентов, чтобы двигаться быстрее. Так что часть нашего процесса всегда будет искать — мы будем селектить за способность принимать хорошие решения быстро и хорошо двигаться в этой среде.

И я думаю, что способность [00:53:00] выяснить, как использовать агентов, чтобы помочь тебе это делать — важная часть.

swyx: Да. Окей. Развилка — либо предсказания на конец года, если есть, либо плаги.

Jonas: Предсказания не будут хорошими.

Samantha: Знаю, это тяжело.

swyx: Они так сложны. Ошибёшься.

Окей. Просто, да.

Jonas: Один другой плаг, который может быть интересен — мы его коснулись, но не говорили о нём много — это что эти новые интерфейсы и этот параллелизм позволяет — способность прыгать между тредами очень быстро. И штука, которая у нас есть,

swyx: хочешь показать что-то или…

Jonas: да, могу показать.

Штука, которую мы почувствовали с локальными агентами — это боль вокруг переключения контекста. У тебя один агент, который ушёл и сделал какую-то работу, и другой агент, который сделал что-то ещё. И здесь, имея — у меня просто три таба открыты, скажем, — я могу очень быстро запрыгнуть сюда.

Это пример, который я показывал ранее, но реальный воркфлоу, я думаю, реально другой — может быть, не очевидно. Я начинаю утро, запускаю 10 агентов или около того, первый из них [00:54:00] заканчивает — захожу, смотрю видео, либо как закрываю. И могу отправить follow-up.

Могу сказать «сделай красным», или могу запрыгнуть в desktop и попробовать. И за 90, 120 секунд я перезапустил этого, либо начал процесс мерджа — CI сейчас крутится, и я вернусь позже — либо он уехал с какой-то дополнительной follow-up информацией. И тогда я могу запрыгнуть в следующий.

И в следующий запрыгиваю и говорю: окей, это выглядит интересно. Давай реально попробую в приложении. Хочу увидеть в действии, не только в галерее. И я могу это запустить, и агент пойдёт работать над этим, потому что я, может быть, хотел попробовать — как кнопка выглядит в реальной штуке.

И сюда я могу запрыгнуть и проверить видео тут или сделать что-то. И ты реально гораздо больше распараллеливаешь и фоллоу-апишь, проверяешь — это гораздо больше высокий уровень абстракции, имея разные десктопы, где можно прыгать туда-сюда, и ты не [00:55:00] «о, я checkout’нул эту ветку, о, где же был тот worktree снова?». Да. Это реально решает за то, с чем мы сами в Cursor и в этих локальных агентах боролись: «где же был тот diff снова?» — он потерян в каком-то worktree, никогда не найду. О, моя локалка ребилдится. О, просто сделай ещё один.

Вот к чему приходишь. И ты потом ждёшь ещё пять минут, пока запустится. Это реально новый способ параллелизации, который мы нашли честно очень весёлым. Да. Где ты просто прыгаешь и инжектируешь вкус, и говоришь: «это не совсем то».

О, на самом деле это не совсем правильно сархитектурено — ты просто фокусируешься на этих интересных вопросах вкуса.

Samantha: Для меня cloud-экосистема также позволила сделать это — добавлять продуктивность к моему мёртвому времени, типа коммьюту или ночью или такому. Тот факт, что мне не нужно оставлять компьютер открытым,

swyx: у Cursor нет — есть ли мобильное приложение Cursor?

Samantha: Если есть, я не уверена. Это текущая штука — мы — я использую на своём телефоне всё время, просто через веб. Так что довольно хороший опыт там для чек-ина [00:56:00]. Да. И анлок. Я думаю, да, можно смотреть видео и прочее в web-app, что потрясающе.

Да.

Jonas: Да.

swyx: Я думаю, это та, где ADD унаследует землю, если у тебя attention span готов, но ты всё ещё можешь управлять — на самом деле это хорошо для тебя. Да. Но также я думаю — здесь coding-инструменты начинают сталкиваться с productivity-инструментами, где linear, kanban-доски — потому что то, что у тебя есть — это круто, но ты знаешь что, тебе на самом деле нужна kanban-доска. Которую люди vibe’ят — vibe kanban существует, open-source. Уверен, вы об этом говорили, но они начнут сталкиваться, потому что на самом деле код больше не важен.

Это процесс взаимодействия и чек-ина человека. И вижу, типа, как заставить World of Warcraft sound package работать или что угодно. Типа «работа сделана» или, не знаю — интересная штука будущей продуктивности.

Samantha: Да.

swyx: Я также думаю, что ещё одна большая тема — типа в прошлом году называлась «год coding-агентов».

В этом году другая — coding-агенты переливаются в реальный мир, в cloud cowork и всё другое. Да. Уверен, Cursor будет фокусироваться на софте, но скажем — open Claude крайне [00:57:00] mind-expanding в плане «я не знал, что такое может случиться».

Jonas: Да.

swyx: И это всё основано на coding-агенте — полностью.

Jonas: И я думаю, одна из вещей, которая интересна — говоря с друзьями и семьёй, которые не в software-мире — я ускоряю предсказания. Я думаю, что мы начнём видеть, как другие индустрии проходят через то, через что начала проходить software-разработка.

Я думаю, в силу того, насколько хороши модели в написании софта, и насколько early adopter люди, строящие новую технологию, и пробующие её и применяющие к себе — определённые виды сдвигов случатся и с другими индустриями. И много чему есть научиться из того, как это шло и продолжает идти в софте.

В плане — все эти интересные вопросы — до какой точки люди получают больше leverage, когда роль становится гораздо более generalist? Все эти вопросы, по которым мы видели какие-то данные, но увидим гораздо больше в ближайшие месяцы. Это случится везде.

swyx: Sam, прощальные мысли? Какие-нибудь плаги от себя?

Samantha: Не особо. [00:58:00] Всё хорошо. Я чувствую, что мы покрыли так много хорошего материала. Покрыли. Покрыли много. Придумать предсказание. Я просто думаю, агенты будут продолжать становиться лучше. Я буду делать меньше ручного кодинга — наверное, ноль строк кода, написанных за весь декабрь этого года мной лично.

100% агенты, как личное предсказание, но

swyx: о, ты не на нуле сегодня.

В каких случаях?

Samantha: Я думаю, честно, это 1%, если я просто разозлюсь, и я такая: «я не хочу идти и говорить агенту менять эту одну штуку». Но

Jonas: промтинг иногда — я чувствую, что работа над промтами иногда.

Да. Я всё ещё иду и редактирую руками, потому что это так — bare intent transfer, что говорить агенту, чего я хочу — это как писать эссе, где я не использую агентов для писания эссе пока — потому что процесс писания — это размышление.

Samantha: Я всё ещё не выношу AI-generated writing. Так что да, я тоже не могу заставить агента писать промты.

swyx: Так никакого DSPy, никакого GEPA, ничего такого здесь.

Jonas: У нас есть какой-то внутренний tooling вокруг штук prompt-оптимизации, но есть значительная часть — какие концепты мне нужно сообщить агенту или модели.

swyx: Я также заметил ещё одну штуку, которую я тоже [00:59:00] ищу — voice.

Я заметил, что ты не использовала голос для кодинга — даже OpenAI. Когда мы делаем подкасты с ними, они не используют голос. Да. И я такой — в какой-то момент это становится хорошим. Можно перестать печатать.

Samantha: У нас есть люди, которые это очень любят внутри, и я думаю, мы будем экспериментировать в этом пространстве тоже.

Jonas: Ты используешь голос, swyx?

swyx: Не много. Иногда — это привязано к моему caps lock, и могу нажать.

Jonas: И когда используешь — хочешь, чтобы оно отвечало, или просто хочешь

swyx: Да,

Jonas: просто дамп. Да. Да.

swyx: Но brain dump хорош. Да. Потому что можно перебивать себя, уходить в тангенс, что угодно.

Он просто всё захватывает. Да. И запихнуть в LLM — всё нормально.

Jonas: Да. Способ, которым мы это делали с Autotab — люди записывали полные screen recordings с аудио, чтобы научить модель, как делать задачу. И одна из забавных вещей, которую мы выучили — люди использовали свой Siri-голос, где начинали говорить короткими, отрывистыми фразами и очень чётко артикулировать — потому что они были привычны: они последний раз использовали AI два года назад, где нужно было

swyx: Apple повредил целому поколению ожидания людей.

Jonas: Именно. И мы должны были сказать: «нет, ты очень нативный, [01:00:00] так что говори вот так, но просто дампи всё. Можешь повторяться, противоречить себе. Модели достаточно умны, чтобы разобраться».

swyx: Но всё ещё очень плохо. Так что voice coding всегда считалось — я считал — самой сложной частью, потому что приходится говорить технические штуки, где, типа, написание имеет значение, capitalization имеет значение, и это всё не в голосе.

Так что увидим. До сих пор это было больше emotional companionship — такое — но в какой-то момент дойдёт до voice coding.

Jonas: Да. У меня есть предсказание для тебя. Я предсказываю, что к концу года объём — я думаю, это займёт дольше, чем люди думают, и дольше, чем мы думаем, чтобы cloud-агенты, работающие в своих коробках, превзошли локальных агентов.

Но я думаю, что этот crossover случится до конца года, и, наверное, к концу года агенты, работающие в облаке, будут более чем 2x объёма локальных агентов.

swyx: Окей. Ты мне оставляешь открытие. Что не очень хорошо сегодня?

Jonas: Да, есть куча сложных вещей. Одна из них — просто сделать эти [01:01:00] sandboxes реально хорошими, и вещь, которая была частью этого запуска, на которой мы потратили непомерное количество времени — это cursor.com/onboard, где ты выбираешь репо, добавляешь секреты, даёшь ему доступ к вещам, и агент сам уходит и устанавливает вещи.

swyx: Да, я думаю — всё целиком — это была моя любимая.

Jonas: Да, мы много работали над этим. Sam и я в особенности провели много поздних ночей, делая это хорошо, но там ещё много чего нужно сделать. Сетап одна, две вещи. Может, он слишком медленный. Он слишком медленный — работаем. Сетап — не унитарная вещь, где всё либо настроено, либо нет, верно?

Вещи будут ломаться со временем. У тебя новые зависимости, тебе нужен доступ к новым системам — меняешь, где живёт БД. Это одна часть. И другая часть — иметь этих агентов, работающих в облаке, более автономными. Мы реально начали видеть отсутствие памяти.

А Sam, как кто-то, кто много об этом думал — как только модель начинает оперировать кодбейзом, есть больше особенностей, чем просто read file tool. Ей нужно знать, как запустить бэкенд, как проверить статус [01:02:00] бэкенда?

Это очень специфично для твоего кодбейса. И даже если она отлично справляется с npm run watch или какими дефолтными вещами — всегда есть quirks. У всех есть quirks. И сделать модель хорошей в этих вещах потребует больше работы. Мы над этим работаем. Но мы думаем, это будет одним из больших анлоков — иметь их онбордженными не только в плане окружения, но и в плане понимания design trade-offs, как работает кодбейс, как быть хорошим разработчиком в любом одном кодбейсе.

swyx: Это куча Cursor rules. Будет что-то другое. Будет ли это файл? Просто назовём либо markdown файлом другого имени, и

Samantha: Не знаю. Одна штука, которую мы выучили — мы в Cursor (компании) в этом году. Есть реально классный блог-пост, который Judi и другие люди в agent quality team выложили про dynamic file context.

swyx: Это твоя команда — другая команда?

Samantha: Другая команда, да. Они работали по сути — делая много всего, file system, всё — file system. И поэтому много моего мышления лично про память за прошедший год изменилось — стало больше согласованным с этим, где это даёт агенту указатели на вещи, аннотации [01:03:00] к вещам.

Второе — я начала думать о памяти как о подмножестве self-auditability агента и self-awareness. По сути, агент может захотеть предложить аннотации или ссылки или memory файлы себе, когда находит, что есть какой-то gap в его функциональности в его собственном harness, который, возможно, нужно заполнить какой-то информацией на полу-постоянной основе.

Но есть целый ряд других вещей, являющихся побочным эффектом self-auditability, которые реально интересны — потенциально находить конфликтующие инструкции или skills и rules, которые могут быть «эти баг’ают друг друга». И также вещи как починка проблем DevEx, на которые он наталкивается.

Я думаю, по сути dynamic file system стафф наверное очень многообещающ для памяти. И есть также эта нотация, что нужно, чтобы агент был чуть более self-aware в плане способности идентифицировать gap’ы в собственной функциональности и решать, как их заполнить.

Jonas: Это такой хороший пойнт.

Self-awareness в широком смысле — это реально большая вещь, которой Sam, я думаю, нас [01:04:00] подталкивала делать всё больше и больше — где агент должен понимать, как работает его окружение, должен понимать, как работают секреты. Ему нужно быть self-aware о собственном harness и окружении. И потом, и ты

swyx: думаешь, это не присуще модели — нужно делать.

Jonas: Это специфика, да? Если он работает в Cursor versus каком-то другом sandbox — это немного разное. И потом другая часть, которая становится реально интересной — это когда модель начинает редактировать собственный system prompt.

swyx: Да.

Jonas: Что это вообще значит? Как делать это безопасно и

swyx: переборщить?

Это просто research, верно? Это не — это

Jonas: я думаю, она это сделает. Да. Она будет управлять собственным контекстом. И system prompt — это часть контекста, и можно спорить про

Samantha: Да, типа другие вещи, которые она может решить включить или выключить в зависимости. И всё это, self-awareness для нас в этом контексте — это не сама модель имеет нотацию сознания, а скорее знание того, в какой системе она работает, и ограничений этой системы, и потенциально способность иметь agency в оптимизации себя, чтобы оперировать наилучшим образом в этой системе.

Это была одна из [01:05:00] первых вещей, которые я выучила в Dot, когда мы запускались — мы сделали модель — или сделали агента — или, как бы мы его ни называли в то время — он был гораздо менее агентным — сделали продукт работающим очень хорошо в определённом количестве вещей, но у него не было полного self-awareness собственных границ.

Так что люди такие: «Эй, можешь сделать эту штуку?» И штука была, и могла быть сделана, и продукт такой «ой нет». А я: «но можешь же». И так по сути одна из самых ранних вещей, которые я нашла —

swyx: верь в себя.

Samantha: Знаю, как product developer — ей нужно одновременно уметь делать штуку и иметь полное знание о своей способности делать штуку.

Это не всегда очевидно одна и та же часть промта вообще.

Да.

swyx: Да.

Samantha: Это то, что, я думаю, продолжает быть темой в экосистеме — пользователи часто атрибутируют возросший интеллект системе, которая более self-aware и более способна манипулировать собой, чтобы хорошо справляться в системе.

Если это имеет смысл.

swyx: Да. Это более абстрактно, чем я когда-либо думал, в нашем Cursor-обсуждении. Круто. Это не тот вид [01:06:00] разговора, который ты ведёшь в —

Samantha: мы говорим об этих штуках всё время —

swyx: улучшая

Samantha: да.

swyx: агентов в целом.

Jonas: Да. К твоему пойнту про agent layer и думая много про модели и harness, и продукт, и affordances.

Да. Падает из

swyx: Нет, я имею в виду — вы, ребята, для меня — нужный пример того, как выглядит agent lab и может быть успешным, и я думаю, люди всегда голодны до инсайтов в то, как вы оперируете, так что спасибо, что нашли время поделиться.

Samantha: Да. Спасибо, что пришёл.

Да. Спасибо.

Обсуждение этого эпизода

Latent.Space