📱

Get Our Mobile App

Take your business learning on the go!

Download on the App StoreGet it on Google Play

Intro to Warp - terminal basics, Claude Code setup, and cloud handoff with Oz

Warp1:07:24

Transcription

[музыка] [музыка] [музыка] [музыка] Всем привет! Как дела? Надеюсь, у вас всё хорошо. Снова заглянул в эту область. Обычно я обращаюсь к вам из телефонной будки или, по крайней мере, в двух третях случаев. Но сегодня вы можете насладиться этим прекрасным видом из окна. Сегодня с нами наш друг Генри. Привет, Генри, всем. Надеюсь, у вас всё хорошо, что, я думаю, я уже говорил. Мы начнем через несколько минут. Я всегда люблю спрашивать в начале этих стримов, откуда вы все смотрите? Откуда вы все смотрите? Я настрою наш браузер и терминал, чтобы мы могли сразу приступить к делу, как только будем готовы. Это будет хороший стрим. Обычно я называю их такими хорошими, какими только можно себе представить. Было бы безумием, если бы я сказал, что этот не будет таким же хорошим. Знаете, мы занимаемся этим уже много месяцев, но сегодня, сегодня будет не так уж хорошо. Нет, сегодня будет здорово. Это будет очень хорошо. Мы пройдемся по тому, как работает Warp. Мы пройдемся по использованию кодирующих агентов внутри Warp. Так что, как обычно, я спрошу людей, какого кодирующего агента они предпочитают использовать, и буду использовать его. Мы также немного поговорим об использовании встроенного агента Warp. Есть несколько новых функций, о которых я, как всегда, могу рассказать. А затем мы немного поговорим об оркестрации и облачном режиме, потому что это действительно классные вещи, которые можно связать вместе. Извините. Я думаю, в прошлый раз у нас возникли некоторые проблемы, потому что я использовал старую версию Warp, и я не мог показать вам новые вещи. Теперь я обновился, так что я могу показать вам новые вещи. Как это здорово? Позвольте мне также проверить настройки моего агента, потому что мы должны иметь возможность О нет, может быть, и нет. Да, да, да. Круто. Ладно, настраиваю окружение. У нас в аудитории есть калифорниец. Обожаю это. Прекрасный район. Абсолютно прекрасный. Мы в Калифорнии, если вы не против, что я спрашиваю. Я также зайду в настройки моего агента, а затем начну делиться экраном, и мы просто начнем разбираться. Ладно. Сегодня немного тихая аудитория. Немного тихая. Ничего страшного. Редвуд-Сити. Обожаю это. О, боже. Там действительно Редвуд-Сити. Я полагаю, это недалеко от Редвудов, не так ли? Редвудский национальный парк Сити в Калифорнии. О, нет. Это южнее. Это южнее, чем я ожидал. Это ближе? Это близко к Редвуд Саут? Я не очень хорошо знаю географию. Я сейчас веду трансляцию на YouTube и Twitter. Это две наши основные площадки. У нас нет присутствия на Twitch. На самом деле нет причин, кроме того, что у нас большое присутствие на YouTube и Twitter, поэтому мы просто используем их. Я не знаю. [фыркает] Да. Ну, если мы все готовы, я начну трансляцию. Позвольте мне поделиться тем, над чем мы работаем. Это в центре залива, в середине полуострова. Именно это я и видел. Я был немного удивлен. Редвуд. Почему вы назвали это Редвуд-Сити? Я здесь, чтобы увидеть Редвуды. Что происходит? Им пришлось переехать. [смех] Нам нужно. Нам нужно перебазировать эту ветку. Хорошо. Ну, это терминал Warp. И я просто начну с того, что пройдусь по всему. Так что, как вы можете себе представить, мы занимаемся этим уже некоторое время. Так что есть готовое демо, которое я люблю проводить, чтобы показать возможности терминала, поговорить о кодирующих агентах и обо всем таком. Но это бесплатно для вас. Так что, если вы смотрите и у вас есть вопросы о том, что я делаю, вопросы, которые не относятся к теме того, что мы делаем, даже если они связаны с Warp каким-то образом, я буду проверять чат на протяжении всего этого. Так что задавайте любые вопросы, которые у вас есть, и я обязательно отвечу на них и направлю нас к различным аспектам Warp, которые вы хотите увидеть. Но для начала я просто пройдусь по всему. Итак, это терминал Warp, когда вы запускаете его в режиме агента. Или если вы создаете свой терминал и решаете сделать его оптимизированным для агентов, я бы сказал так. Я не знаю, насколько вы новичок в терминале Warp, например, установили его на прошлой неделе или около того. Но если вы это сделали, то вот что вы увидите. Вы попадете в свой корневой каталог, а вкладки будут слева. Что уже является довольно значительным отличием по сравнению с большинством других терминалов, которые вы могли попробовать. И вы также заметите, что вы можете расширять и сворачивать эту панель вкладок. Теперь это полностью настраивается. Так что вы можете настроить Warp как простой автономный терминал с добавленными приятными функциями, или вы можете использовать его для управления всеми агентами, которые у вас запущены. И для этого мы предпочитаем вертикальные вкладки, потому что, например, если я начну запускать несколько разных кодирующих агентов здесь, чтобы показать вам, как это выглядит. Вы получаете приятную иконографию для каждого из этих агентов. Вы можете навести курсор, чтобы увидеть, над чем эти агенты работают в данный момент. Сейчас они бездействуют, так что вы ничего не увидите. И вы также получаете символы статуса. Вы получаете уведомления в приложении, когда агент закончил работу, и все такое прочее. Так что вертикальные вкладки — это действительно хороший способ управлять всем этим и получать максимум информации о том, что запущено в данный момент. Но если вы хотите упростить это до горизонтальных вкладок и тому подобного, это довольно просто сделать. Если вы просто найдете "вертикальный макет вкладок" в настройках здесь, я перешел в "файл", а затем, извините, вы нажимаете на кнопку Warp, а затем переходите в "настройки". Вы можете получить доступ к этой панели настроек здесь, и вы можете изменить ее на горизонтальные вкладки, если хотите, и это просто другой вариант того же самого, и вы все еще получаете обновляющиеся строки заголовка. Вы все еще можете навести курсор, чтобы увидеть, какой текущий каталог, по крайней мере, я думаю, так, может быть, нет, потому что это не совсем в каталоге. Но это все. Вы просто получаете более упрощенный, компактный вид, если это то, что вы предпочитаете. Мне лично нравится вертикальный, поэтому я верну его в режим вертикальных вкладок для этой сессии. Что еще можно сказать? Можем ли мы переименовать разговор? Да, можете. Дважды щелкните по нему, и вы можете выбрать, как его назвать. Вы можете переименовать вкладку терминала, если это просто терминал. Вы можете переименовать свою вкладку кода Claude, если она запущена, и тогда имя вкладки сохранится. Вы также можете изменить цвет, кстати. Так что, если у вас есть определенный рабочий процесс, за которым вы хотите следить, вы можете изменить цвет, и тогда его будет немного легче найти в вашем представлении. Я предпочитаю держать все монохромным, но вы можете делать все, что хотите. Что довольно приятно. Хорошо. Итак, теперь давайте поговорим о фактическом выполнении команд в терминале, потому что, я имею в виду, это терминал. Вы скачали эту штуку, чтобы быть хорошим терминалом. И именно этим Warp известен уже давно. Это просто очень, очень приятный в использовании терминал. Итак, первое, что я хотел бы упомянуть, это то, как мы разделяем все команды, которые вы выполняете. Итак, позвольте мне просто выполнить несколько произвольных команд здесь. Например, если бы я выполнял ls. И тогда вы также заметите, что у вас есть встроенное автодополнение на основе предыдущих команд, выполненных в этой сессии. Так, здесь он заметил, что мое React-приложение было там, он может это сделать. Следующим предположением, вероятно, будет npm install. Это довольно хорошее предположение. Так что вы получаете очень умное автодополнение, которое учитывает предыдущую команду и также делает немного LLM-инференса, что очень умно. Так что здесь он понял, о, я, вероятно, хочу запустить npm dev. Вы поняли. Он как бы завершает ваше следующее предложение большую часть времени, что, я думаю, очень круто. Но позвольте мне выполнить эти команды снова, чтобы вы получили представление. Также вы можете очистить все выполненные команды с помощью Command K. Так что, если я нажму Command K, я никогда раньше этого не упоминал, но вы можете очень легко очистить все выполненные команды с помощью Command K. И если я выполню несколько команд здесь, чтобы вы снова увидели все эти выходные данные, вы заметите, что каждая выполненная команда находится в своем собственном блоке, что мы называем. Так что блок — это комбинация выполненной команды и ее выходных данных. Очень просто. И в большинстве терминалов у вас нет такого группирования обязательно. Вы можете видеть полный трассировку выходных данных в терминале. Но они не группируют вещи вместе. Вы заметите здесь, например, что у вас есть фиксированные заголовки. Так что здесь, когда я прокручиваю выходные данные npm dev, я могу видеть команду, которая была выполнена, без необходимости прокручивать до самого верха. И вы также можете щелкнуть по этому фиксированному заголовку, чтобы переместить позицию прокрутки вверх. Или вы можете щелкнуть по этой стрелке здесь, чтобы перейти к концу этого блока. Еще одна приятная особенность блоков — вы можете перемещаться по ним с помощью клавиатуры, вместо того чтобы прокручивать все. Так что, если вы нажмете Command Up Arrow, вы заметите, что он медленно перепрыгивает через всех этих парней или быстро перепрыгивает через всех них. Так что, если я нажму Command Up Up, я могу перепрыгивать между всеми командами, а стрелка вниз делает то же самое. Так что, если вы фанат клавиатуры, гораздо быстрее перемещаться по терминалу по команде, а не по строке или странице или чему-либо еще, что вы можете использовать в выбранном вами терминале. Что довольно круто. Он также предоставляет вам некоторые индикаторы состояния, такие как рабочий каталог для этой команды. Он автоматически добавляется сюда. Вы также видите время выполнения каждой команды, которую вы запускаете, что очень полезно, если вам нужно выяснить, почему определенная команда заняла много времени для завершения. Вы также можете навести курсор, чтобы получить полную статистику о том, когда эта команда была запущена, на случай, если это была старая сессия или что-то в этом роде. Все это здесь. Еще одна приятная вещь в группировке команд и выходных данных — это гораздо проще копировать и вставлять выходные данные из этой штуки. Так, например, если я хотел бы скопировать трассировку этого сервера разработки, я мог бы, знаете ли, выделить все, как вы бы сделали в обычном сервере разработки, что было бы нормально, но если это очень длинная команда сервера разработки, может быть неприятно выделять и захватывать все точно. Так что в Warp вы можете просто сделать это очень неуклюже. Вы можете просто щелкнуть по блоку, щелкнуть правой кнопкой мыши, и у вас есть всевозможные команды, чтобы что-то сделать с этим. Так, например, если я просто хотел скопировать выходные данные этой команды, я мог бы нажать "копировать выходные данные", вставить это, и это займет полные выходные данные, без необходимости их выделять. Я делаю это все время. Еще одна — копирование выполненной команды или, когда вы используете агент Warp, копирование подсказки, которую вы выполнили, что также очень полезно. Так что я могу просто щелкнуть правой кнопкой мыши, скопировать команду, а затем вставить ее. Вы также можете сделать все это с помощью клавиатуры. Так что вы заметите здесь, что она выделена, я могу просто использовать стрелку вверх несколько раз, например, о, я хочу скопировать npm install. Я могу просто нажать стрелку вверх, пока она не будет выбрана. Command C, а затем Command V, и вот она. Command C скопирует команду и ее выходные данные вместе. Но есть ярлыки практически для всего, что вы можете захотеть сделать с командой, что довольно круто. Еще одна вещь, которую я упомяну, это то, как вы можете искать в выходных данных данного блока. Например, здесь, если я хотел бы найти, ну, давайте посмотрим на что-то более интересное. Может быть, здесь я хочу найти все файлы, которые включают имя пакета. Ну, я мог бы щелкнуть по этой команде. Если вы нажмете Command F, как вы бы сделали в любом другом терминале, вы можете начать искать вещи, но это будет ограничено этим конкретным блоком. Так что вы не увидите кучу результатов для других блоков, которые не связаны. Вы увидите только результаты для этого. Вот что означает этот маленький индикатор здесь, найти в выбранном блоке. Вы можете удалить его и искать по всей вашей сессии, что приятно. Но вы также можете щелкнуть по этой кнопке, чтобы сфокусироваться на конкретной команде, которую вы пытаетесь отследить. Итак, здесь мы просто щелкнем по ней, и мы увидим два экземпляра package.json, пройдемся по ним. Вы также заметите, что пути к файлам получают приятное поведение гиперссылки. Так что, если вы хотите открыть это в редакторе файлов по умолчанию, который у вас есть на вашей машине, вы можете сделать это. На моей машине, я думаю, это что-то вроде VS Code или Cursor. Да. Так что вы увидите здесь, что он открывает файл для меня, чтобы я мог его отредактировать. Вы также можете открыть его непосредственно в Warp, к чему мы когда-нибудь перейдем. Но вы поняли. Когда вы группируете вещи с помощью блоков, вы получаете приятные мелочи, такие как копирование и вставка стектрейсов или поиск в конкретном блоке. Последнее, что я упомяну, это фильтрация, которая очень, очень полезна, если вы работаете с долго выполняющейся командой и вас интересуют только определенные журналы в этой команде. Итак, позвольте мне запустить команду, которую я всегда использую на стриме, потому что она дает мне много выходных данных. Итак, вот команда, которая будет отслеживать все журналы для текущего процесса Warp. Так что это буквально показывает мне все журналы, пока я перемещаюсь по этой штуке. И вы можете видеть здесь все взаимодействия, которые я сделал. Так что, скажем, я пытаюсь отладить версию этого приложения, и в этом огромном потоке есть определенные журналы, которые меня интересуют. Я мог бы найти здесь, как я только что показывал. Например, если я ищу только журналы, связанные с телеметрией, это имеет смысл. Если я просто нажму Command F, а затем "телеметрия", очевидно, это будет искать прямо здесь. Я также могу найти внутри текущего блока, вот так. И это позволит мне довольно быстро перейти к нему. Неплохо. Но я все еще получаю весь визуальный шум. Так что, по мере поступления все большего количества команд, будет очень неприятно перемещать позицию прокрутки и видеть, где это, где то, где другое. Было бы неплохо, если бы я мог просто смотреть на строки, которые меня интересуют. И для этого у нас есть отдельная кнопка здесь, этот маленький фильтр-воронка. Если вы нажмете на нее и начнете что-то набирать, вы заметите, что она находит все совпадающие экземпляры. Но теперь она фактически отфильтрует только строки, что очень приятно. И это живой процесс. Так что это будет обновлять любые строки, которые показываются, отфильтрованные по поисковому запросу. Например, давайте поищем что-то, что может выдать больше журналов, может быть, глобальные действия. Теперь я смотрю на все глобальные действия, которые находятся в стектрейсе. Когда я щелкаю по приложению, поскольку оно в настоящее время отслеживает мою активность, вы заметите, что все журналы передаются сюда и обновляются в реальном времени. Так что, если я просто немного щелкну, да, вы увидите, как увеличивается время. Он просто обновит текущий просматриваемый список на основе строк, которые вас интересуют, что очень приятно. И это также ограничено этим блоком. Все, что я показывал вам, ограничено данным блоком выходных данных. Так что это не будет конфликтовать с другими командами в вашей сессии. Вы действительно смотрите только на команды для этого конкретного журнала. И фильтр остается постоянным. Так что, даже когда я запускаю другие команды в своем терминале и возвращаюсь к этому, фильтр все еще применяется, что очень удобно. Затем вы можете просто удалить его, нажав на него и нажав X. И теперь здесь полный стектрейс. Вы видите, сколько пришлось бы прокручивать. Это много журналов. Так что наличие опции фильтрации очень удобно для сеансов отладки в реальном времени, тому подобного. Да, это действительно основная часть. Так что Warp группирует вещи в блоки. У вас есть фильтрация, у вас есть поиск, у вас есть копирование и вставка. Это довольно удобно. Все разделено. У вас есть некоторые встроенные настройки по умолчанию, такие как автодополнение, а также автодополнение файлов и тому подобное. Так что Warp — это своего рода терминал "все включено". Я думаю, это общая вещь, которую вам всем нужно знать. Так что, если вы привыкли настраивать свою собственную оболочку и настраивать, например, свой промпт Spaceship и делать это всевозможными модными способами, вы можете сделать это в Warp. У нас есть опция просто использовать предпочитаемую вами оболочку вместо всех функций Warp. Но если вы не хотите ничего из этого и просто хотите что-то, с чем легко работать, и у вас есть все настройки по умолчанию, вам не нужно настраивать оболочку вообще. Warp имеет это. Warp имеет все настройки по умолчанию. Так что вы получаете автодополнение без необходимости устанавливать библиотеку автодополнения или что-то в этом роде, и он будет помнить вашу историю, включать немного AI-инференса, все это включено. Кроме того, например, видеть ваш текущий каталог. Если я перейду в Git-каталог, вы получите немного больше информации. Так что я могу изменить свою Git-ветку, щелкнув по ней. Я также могу проверить рабочий каталог. Это были некоторые шуточные рабочие каталоги, которые я делал раньше. Если я щелкну по этому, он перейдет к этой ветке, а также к рабочему каталогу, что довольно удобно, если вы переключаетесь между различными рабочими каталогами в среде, что, я думаю, люди делают все больше и больше в наши дни. Все это просто встроено и кликабельно, что довольно приятно. Да, я думаю, я остановлюсь здесь на секунду. Есть ли у кого-нибудь вопросы об использовании Warp в качестве терминала или что-то в этом роде? Я вижу один вопрос о Command K из его инференса и автопредложения. Нет, он не очищается из автопредложения. Ну, это на самом деле отличный вопрос. Я думаю, что способ, которым мы это делаем, не обязательно хорошо, это ранжирование по стеку из нескольких различных вещей, на которые мы ориентировались. Одна из вещей, на которые мы ориентируемся, — это просмотр предыдущей команды, какой может быть следующая команда? Так что есть группировка или иерархия, где вы говорите, каждый раз, когда пользователь выполняет ls или каждый раз, когда пользователь переходит в этот каталог. Так что позвольте мне на самом деле нажать Command K. Так что вы видите, что Command K очистил мое текущее предложение. Так что ответ — да. Он делает это. Но углубляясь в то, как это работает. он будет смотреть на предыдущую команду и проходить через своего рода поиск, чтобы выяснить, хорошо, он только что перешел в этот каталог. Так что, если я перейду в этого парня, который является нашим текущим проектом, над которым мы будем работать сегодня, вы увидите, что первое, что он обычно запускает, когда переходит в этот каталог, — это Claude. Так что позвольте мне предложить Claude этому пользователю. И тогда это появится здесь. Если вы отклоните его или нажмете Command K, это предложение исчезнет. Так что да, он очистит все, что было основано на этом, но это не обязательно пересчитывается для каждой команды в сессии. Это всегда основано на графе поиска предыдущих команд, чтобы выяснить это, если это имеет смысл. Хорошо. Так что вы не получаете фильтр, когда находитесь в SSH-сессии. Это отличный момент. Я не пробовал делать это в SSH-сессии, честно говоря. Так что это хорошо знать. На самом деле нет опции фильтрации. Я бы ожидал, что она будет. Если ее нет, это либо хороший запрос на функцию, либо отчет об ошибке. Я сообщу, если хотите. У нас есть открытый репозиторий GitHub. Терминал Warp полностью открыт. Я должен упомянуть это. Так что, если вы хотите перейти туда и предложить, эй, я не вижу опции фильтрации SSH. Вот моя настройка. Вот моя версия ОС и версия системы. Мы можем запустить наш триажный агент, чтобы просто просмотреть ее, исследовать и выяснить, почему это происходит, что дает инженерам огромное преимущество. Так что, если вы хотите перейти туда и создать проблему с информацией о вашей системе, мы можем попытаться включить ее, потому что было бы неплохо иметь фильтрацию в SSH-средах. Можем ли мы запускать Warp в облаке и получать к нему доступ через телефон и планшет для удаленной разработки? Распространенный вопрос. Так что ответ — да, но он еще не такой функциональный, как мы хотим. Так что позвольте мне показать вам, что вы можете сделать с удаленными средами, перейдя к некоторым кодирующим агентам. Так что позвольте мне продолжить работу над Rails, демонстрируя кодирующих агентов, и я расскажу об удаленной разработке, потому что у нас есть что-то для этого, что работает довольно хорошо. Хорошо. Так что позвольте мне сначала открыть проект, над которым мы будем работать. Это репозиторий GitHub, который мы используем на всех этих стримах для тестирования кодирующих агентов, чтобы мы могли изучить все функции и все способы их использования. И если вы хотите следить за этим в своем собственном терминале Warp, если он у вас открыт во время просмотра этого прямого эфира, вы можете клонировать этот репозиторий GitHub и попробовать сделать что-то из этого вместе со мной, если хотите. Это довольно простой проект. Это приложение на основе терминала или TUI, что означает, что вам не нужен браузер или что-то еще, чтобы агент использовал его и тестировал свою работу. Именно поэтому мы построили его таким образом. И все, что вам нужно, это Rust. Забавный факт: Warp — это терминал, написанный на Rust. Так что, конечно, демо также должно было быть на Rust. Если у вас не установлен Rust на вашей машине, довольно легко спросить агента: "Эй, установи Rust последней версии", и с этого момента вы сможете установить и запустить приложение. И это просмотрщик проблем GitHub. Так что вы вводите репозиторий GitHub, например, warp.dewarp, и он выводит все проблемы для этого репозитория GitHub. Так что вот что мы будем делать. И в этом репозитории есть несколько ошибок намеренно. Вы можете посмотреть ветку решения, чтобы увидеть, как это должно работать, и основную ветку, если вы хотите что-то, с чем мы можем поиграть. Так что вот что мы будем делать здесь. Теперь я также покажу удаленное управление. Так что не отключайтесь, сэр. Мы поговорим об этом. Но прежде чем мы начнем, я хочу спросить вас, какого кодирующего агента вы обычно используете для таких вещей, чтобы я мог убедиться, что я демонстрирую то, что вы используете. Так что в чате дайте мне единицу, если вы используете Claude Code для большинства своих кодирований, двойку, если вы используете Codex для большинства своих кодирований, тройку, если вы используете агент Warp для кодирования, и, возможно, четверку, если вы используете смесь всего этого. Итак, один для Claude Code, два для Codex, три для агента Warp, и четыре, если вы просто используете кучу разных вещей. Я лично четверка. Буду честен. Большую часть времени я использую Codex. Но я всегда люблю спрашивать. Ответ довольно предсказуем, но, возможно, однажды мы получим другой расклад. Так что посмотрим. Я выпью глоток воды, пока вы думаете об этом. Пока не вижу никаких голосов за Pi. Мне следовало спросить о Pi как о кросс-проектном оркестраторе. Мне очень интересно, какая у вас настройка. AMP и Codex. Хорошо. Нет, у нас сегодня довольно экзотичное использование. Я никогда не слышал об AMP в аудитории. Это круто. Pi. Я лично большой поклонник Pi. Я недавно пробовал его использовать, и мне особенно нравится функция дерева, где вы можете вернуться во времени к разным частям разговора. Никто другой не сделал это полностью правильно. Даже агент Warp, я думаю, мог бы сделать лучше, но Pi чертовски хорошо справился. Так что у нас есть Claude Code, все больше и больше Codeex. Ладно, это круто. Так что, я думаю, упомянуты все основные платформы. [смех] На самом деле нет предпочтений. Это интересный расклад. Мы можем делать что угодно. Ну, учитывая это, я думаю, я буду использовать Codex сегодня, просто потому что вы дали мне разрешение. Я всегда начинаю с Claude. На самом деле, вы видели там, первое предложенное действие, когда я сюда зашел, было Claude, но сегодня мы можем использовать Codex. Так что это довольно весело. И я также использую режим YOLO, потому что я не думаю, что настроил разрешения на песочницу так, как мне нравится на этой машине. Так что позвольте мне сделать это. И я пропущу обновление. Похоже, это незначительная версия. Хорошо. Итак, мы будем использовать Codex. Я также установил его в быстрый режим, чтобы мы могли быстро проходить через вещи. Как насчет этого? И вы также заметите здесь сразу же, вот как это выглядит, когда вы используете Codex здесь. О, вопрос о рабочих каталогах. Я только что опубликовал видео об этом, и мы поговорим о рабочих каталогах на этом стриме. Да, я обязательно убежусь, что мы это тоже рассмотрим. Так что ответ — Warp имеет встроенное решение для рабочих каталогов, которое действительно расширяемо и очень приятно. По моему опыту, оно как бы заменяет необходимость в дирижере, потому что оно просто делает это для вас в самом терминале. Так что мы поговорим о рабочих каталогах, но сначала давайте начнем задачу. Итак, общий обзор здесь, когда вы запускаете кодирующего агента в Warp, вы получаете все обычные выходные данные терминала для того, что делает этот агент, но вы также получаете этот набор инструментов внизу. И позвольте мне немного уменьшить масштаб до моего обычного уровня масштабирования. Вот как это выглядит. Так что этот набор инструментов дает вам всевозможные опции для использования агента с дополнительными опциями. Так что вы заметите, что у вас есть обычное отображение каталога и ветки. Так что вам не нужно обновлять строку состояния для вашего агента. Warp позаботится об этом за вас. Довольно приятно. У вас также есть некоторые опции здесь, чтобы поиграть с файловым браузером, например. У вас также есть опция перевести его на удаленную среду. Так что, отвечая на предыдущий вопрос: можем ли мы получить доступ к запускам с телефона или планшета? Ответ — да. Вы можете использовать удаленное управление, чтобы поместить сессию в ссылку, доступную в облаке, а затем вы можете открыть ее в веб-браузере на любом устройстве, включая ваш телефон. Так что мы сделаем это тоже. У вас также есть некоторые опции, такие как отладка работы агента. Так что есть кнопка обзора кода. Это позволит вам открыть панель обзора кода, чтобы увидеть все изменения, которые были внесены. У вас также есть файловый браузер. По-видимому, для вашего терминала иметь встроенный файловый браузер — это спорно, но мы это делаем, потому что это очень полезно для предоставления контекста агенту или чему-либо еще. Так что у вас есть файловый браузер, вы можете перетаскивать вещи в сессию, и он вставит полный путь, что очень приятно. Так что, если вы пишете длинные подсказки, вам нужно сослаться на данный файл, у вас есть это. У вас также есть глобальный поиск. Так что, если вы хотите искать определенные символы, это работает так, как вы ожидаете, используя rip grep, и вы получаете все результаты. Еще одна классная вещь — вы можете открывать файлы. Так что, если я хочу посмотреть файл, над которым работает агент, я могу щелкнуть по этому, и вы получите просмотрщик файлов и редактор файлов в самом терминале с поддержкой LSP. Так что, если вы искали терминал, который может отвлечь вас от VS Code, это, наконец, терминал для этого, вероятно. Потому что вы можете просто использовать кодирующих агентов так же, как и все остальное. Но если вы хотите погрузиться в больше функций в стиле IDE, у нас есть файловый браузер. У нас есть поддержка LSP. Это означает, что вы можете наводить курсор на вещи и получать инференс. Вы можете нажать Command, чтобы перейти к определению. Так что, если я щелкну по этому, мы можем увидеть все использования этой функции. Так что здесь мы можем увидеть, где используется app.refresh. Очень приятно. Честно говоря, я использую этот редактор в основном для просмотра выходных данных агента и иногда для использования кнопки "перейти к определению", чтобы увидеть, что сделал агент, или понять функцию, которую агент вывел в поле зрения. Так что я могу нажать Command на refresh и увидеть определение, очевидно. Это очень приятно. И для очень мелких правок, таких как редактирование комментариев к документации или тому подобного, вы, конечно, можете просто редактировать буфер в строке, сохранить его, а затем сохранить его таким образом. Очень простые вещи. Так что у вас есть полные возможности редактирования файлов во время работы с агентом. Довольно круто. Последнее — уведомления. Так что, если вы хотите получать уведомления рабочего стола для Pi, для AMP, для любого из этих агентов, которые вы можете использовать, это работает со всеми ними. Он также будет отправлять вам уведомления в приложении, когда агент закончит работу. Так что, если вы переключились на другой рабочий каталог, например, и хотите увидеть, закончил ли мой агент Pi в этой другой вкладке? Это сработает. Он фактически уведомит вас в приложении. Или если вы находитесь в другом приложении, это будет уведомление рабочего стола. Я думаю, это работает как на Mac, так и на Windows. И вы также видите здесь инструкции по настройке плагина и тому подобного. Я просто закрою это, так как думаю, что оно настроено в этой версии. Так что я просто закрою это. И теперь мы можем поговорить с Codex, чтобы исправить несколько ошибок. Так что позвольте мне запустить приложение, чтобы увидеть, какие у нас есть ошибки, а затем мы сможем перейти к просьбе агента сделать что-то для нас. Так что я нажму Command D, чтобы создать разделенную панель. Кто-то спрашивал об этом в прошлый раз, поэтому я подумал, что стоит поделиться. Вы можете нажать Command D, чтобы открыть разделенную панель справа, или Command Shift D, чтобы открыть панель под тем, на чем вы сейчас сосредоточены. Вы также можете найти все опции в Warp с помощью Command P. По сути, сочетание клавиш для всего. Так что, если я найду "split pane", вы можете увидеть, о, вот как я разделяю панель справа. Вот сочетание клавиш. Вот как это сделать. Это своего рода меню Command K, но в Warp это Command P. Так что вот как вы получаете доступ к этому. Так что я собираюсь запустить эту команду. И вы заметите здесь, что она уже дает мне некоторые предложения. Я думаю, я сделаю это с warp.dev. Так что вы можете посмотреть все проблемы в репозитории Warp. Так что это наше приложение. Это то, над чем мы будем работать здесь. Оно откроется. Загрузка занимает много времени. Возможно, мы будем работать над кэшированием сегодня, чтобы улучшить скорость. И вы видите, что это очень простой просмотрщик. Так что мы смотрим на все проблемы в репозитории Warp. Я могу пролистывать их с помощью клавиш со стрелками. Довольно хорошо. Но вы заметите, что есть некоторые проблемы сразу. Во-первых, есть некоторые пробелы. Это на самом деле строки текста с низким контрастом. Он не уважает мою темную тему. Так что нам придется это исправить. Другая проблема заключается в том, что когда я начинаю пролистывать их и выхожу за пределы экрана, вид не прокручивается. Так что нам нужно исправить оба этих момента. Я собираюсь закрыть этот процесс и попросить Codex сделать это. Еще одна вещь, у нас есть голосовой режим. Так что, если вы используете агент, у которого нет голосового режима, Pi — нет. AMP, возможно, нет. Я не знаю в наши дни. И также Codex. Так что приятно иметь что-то встроенное. Это бесплатно, кстати. Вам не нужно подписываться ни на какие подписки или что-то в этом роде. Это Whisper Flow, но вы не платите. Так что, если я нажму на это, вы также можете нажать функциональную клавишу. Я хочу исправить пару ошибок в этом приложении. Давайте начнем с первой, которая заключается в том, что, когда я использую клавишу со стрелкой для прохождения по приложению, я не вижу, как обновляется позиция прокрутки в боковой панели, хотя текущая просматриваемая проблема обновляется. Так что я введу это в это поле. Приятно. Так что вы видите, что он понимает пунктуацию. Он добавил туда двоеточие. Он также склонен понимать такие термины, как Claude Code и Codex. Вы довольно привыкли к хорошему голосовому режиму в наши дни. Просто имейте в виду, что он там есть. Итак, скажем, для второй ошибки мы хотим начать рабочий каталог. Кстати, позвольте мне создать рабочий каталог, чтобы показать вам, как это работает. Так что позвольте мне закрыть эти другие задачи. Они нам не нужны. И если я хочу создать рабочий каталог, чтобы агент работал над второй задачей здесь, я могу нажать эту кнопку наверху. И вы заметите, что есть целый список опций, которые я могу сделать. Так что до сих пор мы просто использовали Command T, чтобы создать новую вкладку. Просто создайте терминал. Это по умолчанию. Но вы также можете создавать пользовательские конфигурации для выполнения определенных действий при открытии новой вкладки. Например, здесь у меня есть настроенная конфигурация для открытия рабочего каталога для этого проекта. Вы можете увидеть там, что это рабочий каталог, а затем имя проекта. Вы можете редактировать конфигурацию, чтобы увидеть все, что в ней содержится. Так что это на самом деле то, что она делает. Так что позвольте мне открыть этот файловый браузер немного шире. Вы можете увидеть, что это конфигурация, которая гласит: когда я открываю эту новую вкладку, я хочу, чтобы вы добавили новый рабочий каталог, и я также хочу, чтобы вы перешли в этот каталог, и я хочу, чтобы вы запустили Claude, как только вы туда попадете. И, конечно, вы можете делать все, что хотите. Например, если вы хотите запускать cargo fetch каждый раз, когда вы создаете новый рабочий каталог, или вы хотите скопировать переменные окружения, что очень распространено. Так что вы хотите скопировать файлы .env из другой ветки. Вы можете указать все команды bash, которые вы хотите выполнить при открытии этого рабочего каталога или сделать что-либо еще. И это также устанавливает рабочий каталог для этой панели. У вас также есть опция запрашивать определенные вещи, например, здесь он спросит меня имя рабочего каталога, прежде чем перейти туда. Очень крутые вещи. Так что у вас есть целый ряд опций здесь, чтобы сделать все, что вам нужно. Так что, скажем, например, в этой настройке я хочу установить Pi в качестве предпочитаемого агента. Так что каждый раз, когда я открываю новую вкладку, я хочу, чтобы она создавала этот рабочий каталог. Я хочу, чтобы меня спросили имя. Я хочу перейти в этот каталог. Я хочу получить все зависимости, а затем я хочу запустить Pi. Вы можете перечислить все это в командах здесь. И, кстати, это файл. Так что, если вы хотите попросить кодирующего агента написать этот файл для вас или редактировать этот файл со временем, он полностью доступен. Вы можете сделать это тоже. Но со всем этим настроенным вы можете создать новый рабочий каталог со всеми вашими спецификациями. Так что я могу щелкнуть по этому. Я могу щелкнуть "новый рабочий каталог". Он спросит меня имя рабочего каталога. Так что я назову это, что это? Мы исправим контраст текста. Так что мы исправим контраст текста. И тогда он сделает все эти вещи последовательно. Так что он перейдет в каталог, создаст новый рабочий каталог, сразу же переведет меня в Pi. Как это здорово? Так что вы можете делать все, что хотите, чтобы настроить вашу настройку рабочего каталога по своему вкусу. И есть также способ быстро настроить эти файлы конфигурации. Я знаю, что я показал вам более сложный файл. Вы, вероятно, думаете: "Ну, как вы создали этот файл в первую очередь? Как мне начать?" Ну, вы можете сделать это довольно легко с помощью этой "создать конфигурацию рабочего каталога". Это своего рода быстрый набор для быстрого создания одного из этих файлов конфигурации для любого проекта, над которым вы работаете. Например, я только что сделал эту супер-крутую настройку для создания рабочих каталогов в репозитории демо-онбординга. Но если я хочу сделать это для другого репозитория на моей машине, я могу щелкнуть эту кнопку добавления. Я могу перейти в "конфигурацию рабочего каталога". Я могу добавить новый репозиторий. Так что я могу выбрать все, что хочу здесь. Давайте сделаем warp server. Ну, на самом деле, давайте сделаем что-то открытое. Давайте сделаем numpy. Я думаю, он здесь. Так что, если я хочу создать настройку для постоянного создания рабочих каталогов в numpy, я могу это сделать. И теперь в этой конфигурации рабочего каталога у нас есть проекты numpy. Щелкнув по этому, будет выполнено стандартное поведение, которое Warp настроил. Так что теперь у меня есть новый файл конфигурации, настроенный для меня. Я могу настроить его как угодно. Этот файл конфигурации переходит в numpy. Он создает рабочий каталог со случайным именем. Это наш стандарт. Так что здесь он создал случайное имя рабочего каталога и перевел меня туда, и я готов к работе. И вы можете настроить это как угодно. Например, я могу щелкнуть по этому, отредактировать эту конфигурацию, и если я хочу изменить это, чтобы спросить меня имя, я мог бы изменить эту конфигурацию, чтобы сделать это. Я, вероятно, вернусь и посмотрю файл, чтобы убедиться, что я делаю это правильно. Я также могу добавить команду настройки. Я могу сказать, что я всегда хочу начинать с Codex для этого проекта по какой-то причине. Вы можете делать все, что хотите. Так что это своего рода учебник, чтобы быстро начать делать подобные вещи. Да. Так что это рабочие каталоги. Вот как вы можете настроить рабочий каталог и настроить его по своему вкусу. И теперь, когда я нахожусь в Pi, позвольте мне просто попросить Pi поработать над этим проектом. Как насчет этого? Итак, здесь мы работаем над контрастом текста. Я заметил проблему с контрастом текста в этом просмотрщике. Сейчас он использует стандартный серый цвет, но он должен использовать затемненную системную тему на всех точках касания. Так что я введу это. У нас есть голос для агента Pi. Очень круто. И теперь Pi будет работать над этим. Похоже, я использую 5.5 medium. Так что мы получим аналогичное качество выходных данных, вероятно, теперь, используя эту платформу. И у вас есть все те же опции. У вас все еще есть файловый браузер. У вас все еще есть голосовой режим, как я только что показал вам. У вас все еще есть ваш каталог и ветка. Так что вам не нужно размещать их здесь. Хотя, конечно, можете. [кашляет] Вы можете настроить Pi как угодно. Да, все это просто встроено. Довольно круто. Позвольте мне остановиться здесь и посмотреть, были ли какие-либо вопросы об этом. Есть еще один вопрос о облачных агентах Warp. Мы поговорим о Warp Cloud. Я думаю, нам определенно нужно. Как я могу эффективно интегрировать облачные агенты Warp в свой рабочий процесс от идеи до производства, включая передачу задач, тестирование, обзоры и развертывания? О, боже, это нагруженный вопрос о том, как я делаю все это. Так что я намекну на это. Мы еще даже не говорили о том, что Warp имеет облачные песочницы, но Warp также имеет облачные песочницы. Именно отсюда исходит этот вопрос. Так что после того, как мы закончим эту локальную сессию кодирования, я перейду к облачным агентам и постараюсь ответить на все, что смогу. Как насчет этого? Я использовал некоторое время, и мне очень нравятся встроенные уведомления от Warp, но я хотел бы, чтобы в случае поддержки каких-либо форков от Pi, которые в настоящее время еще не обнаружены автоматически. Мне интересно, что это значит. Так что форки, какие-то форки от Pi. Что вы хотите, чтобы он обнаруживал? Потому что я знаю, что в Pi вы можете вернуться к истории разговоров с помощью /tree. Это то, что я использую. Я не особо использую функцию форка. Я предполагаю, что есть также функция форка. Есть "создать новый форк из предыдущего сообщения пользователя". Это довольно круто. Так что, если я сделаю это, да, это просто создастся здесь. Так что вы хотите? Что еще вы хотели бы, чтобы Warp делал умно с функцией форка? Потому что я знаю, что Pi очень расширяем. Я уверен, что Warp сможет это сделать. Что бы вы ни просили, я уверен, что Warp сможет это сделать. Что бы вы хотели увидеть для форкинга, чего Warp не делает прямо сейчас? Мне просто интересно. О, и я уничтожил свою сессию, сделав это. [смех] Ой. Хорошо. Как мне вернуться к предыдущему? Я никогда не использовал форк. Я использовал только дерево. Как мне вернуться к предыдущей сессии, в которой я только что был? Могу ли я сделать возобновление? Я думаю. Да. Хорошо, я могу возобновить. Круто. Ладно, я вернулся. Мы так вернулись. Потрясающе. Я также думаю, что мне нужно немного изменить тему. Сейчас используется светлая тема, но это нормально, мы оставим ее. Хорошо. Теперь, теперь, когда мы выполнили пару задач по кодированию, я думаю, второе, о чем стоит поговорить, — это обзор работы. Так что у нас есть две вещи. Одна, которая выполнялась в корневом каталоге, одна, которая выполнялась в рабочем каталоге. И обе они завершены. Так что я посмотрю на код, чтобы увидеть, как он работает. Вы можете нажать "просмотреть изменения" в Warp. И это просто покажет вам все, что происходит. Так что это был прогон форматирования. Я полагаю, раньше он не был отформатирован, и он добавил render stateful widget. Это именно то, что я хотел. Так что я очень доволен этим, и я полностью упускаю из виду тот факт, что у Warp есть панель обзора кода. Как это круто? Так что, если вы хотите посмотреть все, что сделал агент, все это здесь. И вы также можете увидеть, о, он создал файл рабочего каталога. Так что это видно здесь. Так что вы видите заглушки no-ops. Вы также видите все файлы, которые в настоящее время находятся здесь. Расширить, свернуть. Вы можете развернуть на весь экран, чтобы получить дерево файлов. Так что это похоже на GitHub. Теперь, если вы хотите быстро переключаться между всеми отредактированными файлами, вы можете нажать эту кнопку, чтобы открыть файл напрямую. И, конечно, у меня узкий экран. Так что позвольте мне растянуть его. Это файл, на который ссылается этот обзор кода. Обзоры кода редактируются, кстати. Это не буферы только для чтения. Это полные буферы. Так что, если я хочу перейти сюда и удалить это, например, это приведет к повторному запуску LSP. Так что я ожидаю, что это вызовет ошибку. Может быть, нет. Я не знаю. Но да, вы видите, вы можете просто отредактировать его, и тогда вы получите полные результаты в строке, что довольно круто. Вы также получаете подсказки при наведении, как и раньше. И последнее — это оставление комментариев. К сожалению, Codex справился отлично, поэтому я не думаю, что есть какие-либо комментарии, которые можно оставить. Но я просто закрою это, и я думаю, что с этой сессией все в порядке. Я также мог бы просто попросить его закоммитить код, если бы хотел, но я просто оставлю это. Теперь мы можем посмотреть на изменения, которые внес Pi. Та же панель обзора кода. Она не привязана к какому-либо конкретному агенту. Это просто Git. Так что вот все изменения, которые он внес для модификаторов. Так что здесь было сделано немного больше. Вы можете использовать это сочетание клавиш Command Shift Enter, чтобы максимизировать его. Так что, если я хочу посмотреть

немного больше, возможно, сделать дерево файлов меньше. Я вижу, что оно извлечено в приглушенном стиле. Еще раз, я думаю, CodeX справился отлично. К сожалению, это выглядит довольно хорошо. [смех] Итак, он использует модификатор reversed. Мне на самом деле интересно, что это такое. Итак, я оставлю здесь комментарий. Что такое modifier first? Итак, вы можете оставить комментарий так же, как вы бы сделали это в приложении CodeX или что-то в этом роде, но вы можете отправить его любому агенту. Итак, здесь я отправлю его Pi, и это поместит его во входное поле для Pi, и это передаст достаточно контекста, чтобы агент мог ответить на это. И это работает с чем угодно. Так что AMP тоже работает с этим. Codex тоже работает с этим. Очень простые вещи. Так что, если вы смотрели на приложение CodeX и хотели что-то вроде панели обзора кода, опыта комментирования PR кода, но вам нравится Pi, но вам нравится код, написанный вручную, но вам нравится то, что вы используете, у вас есть это здесь. Мы принесли это любому агенту, которого вы используете. Это приятно. Итак, да, теперь перейдем к обзору. Modify reverses инвертирует видео. Он меняет местами передний и задний фон, используя тему терминала. Логично. Мне нравится. Позвольте мне проверить его работу. Итак, если вы нажмете Command T, он скопирует любую открытую директорию. Итак, я нажал Command T отсюда, и я уже нахожусь в рабочем дереве. Я заметил, что это проблема, когда я использую рабочую среду Claude code: я нахожусь внутри рабочего дерева. Я делаю все эти вещи с Claude code внутри рабочего дерева, а затем я думаю: где папка? Он создал рабочее дерево, но я не знаю, где оно. Так что мне нелегко запускать команды. Но внутри здесь, если вы просто нажмете Command T, вы автоматически окажетесь внутри этого рабочего дерева. Вам не нужно об этом думать. В этом прелесть использования вашего терминала для рабочих деревьев. Итак, я уже здесь. Я могу запустить cargo run, чтобы протестировать его. И да, вот что делает инверсия цвета. Это довольно круто. Нет, мне нравится это исправление. На самом деле он проделал отличную работу. Итак, да, это, пожалуй, все. CodeX хорош в кодировании. Поверите ли вы? Или GPT 5.5, я должен сказать. Итак, вот демонстрация использования всех локальных агентов для выполнения задач. Да, вы даже не занимаетесь кодированием с Warp. Мне это нравится. Итак, вы используете его для Hermes и продуктивной работы. Приятно. Да, потому что у Warp просто куча кликабельных кнопок, и вам не нужно ничего настраивать. У нас много людей, которые являются пользователями OpenClaw или Hermes, которые говорят: мне просто нужен хороший терминал на машине OpenClaw или Hermes, чтобы я мог запустить шлюз и задавать вопросы, если что-то сломается. Warp очень хорош для этого. И говоря об этом, я, вероятно, должен упомянуть, что Warp также является встроенным агентом. [смех] Итак, все, что мы делали до сих пор, просто использовало любой CLI, который вы случайно использовали. Позвольте мне показать, как выглядит агент Warp, потому что вам технически не нужно или вам не нужно запускать процесс, чтобы использовать агентов. Довольно легко вместо этого просто использовать встроенный режим Warp. Итак, вы видите внизу здесь есть ярлык для начала нового разговора с агентом. Так что вам не нужно запускать CLI. Вы можете просто начать задавать терминалу вопросы. Я делаю это все время, особенно если мне нужна помощь с командой, которая выдала ошибку или что-то в этом роде. Например, если я снова запущу cargo run, вы заметите, что здесь есть ошибка. Вы получаете предложение о том, о чем вы, возможно, захотите спросить агента. Этот довольно искусственный. Но я могу задать ему вопрос, например, как работает конфигурация? И вы заметите, что он автоматически определяет, что это вопрос, а не команда bash. Итак, я могу сказать: я хочу задать агенту вопрос о предыдущем выводе терминала. Я нажму на вывод терминала, чтобы он был прикреплен. А затем, когда я нажму Enter, агент подключится и ответит на вопрос о любой команде, которую я запустил. Это очень полезно для отладки Hermes или OpenClaw, например, потому что вы много переключаетесь между: я запустил команду, которая не сработала. Позвольте мне спросить агента об этом. О, агент исправил это. Теперь я снова запущу команду. Все еще не работает. Позвольте мне снова спросить агента об этом. Если вы когда-нибудь столкнетесь с таким сценарием, когда вы чередуете команды, которые вы запускали, и вопросы, которые у вас есть, Warp очень хорош для этого. Итак, здесь я запустил команду, получил ошибку, задал вопрос, и он направил ее к модели, которая, кстати, я пропускаю, как работает весь механизм Warp. Хорошо, 30-секундный обзор. Механизм Warp предоставляет вам доступ ко всем моделям, включая Frontier, а также к моделям с открытым весом. Вы можете оформить подписку Warp, чтобы получить небольшую скидку по сравнению со стоимостью API. Так что это будет дешевле, чем вводить ваш ключ API. Если вы хотите использовать полные подписки на CodeX, мы работаем над поддержкой этого. Мы надеемся, что это произойдет. Также, если вы хотите использовать свой собственный URL-адрес Open Router или свой собственный URL-адрес DeepSeek, это теперь поддерживается. Так что, если вы хотите использовать пользовательские маршрутизаторы и другие вещи в агенте Warp, вы можете это сделать. Это мои 30 секунд о ценах. Люди всегда спрашивают об этом. Но да, вот почему вы можете захотеть использовать агент Warp. Если у вас просто есть вопрос о команде, и вы не хотите запускать cla или щелкать правой кнопкой мыши и копировать вывод, и вы просто хотите задавать вопросы, запускать команды, задавать вопросы, запускать команды, вы можете это сделать. Вы заметите здесь, что я могу легко переключаться между запуском команды, задаванием вопроса агенту, запуском команды, задаванием вопроса агенту. Итак, я запустил команду, я задал вопрос на обычном английском языке, и он переключил меня в режим агента. Я снова запустил команду, он вернул меня в режим bash. И если я снова задам вопрос, он сделает это снова. Так что, если я хочу запустить work.dev, или, возможно, я неправильно ввожу флаги, что-то вроде этого, d-reo. Я мог бы сказать, что я хотел бы, чтобы это было-reo вместо этого. Он разумно автоматически определяет, является ли это вопросом, на который агент может ответить, или командой оболочки, которую он просто выполняет в строке. И агент увидит все это в полном контексте. Так что это сразу же: о, я просто внесу однострочное исправление. Вот и все. Теперь это st-reo. Вы хотите запустить его снова? Просто запустите его в терминале прямо здесь. Так что я могу просто запустить это. Напишите это. Теперь это работает. Посмотрите. Итак, если вы много занимаетесь DevOps, если вы работаете с шлюзами или отлаживаете вывод CLI, агент Warp очень хорош. Вы также можете просто использовать Warp буквально для всего на вашем компьютере, потому что я обнаружил, что это немного удобнее, чем запускать вывод CLI. Но да, просто показываю, как работает агент Warp. Он действительно хорош, особенно для отладки. Да, но очевидно, что он действительно хорош с любым агентом кодирования, который вы используете. Поэтому мы показываем их всех, а не только один или другой. Последнее, что я думаю, я должен поговорить о облачном режиме. Но я хочу снова сделать паузу, потому что я пронесся через все функции Warp, как товарный поезд, чтобы убедиться, что вы хотя бы осведомлены о них. Есть ли у кого-нибудь вопросы о том, что я показал, или о том, что они хотят увидеть дальше? Потому что я думаю, что мы закончим этим, поговорив немного о облаке. Мы поговорим немного о том, что Warp делает, если вам нужно запускать вещи в облаке. И позвольте мне снова открыть вопрос, чтобы я помнил его, потому что это хорошее резюме вещей, которые я, вероятно, должен осветить. Как я могу эффективно интегрировать облачные агенты Warp в мой рабочий процесс от идеи до производства, включая передачу задач, тестирование, обзоры и развертывание? Здесь много всего. Некоторые из которых я не знаю, что будет лучшей практикой. Так что я думаю, лучший способ показать вам — это показать рабочий процесс, который я использую, когда работаю с вещами в облаке, чтобы у вас было представление о том, что возможно, а затем, возможно, мы пройдемся по вопросам в обратном порядке. Итак, позвольте мне сделать это, и я также продемонстрирую оркестрацию одновременно. Хорошо. Итак, позвольте мне просто очистить все это. На самом деле, я открою новую директорию или новую сессию. Перейду в Warp, который является нашим проектом с открытым исходным кодом. Или на самом деле, нет, позвольте мне вернуться сюда. И я думаю, что все спрятано. Так что это хорошо. Я убежусь в этом, сделав это. Хотя я буквально вижу, что вывод diff хорош. И я покажу вам последнее, что вы можете сделать для агентов в облаке. О. О, подождите минутку. Я только что понял, прежде чем перейти к облаку, я собирался поговорить об удаленном управлении. Так что позвольте мне сделать это. Это вроде как детское облако. Это детский облачный режим вместо полнофункционального облачного режима. Итак, есть эта кнопка внизу для удаленного управления. Если тот парень, который спрашивал об удаленном управлении, смотрит, надеюсь, вы смотрите, вы можете нажать на эту кнопку в любой сессии, которую вы имеете в Warp, чтобы создать из нее веб-ссылку. Так что это начнет делиться моей сессией по веб-ссылке. И вы можете увидеть в этом меню общего доступа в правом верхнем углу, кто имеет к нему доступ. Итак, здесь все в моей компании могут просматривать, а все остальные по ссылке не имеют доступа. Но вы также можете изменить уровни доступа, если хотите, чтобы он был общедоступным или что-то в этом роде. А затем это просто сессия. Я могу даже получить QR-код, что очень удобно. Так что я могу скопировать эту ссылку и отправить ее себе по SMS и открыть на своем телефоне. Я могу перейти в свой веб-браузер и открыть ее там. Так что я открою это и надеюсь, что я вошел в Warp, чтобы я мог сразу же просмотреть его. Я не вошел. Хорошо, я вошел в другой браузер. Позвольте мне войти в этот. Итак, я открою это. Вот оно. Итак, здесь я открываю разговор Warp из этого терминала в моем браузере в Интернете. Так что я могу нажать "Просмотреть в Интернете". Это загрузит сессию. И это версия терминала Warp, скомпилированная для работы в вашем браузере. Он использует WebAssembly, что безумно. Так что вы получаете полный вывод этого агента Pi, но на экране, который также оптимизирован для мобильных устройств. Так что, если я сожму его, вы заметите, что он перерисовывается. И если вы на своем телефоне, вот примерно как это выглядит. У меня, очевидно, нет демонстрации экрана с моего телефона, поэтому вы этого не видите. Но теперь у нас есть общий вывод между двумя терминалами. Так что, если я начну вводить что-то, вы заметите, что ввод синхронизируется в реальном времени, что очень круто. И я также могу просто продолжать просить его что-то делать. Так что, если я скажу "закоммитить этот код", мы можем отслеживать этот вывод отсюда. Так что, если я отойду от своего ноутбука, отправлю себе веб-ссылку и буду отслеживать этого агента, пока он работает. Это работает. Вы просто получаете прямую трансляцию всего, что происходит. Он также интерактивен, я должен упомянуть. Так что, если вы нажмете на свой телефон, вы скажете: я хочу отредактировать то, что есть у этого агента Pi, вы можете это сделать. Так что, если я захочу сказать, ну, вы можете запустить команду, например, если я наберу bash ls, я думаю, что это просто запустит это. Вот оно. Я также могу сказать: создай для меня pull request для обзора. Так что теперь я могу со своего телефона попросить его создать pull request. И вот оно. Так что это вроде как самый простой шлюз для размещения агентов в облаке. На самом деле это не создание контейнера Docker или чего-то еще сложного. Это просто создание общей сессии. Так что, пока ваш компьютер включен, крышка вашего ноутбука не закрыта, он доступен. Вы можете заглянуть в эту сессию откуда угодно с некоторыми гранулярными разрешениями. Так что, вот оно. Теперь он откроет PR, и, возможно, я просмотрю этот PR со своего телефона. Очень просто. Но давайте поговорим немного о более сложном использовании облака. И я оставлю это работать в фоновом режиме. Если бы я хотел, например, запустить задачу локально, а затем иметь облачного агента, работающего над ней, чтобы я мог уйти. Я покажу вам, как это сделать. И я буду использовать функцию агента Warp, чтобы сделать это. Итак, мы говорили о CodeX, мы говорили о Pi. То, что я собираюсь показать вам, предупреждаю, это функция агента Warp. Так что вам нужно использовать агент Warp. Вам нужен либо подписка, либо пользовательский ключ или конечная точка, привязанная к этому механизму. Это очень похоже на Pi или Open Code в этом отношении. Это очень похоже на них, но вы также получаете все возможности, которые я показал внутри вашего терминала. Так что, если вы хорошо разбираетесь в использовании этого механизма, я могу рассказать вам немного об облачных вещах. Хотя мы работаем над поддержкой CodeX и облачного кода, я упомяну это. Итак, позвольте мне запустить здесь задачу, которая немного сложнее, и я просто запущу ее, а затем покажу вам, что происходит, когда мы проходим через нее. Итак, я собираюсь использовать эту модную команду под названием orchestrate, и к вопросу ранее об управлении рабочими процессами, такими как передача задач, от идеи до производства. Это то, что я бы посоветовал. Итак, используйте механизм Warp, используйте orchestrate, который является очень модной функцией, и я могу попросить его сделать что-то здесь. Я хочу настроить решение для кэширования. Я заметил, что каждый раз, когда я открываю Warp, он довольно медленно запускается, даже для репозиториев, которые я просматривал раньше. Я хочу, чтобы это был инкрементный кэш. Так что я хочу, чтобы он инкрементно извлекал новые проблемы, и я также хочу, чтобы он аннулировал этот кэш по временному интервалу. Кроме того, я хотел бы, мне нужно подумать, я пытаюсь сделать эту задачу достаточно сложной, чтобы мы могли фактически сгруппировать ее во что-то немного более сумасшедшее. Позвольте мне подумать. На самом деле, позвольте мне сделать что-то с репозиторием Warp. Позвольте мне сделать что-то сложное, потому что на самом деле цель здесь — показать, как выполнять более крупные рабочие процессы? Как делать более крупные вещи? Итак, позвольте мне запустить orchestrate на этом. Итак, я собираюсь попросить добавить новую функцию в Warp. Это немного сложнее. Я хочу добавить возможности фильтрации, когда я нахожусь в SSH-сессии. Сейчас я заметил, что когда я запускаю SSH, у меня нет переключателя фильтра для фильтрации вывода в рамках данной команды. Было бы здорово, если бы мы могли это поддержать. Итак, отвечая на ваш вопрос ранее, возможно, мы получим здесь раннюю функцию. Итак, я сейчас использую 4.8 Opus, последнюю и величайшую от Claude, чтобы увидеть, как она работает. Итак, мы будем использовать Orchestrate здесь, и он почему-то занимает некоторое время для запуска. Может быть, мне следует переключить модели. Что происходит? Давай, чувак. GPT 5.5 работал. Что мы делаем? Надеюсь, я все еще подключен к Интернету. Похоже, что да. Интересно. Странно. Я никогда не видел, чтобы он зависал так. Ну, теперь я могу показать вам еще одну полезную вещь, которая заключается в копировании и вставке подсказки правой кнопкой мыши. Так что, если я захочу начать новую сессию, Command Enter, чтобы перейти в режим агента, вставить эту подсказку из предыдущего, и теперь я переключусь на модель, которая работает быстрее. Позвольте мне использовать GPT5 на среднем или чем-то в этом роде. Мы используем там Orchestrate. Не уверен, что происходит. Я в некотором замешательстве относительно того, что происходит. Ладно, вот оно. Агент работает нормально. Opus сегодня кажется медленным. Итак, да, теперь агент проведет небольшое исследование этого отчета об ошибке. И здесь я могу показать вам, как вы можете планировать более сложную работу и передавать ее потенциально облачному агенту. Чтобы показать вам, почему вы можете захотеть сделать это, для чего нужны облачные агенты и как они работают. Итак, да, что он сделает здесь, это он пройдет по этому репозиторию, получит достаточно информации, чтобы выполнить задачу, а затем напишет документ планирования, так же, как вы получаете документ планирования с помощью CodeX в режиме плана или Cloud Code в режиме плана. У этого агента также есть режим планирования, но поскольку я использовал /orchestrate в начале, он сделает что-то очень модное. Он спланирует подход, но также предложит, как его отфильтровать и использовать оркестрацию. Очень странно, что он не создал документ планирования. Создай документ планирования с планом оркестрации. Также, первый раз, когда я вижу, что он этого не делает. [смех] доказательство того, что это живые демонстрации. Это не всегда работает так, как вы можете ожидать. Вот оно. Это документ планирования, который я ожидал увидеть. Я отправлю его команде. Я ожидал, что он будет создавать план все время, а не просто создавать его в строке, что нормально. Но я ожидал, что он сделает что-то немного умнее. Ладно, круто. Итак, вот как это выглядит. Итак, что мы сделали здесь, это мы спланировали немного работы с агентом. И вот где начинается самое интересное. Он разобьет задачу на части, возможно, один или два или три суб-агента могли бы работать над этим. И он также описывает в диаграмме Mermaid. Посмотрите. Он опишет в диаграмме Mermaid, как он будет разворачиваться и выполнять эту задачу. Итак, здесь он запустит несколько агентов. Один о фильтрации пользовательского интерфейса, один о пригодности сессии, фильтрации тестов. У него будет ведущий агент, который интегрирует все и подготовит его к обзору. Очень круто. И он также показывает здесь стратегию оркестрации. И вы можете выбрать, хотите ли вы использовать кучу рабочих деревьев. Так что раньше мы сами создавали кучу рабочих деревьев. Это автоматически создаст рабочие деревья для каждой из этих задач. Так что, если вы разбиваете что-то большее и не хотите выполнять всю ручную работу по делегированию, это автоматически делегирует вместо ручного выполнения. Или, если вы предпочитаете, вы также можете использовать облачные песочницы для каждого из этих запусков агентов. И это полезно, если вы, во-первых, хотите отойти от своей машины. Если это очень длинный рабочий процесс, который, по вашему мнению, займет около 30 минут или часа, приятно снять эту работу со своей машины. Отслеживайте ее из пользовательского интерфейса. У нас есть веб-приложение, где вы можете отслеживать все запуски облачных агентов, если вы занимаетесь этим. Так что это экономит процессорное время. Ваш компьютер не должен запускать всех агентов одновременно. Вы можете закрыть ноутбук, пойти на встречу, что бы вы ни пытались сделать. А затем вы можете вернуться и позволить локальному агенту просто собрать все вместе в единый рабочий процесс. Итак, здесь мы говорим: я хочу запустить кучу облачных агентов. Возможно, он предложил локальный, потому что это достаточно небольшая рабочая нагрузка, что он решил: я думаю, локальный, вероятно, будет лучшей стратегией. Но мы можем попросить его сделать все, что угодно. Так что, если я захочу сказать: мне нравится план, я думаю, мы должны использовать облачных агентов для реализации. Запустить. Это даст ему разрешение уйти и реализовать этот план. Здесь мы блокируем фильтрацию SSH и делегируем работу нескольким облачным песочницам в качестве стратегии передачи. И каждая из этих песочниц откроет черновик PR для своего собственного небольшого подхода, который вы можете просмотреть все из них по частям. Так что, если вы не хотите просматривать один большой вывод, вы можете фактически просмотреть все небольшие выводы. Итак, здесь он обновил план, чтобы использовать удаленный и облачный режим, а затем просто начинает настройку. Это действительно способ, которым я занимаюсь облачным делегированием. Так что, если вы слышали, что Warp поддерживает настройку облачных песочниц для вещей, но вы думаете: "Как мне это использовать? Как мне начать с этим?" Это самый простой способ. Вы просто просите агента запустить что-то в облаке, и он может это сделать. И теперь я могу нажать на каждую из них, и это будут все среды, где он работает. Так что все это работает в облаке. Я могу нажать на информационную панель, чтобы показать вам, что он делает. Итак, что он сделал, это он зашел сюда и открыл этот репозиторий здесь, project/warp, и я не уверен, правильно ли он настроен с окружением. Надеюсь, что да. Это было одно, что я забыл проверить. Правильно ли у него Docker-окружение? Нет. Так что он просто клонирует репозиторий. Ну, это достаточно умно. Но вы также можете настроить окружения так, чтобы набор инструментов был готов, как только он начнет. Но да, оркестрация очень, очень полезна. И вы заметите здесь, что все агенты работают, пока оркестратор просто ждет. Так что все они могут общаться друг с другом с помощью передачи сообщений. Так что Warp имеет примитив передачи сообщений, вроде как почтовый ящик, куда все агенты могут отправлять электронные письма друг другу. Мы настроили почтовый сервер, чтобы он мог отправлять сообщения туда и обратно, чтобы главный агент знал: о, этот агент закончил, или тот агент закончил. Мне нужно ждать следующего. Знаете, все, что ему нужно сделать. Он может это сделать. Он также может быть очень умным и сказать: я запущу два облачных агента, дождусь их завершения, затем запущу еще два облачных агента и дождусь их завершения. Это очень гибкий набор примитивов, которые мы предоставили агенту. И отсюда это просто тестирование и выяснение того, как сделать агентов наиболее эффективными. Потому что, конечно, есть затраты на токены, которые нужно учитывать. Есть всевозможные вещи, которые нужно учитывать. Но вот как это работает. Вы можете запускать агентов локально или в облаке, и вы можете использовать локального агента для разработки плана оркестрации. Это, пожалуй, лучший способ сделать это. Итак, если я Да, позвольте мне ответить на несколько вопросов здесь. Могу ли я в основном решить, какая модель для каждого суб-агента существует автоматически? Да, так что прямо сейчас, когда вы используете orchestrate, вы можете выбрать модель, но она установит модель для каждого суб-агента, что, вероятно, не то, что вы хотите. Это просто потому, что мы выпустили ее две недели назад, и нам нужно было спать, поэтому мы это убрали, но мы хотим этого. Так что будет способ изменить модель, которую использует каждый суб-агент. Прямо сейчас это просто: я хочу, чтобы все они были CodeX. Я хочу, чтобы все они были Claude. Я хочу, чтобы все они были чем угодно. Вы также можете настроить его на использование механизма Claude Code или CodeX, что довольно круто. Так что, если вы хотите, чтобы он использовал вашу подписку Anthropic и механизм Claude Code вместо механизма Warp, вы можете сделать это тоже. Мы просто работаем над гранулярностью прямо сейчас. Так что у них есть две учетные записи Claude Code и одна CodeX. Почему у вас две учетные записи Claude Code, мой друг? Могу ли я делегировать задачу самой лучшей модели? Опять же, как я упомянул там, мы работаем над разумным выбором моделей или механизмов для каждого суб-агента. Прямо сейчас это вроде как: я выбираю их все. Хорошо. Да, и это также было для общей сессии, которую я имел ранее. Позвольте мне остановить общий доступ к этой живой сессии. Вот оно. Но да, теперь мы приближаемся к концу трансляции. Я прошел через все, что хотел пройти здесь. Надеюсь, это дало вам хорошее представление обо всем, что может делать Warp. Мы коснулись буквально всего сегодня. Надеюсь, это не было слишком много информации. Это действительно было много. Но если вы ищете своего рода сокращенное руководство по всему этому, у нас есть некоторые учебные ресурсы, которые я могу вам дать. У нас также будет прямая трансляция на нашем YouTube, кстати. Так что, если вы просто хотите перейти прямо на наш YouTube и посмотреть ее в сессии прямой трансляции, вы, безусловно, можете это сделать. Это youtube.com/dev.warp.devstreams. Там будет доступна запись прямой трансляции. Также, боже мой, удвоение голоса. Если вы зайдете на Warp и просмотрите все это, вы также найдете ряд руководств, включая это, глубокое погружение в терминал Warp. Это, вероятно, то, что я бы посоветовал вам. Есть также руководство по агентам кодирования и конфигурации рабочего дерева. Если вы хотите просмотреть это, у нас есть это здесь. И, конечно же, облачные агенты. Так что это, пожалуй, лучший способ начать, если вы хотите более глубоко погрузиться во все три эти темы. Warp как терминал, Warp с агентами кодирования, а затем Warp с облаком. Все это есть. Мы не освещаем оркестрацию в этом видео. Нам, возможно, скоро понадобится новое. Но да, это, пожалуй, лучший учебный ресурс, если вы хотите немного глубже изучить все эти вещи. Есть ли у нас что-нибудь на New York City Tech Week? Нет, но должно быть. Если вы находитесь в Нью-Йорке и заинтересованы в проведении встречи, это, вероятно, шанс для меня поговорить о нашем сообществе Slack. У нас есть Slack, вы можете присоединиться к нему. Это лучший способ поговорить с нами и нашими инженерами, если вы заинтересованы или если мы должны спланировать встречу. Свяжитесь с нами. Свяжитесь с нами. Я нахожусь в районе Нью-Йорка. Было бы здорово что-нибудь сделать с людьми Warp там. Что это был за вопрос о плане сборки? Предполагается, что он будет отправлен моей модели. Мой вопрос, потому что я не полностью понимаю систему кредитов Warp. Да, так что это просто кредиты. Так что кредиты примерно соответствуют токенам. Так что это будет зависеть от модели, которую вы используете. Например, я обнаружил, что при использовании GPT для всего я использую гораздо меньше токенов, чем при использовании Opus для всего. Это примерно в 2 раза больше. Вы также можете использовать модели с открытым весом, и это еще больше сократит использование токенов. Но вы можете видеть использование кредитов во всех ваших разговорах. Так что, например, если я нажму на это. О, нет, это был тот, который я отменил. Есть ли у меня еще какие-нибудь разговоры? Позвольте мне посмотреть. Если я нажму Command Y, Command Y — это как вызвать историю ваших разговоров, кстати. Может быть, этот. Да, вы можете нажать на это внизу, чтобы увидеть, сколько кредитов вы использовали в настоящее время. Так что это своего рода видимость всей системы. Мы хотим гораздо большей детализации того, как используется использование токенов, откуда берется это использование кредитов, чтобы действительно помочь вам настроить это. Но вы можете увидеть прямо там, вы получаете это за задачу, и это будет основано на токенах. Вы также получаете разбивку для суб-агентов, если вы их используете. Так что примерно так это работает. Если вы задаетесь вопросом, чему это эквивалентно? Warp взимает с меня больше, чем при использовании собственного ключа? Ответ — нет. Warp — это небольшая субсидия на использование собственного ключа. Так что я бы считал это, я думаю, примерно на 10-15% снижением стоимости по сравнению с ключами API, которые, я признаю, подписка на CodeX сэкономит вам гораздо больше на использовании токенов в среднем. Это ближе к использованию токенов, которое вы получаете с ключом Claude и Open Code или чем-то в этом роде. Но вы можете использовать любую модель, вы можете использовать Open Router, если хотите использовать их систему маршрутизации, или DeepSeek или что-то в этом роде. И мы работаем над поддержкой того, что называется ACP, что может открыть возможность использования вашей подписки. Очень надеюсь на это. Я думаю, если мы сделаем это правильно, возможность использовать ваши существующие подписки будет решающим фактором для действительно начала работы. Но вот как это работает. Вот как работает план сборки. Это небольшая субсидия на стоимость токенов API. Но вы заметите разницу. Не буду приукрашивать. Да, Warp — это такой удивительный инструмент. Ну, спасибо, что пришли, и спасибо за доброту. Итак, да, я ценю, что вы все пришли. Опять же, присоединяйтесь к сообществу Slack. Я поделился этим в чате. Это лучшее место, чтобы поговорить с нашей командой. И, если вы хотите встретиться с нами на следующем мероприятии, у нас есть календарь Luma для всех прямых трансляций, которые мы проводим. Мы иногда проводим партнерские трансляции. Мы говорили с командой CodeX в прошлом. Мы говорили с одним из наших ведущих инженеров о том, как работает Warp. Это была действительно крутая трансляция. Так что, если вам интересно узнать о предстоящих мероприятиях Warp в календаре Warp, вы можете перейти по этой ссылке. О нет, это неправильная ссылка. Хорошо, одну секунду. luma.com/warp.dev. Вот она. Вот ссылка. И это даст вам полное представление обо всех мероприятиях, которые у нас проходят. Итак, да, спасибо всем большое за то, что присоединились. Надеюсь, увидимся на следующей трансляции, и оставайтесь классными.