Transcription
[Музыка] Если вы недостаточно использовали кодирование с помощью Cursor, вы, должно быть, сталкивались с проблемой, когда вы просите курсор внести небольшое изменение, но он просто перестраивает весь ваш проект, или курсор не знает обо всех зависимостях в вашей кодовой базе и внедряет что-то, что приводит к множеству ошибок.
Это очень распространённая проблема агентов AI-кодирования в целом, независимо от используемой платформы. Но есть один метод, который показывает многообещающие улучшения и позволит вашему курсору совершать гораздо меньше ошибок: предоставление вашему агенту AI-кодирования системы управления задачами. Это помогает ему понять общий план реализации, а также контролировать объём контекста, используемого на каждом этапе при выполнении конкретных задач.
Я смог построить полностью функциональную многопользовательскую онлайн-игру для рисования, где оба игрока могут нарисовать изображение заданной работы, и мы отправляем результат в GPT-4, где он смотрит на изображение, даёт оценку и выбирает победителя. И вся эта игра фактически создана Cursor за один проход, без особых правок, что совершенно невероятно. Поэтому сегодня я хочу показать вам свой рабочий процесс и как вы можете адаптировать его для своих проектов.
И прежде чем вы начнёте использовать любые из этих инструментов, которые я только что представил, люди уже давно используют хакерские методы управления задачами для повышения производительности. В основе этого лежит то, что вы просите Cursor разбить ваш сложный PRD на небольшие задачи и иметь документ, к которому Cursor может получить доступ для отслеживания и поддержания того, какие задачи предстоят и какие задачи уже выполнены.
Вот быстрый пример от Elle. Самая базовая реализация в вашем проекте Cursor заключается в создании правила Cursor, которое выглядит примерно так. В основном, правило, в котором вы говорите Cursor всегда обращаться к task.md для отслеживания того, какие задачи уже выполнены, а какие нет. С помощью этого мы можем просто создать файл task.md и дать запрос: «Я хочу создать приложение X, помогите мне разбить его на небольшие задачи нашего основного функционала и добавить их в task.md». Cursor создаст здесь список задач, и после того, как Cursor завершит каждую задачу, он просто вернётся и отметит эти задачи как выполненные. Таким образом, он имеет контекст общего плана реализации.
С этим методом уже очень помогает в выполнении сложных задач с помощью Cursor. Но такие инструменты, как Cloud Taskmaster и Boomerang Task от RuCode, добавляют ещё более сложные функции управления задачами в агенты AI-кодирования. Например, Taskmaster AI — это пакет командной строки, который вы можете запустить в Cursor, Windsurf Data, где он использует Cloud 3.7 или более продвинутую модель, чтобы просмотреть ваш PRD и разбить его на небольшие подзадачи, выполнив простую команду, например, taskmaster parse PRD.
И что действительно удивительно, так это то, что он разбивает задачи в логическом порядке, учитывая все зависимости между различными задачами. Таким образом, у вас не будет ситуации, когда Cursor реализует что-то, но требуются другие зависимости, которые ещё не реализованы. Он также имеет полезные команды, такие как анализ сложности, использующий Perplexity и Cloud, для анализа сложности каждой задачи, и если показатель сложности определённой задачи очень высок, он позволит вам дополнительно разбить эти задачи на ещё меньшие части. Уровень успеха в создании функционального приложения резко возрастает.
Boomerang Task от RuCode также делает что-то подобное. Он предоставляет агентам AI такие инструменты, как создание новых задач для разбиения сложного проекта на небольшие части и отслеживания прогресса. Эти инструменты полностью изменили мой рабочий процесс. Поэтому я быстро расскажу вам о своём новом лучшем методе рабочего процесса кодирования с помощью этих новых инструментов.
Но прежде чем мы углубимся в это, я знаю, что многие из вас пытаются создавать агентов AI для бизнеса. Но есть много подводных камней, в которые, как я видел, попадали люди при создании успешных агентов для производства. Поэтому я хочу познакомить вас с исследованием, проведённым HubSpot, где они опросили множество предприятий и стартапов, которые запускали агентов AI за последние 12 месяцев, чтобы понять, какие варианты использования агентов AI действительно принесли огромную деловую ценность и рентабельность инвестиций, а какие звучат красиво, но на самом деле очень сложно принести пользу, и какие сигналы заставляют клиентов вкладывать огромные бюджеты в покупку решений на основе агентов AI.
Они включают множество реальных историй успеха и излагают эти знания в рамках, которые вы можете использовать для создания своих следующих агентов: какие варианты использования лучше подходят для чат-ботов, а какие — для реальных агентов-автопилотов? Как определить, какая задача лучше подходит для агентов AI, а какая — для более традиционной автоматизации рабочих процессов, а также список распространённых проблем, с которыми сталкивались многие другие люди, включая меня самого, при развертывании агентов для производства, и лучшие методы решения этих проблем, например, лучшие методы создания интеграции с существующими системами.
Это помогло внести ясность во многие ошибки, которые я лично допустил. Поэтому, если вы планируете создавать агентов, я настоятельно рекомендую вам прочитать это, и это совершенно бесплатно. Я разместил ссылку в описании ниже, чтобы вы могли загрузить.
Теперь давайте поговорим о моём новом рабочем процессе AI-кодирования с системами управления задачами. Во-первых, давайте поговорим о функции Boomerang Task от RuCode. И если вы не знаете RuCode, RuCode можно считать открытым исходным кодом Cursor, который находится внутри Visual Studio Code. Он совершенно бесплатен в использовании. Всё, что вам нужно сделать, это просто предоставить свой собственный ключ энтропии, и он будет работать как любой другой агент AI-кодирования, который вы использовали.
Но что действительно здорово в RuCode, так это то, что в отличие от Cursor, где у вас есть только несколько предопределённых режимов агента, RuCode позволяет создавать свои собственные режимы. Например, по умолчанию они предоставляют агента-архитектора кодирования, который поможет вам в планировании, агента отладки, который поможет вам выяснить, где ошибка. Но вы также можете создавать пользовательские режимы, такие как режим Boomerang, который будет сосредоточен на планировании и разбивке плана на более мелкие управляемые части.
Представьте это как делегирование вашей работы специализированному помощнику. Каждая подзадача выполняется в собственном контексте. Таким образом, я могу выбрать настроенный мной режим Boomerang и сказать: «Помоги мне создать приложение для задач». Вверху вы можете видеть, что он будет отслеживать потребление токенов, а также общую сумму затрат на API, и он сначала делегирует задачу планирования агенту-архитектору, и этот агент-архитектор будет иметь этот системный запрос, где он будет постоянно согласовывать со мной требования, а затем начнёт планировать проект, разбивая его на конкретные функции, выясняя такие вещи, как пользовательские истории, ключевые функции, компоненты, структура проекта, управление состоянием и многое другое.
Таким образом, он имеет полное понимание всех зависимостей между различными функциями. Я могу дать отзыв на полпути, и как только план будет завершён и разбит на мелкие задачи, он может переключиться в режим кода, чтобы начать генерировать код, и агент кода начнёт выполнять различные задачи на основе плана, а затем завершит фактическое приложение для меня. И вы можете видеть, что результат здесь очень высокого качества, и в него даже встроена функциональность, где агент сможет запускать приложение в браузере, видеть результат для автоматизации тестирования. И с этим результатом уже лучше, чем то, что я получил из коробки от Cursor.
Но с другой стороны, Cloud Taskmaster интегрируется гораздо глубже в Cursor и Windsurf. Сначала давайте установим Taskmaster AI. Вы можете открыть терминал в любой папке и выполнить npm install -g taskmaster-ai. После завершения вы можете выполнить несколько разных команд. Одной из них будет taskmaster init. Это настроит проект внутри папки. Таким образом, вы можете просто выполнить taskmaster init напрямую. Но я бы посоветовал вам сначала настроить проект. Например, если вы создаёте проект Next.js с Chessen, вы можете просто выполнить эту команду. После завершения мы можем выполнить cursor my app. Внутри здесь мы можем выполнить taskmaster init. Это попросит имя проекта, и я просто назову его my app. Описание не имеет значения. Вы можете пропустить всё это и просто позволить ему настроить всё.
И что произойдёт сейчас, так это то, что слева вы сначала увидите, что он добавит несколько правил Cursor. Некоторые из них являются общими, например, это правило Cursor, в основном, учит Cursor, как он может добавлять новые правила Cursor. По мере углубления в реализацию вы можете попросить его задуматься и создать правила о допущенных им ошибках, например, и он будет следовать этим правилам для создания следующих правил Cursor, и это самосовершенствование — это в основном то же самое, оно пытается заставить Cursor делать это упреждающе, и пошаговый рабочий процесс — это то, где он учит Cursor всем командам, которые ему понадобятся, чтобы фактически проверить все задачи в бэклоге, и если вы используете Windsurf, то здесь также будет корень Windsurf в папке scripts, он предоставляет структуру того, как может выглядеть PRD, но самое важное, что у него будет этот файл v.exam example.
Вам нужно заменить этот ключ энтропии, а также ключ Perplexity здесь. Энтропия — это модель, которая будет использоваться для разбиения вашего PRD на небольшие задачи, и они также используют Perplexity для проведения некоторых исследований. Поэтому, если часть задачи использует новый пакет, который только что выпущен, он фактически будет использовать Perplexity для извлечения последних документов разработчика и включения их в информацию о задаче. Поэтому я рекомендую вам добавить оба API-ключа здесь, и как только вы это сделаете, мы можем начать создавать наш PRD.
Есть много разных способов создания PRD. Если вы уже находитесь в сообществе AI Builder Club, у вас будет доступ к таким инструментам, как 10x Coder, The Dev, которые помогут вам автоматически сгенерировать PRD и заполнить все пробелы для функций, о которых вы, возможно, не подумали. Поэтому, если вы уже в AI Builder Club, вы можете использовать этот инструмент, чтобы получить PRD здесь. Но если у вас нет доступа, вы также можете просто пообщаться с агентом Cursor, использовать его, чтобы помочь вам сгенерировать PRD. Например, я могу просто сказать: «Помоги мне создать онлайн-игру, похожую на Scribble, но вместо того, чтобы человек угадывал слово, это будет большая модель, угадывающая слово». В каждом раунде все пользователи получат одно и то же слово, и у них будет 60 секунд, чтобы нарисовать изображение. В конце все изображения будут отправлены в GPT-4, и он выберет, какое изображение наиболее близко к слову. Теперь сыграйте роль инженера-менеджера, помогите мне подумать, каковы основные функции реализации такой игры, и тогда он выдаст основные функции. Очевидно, я могу общаться туда и обратно, но как только я закончу, я могу просто сказать: «Отлично, теперь помоги мне создать требования к основным функциям MVP в prd.txt, используя пример prd.txt в качестве ссылки», который мы здесь показываем, и тогда вы увидите, что PRD был создан с большим количеством деталей, и я приму это.
Итак, теперь, когда у нас есть этот сгенерированный PRD, следующим шагом мы можем использовать эту команду taskmaster parse PRD для разбиения этого PRD на небольшие задачи, и именно здесь начинается мощь Taskmaster. Я сделаю это taskmaster parse PRD scripts/prd.txt. Хорошо, у меня была эта ошибка, просто нужно убедиться, что вы удалили этот пример, и давайте сделаем это снова. Теперь он начнёт создавать файлы задач на основе этого PRD, и вы увидите здесь, где у нас есть папка задач. В ней есть все задачи, созданные Taskmaster. Мы можем сделать taskmaster list, и это покажет вам список созданных задач.
Что действительно здорово в списке задач Taskmaster, так это то, что справа вы можете увидеть столбец зависимостей. При разбиении задач он фактически перечислит задачи в логическом порядке и обеспечит наличие чётко определённых зависимостей. Таким образом, при реализации он может реализовывать в правильном порядке. Между тем, есть также некоторые довольно полезные команды. У вас есть эта команда под названием analyze complexity. Что она делает, так это то, что я могу сделать taskmaster analyze complexity. Это, в основном, отправит все созданные мной задачи в Cloud 3.7, а также Perplexity. В основном, попросите его просто оценить, насколько сложно или трудно реализовать эту функцию. И как только это будет сделано, я могу сделать taskmaster complexity report. Он покажет мне оценку каждой задачи и её показатель сложности. Но что действительно полезно, так это то, что для сложных задач он также предоставляет запрос, который вы можете скопировать. В данный момент вы не можете напрямую скопировать это. Если пользовательский интерфейс просто сломается, но вы можете просто скопировать первый и перейти в отчёт о сложности и найти конкретный ID, который вот этот, и мы можем скопировать расширенный запрос.
Здесь он генерирует запрос: подробная техническая реализация компонента HTML5 Canvas, включая инструменты рисования, обработку ввода на всех устройствах. Я могу просто сделать это, и теперь он разбивает эту конкретную задачу на более мелкие. И как мы знаем, как только сложная задача разбивается на более мелкие, она с большей вероятностью завершится успешно без каких-либо ошибок. И вы можете продолжать делать это, добавив ещё одну для задачи номер пять. Вы поняли. В основном, вы можете выполнять этот процесс туда и обратно несколько раз, пока не будете довольны бэклогом здесь. Вы также можете делать такие вещи, как обновление. Поэтому, если позже вы решите изменить план, вы также можете сделать taskmaster update ID = 4 и prompt = something like make sure we use three.js. И что произойдёт, так это то, что как только вы дадите этот запрос, он фактически обновит весь план на основе этой новой инструкции, что очень-очень полезно. Но как только это будет сделано, вы можете сделать taskmaster list with subtasks. Это покажет все подзадачи здесь напрямую. Это упростит вам проверку всех задач здесь.
Вот и всё. Как только мы это сделаем, вы можете просто перейти к агенту Cursor и сказать: «Давайте начнём внедрять приложение на основе задач, которые мы создали с помощью Taskmaster. Давайте проверим следующую наиболее важную задачу». У вас может быть эта ошибка здесь, что он использует неправильную команду. Поэтому я просто скажу ему: «Не используйте script dev.js, используйте taskmaster вместо этого. Просто перечислите все созданные задачи и следуйте плану». Тогда он увидит план и решит реализовать сначала первый. И когда он работает над задачей, он также устанавливает статус этой задачи как «в процессе». И здесь, так как я фактически включил режим yolo Cursor, это означает, что он не спрашивал у меня разрешения на выполнение каких-либо командных строк, я могу просто выпить кофе и позволить ему сделать работу. И по завершении он отметит эту задачу как выполненную и перейдёт к следующей, выполнив taskmaster next. Но теперь, когда вы находитесь в режиме yolo, я думаю, что Cursor ограничит до 25 курсоров, если вы используете Cloud 3.7, но вы можете фактически включить Gemini 2.5 Pro Max. Это позволит вам пропустить это ограничение и просто сделать, например, 2002 курсора без каких-либо пауз здесь.
Ладно. На самом деле это довольно безумие. Он просто продолжает выполнять задачи одну за другой и генерирует целую кучу файлов, вероятно, несколько тысяч строк кода. И давайте просто запустим это сначала. Итак, я сделаю npm run dev. Хорошо. Если я попытаюсь открыть это, у него есть построение лобби и построение аутентификации. Поэтому я могу дать имя, выбрать аватар, начать играть, и мой пользователь был создан. Я могу установить, сколько у нас времени на рисование, сложность и является ли это публичной игрой или нет. Это довольно хорошо. Я могу создать, но хорошо, похоже, что фактическая игра внутри ещё не сделана, но это довольно впечатляет, сколько он смог сделать за один раз. И я могу вернуться, чтобы сделать taskmaster list with subtasks. Вы можете видеть, что он выполнил первые четыре задачи, но он не полностью завершил разработку игровой логики в мой компонент пользовательского интерфейса. Возможно, поэтому фактическая игровая комната не отображается. Поэтому я могу попросить его продолжить внедрение, но вы видели, что у меня была эта ошибка здесь, и затем я могу предложить ему сейчас исправить ошибки, которые он допустил, и создать новые правила Cursor, чтобы убедиться, что он не будет допускать таких ошибок снова.
Теперь вы можете видеть, что он фактически добавляет новые правила Cursor о маршрутизаторе приложений Next.js. Хотя по какой-то причине он фактически не создал контент, что немного странно, и принимает это. Поэтому сейчас я просто скопирую и вставлю вручную, мне, вероятно, придётся обновить правила Cursor, чтобы убедиться, что они будут сохранены правильно. Но теперь я продолжу задачу. Теперь давайте проверим, какая следующая задача должна быть выполнена до того момента, когда мы сможем быстро протестировать рисование.
После ещё 15 минут самостоятельного выполнения задачи я получил эту игру, которая в некоторой степени полностью функциональна, где я могу дать ей имя, выбрать свой аватар, начать играть, а также создать комнату под названием «Комната Джейсона». Я могу установить таймер, сколько времени люди могут рисовать, а также количество раундов, сложность, и если я создам комнату, другие люди также смогут увидеть созданную мною комнату. Нажмите «Присоединиться». Мы увидим несколько игроков в комнате. И если я начну это, у меня будет этот холст, где люди смогут начать рисовать, чтобы описать, что это за слово. В правом верхнем углу также есть таймер, показывающий, сколько времени осталось. И как только он закончит, он отправит оба результата в ChatGPT, и GPT посмотрит на изображение, даст описание и оценку, выберет победителя, чтобы получить очки, а затем перейдёт к следующему.
Это довольно удивительно, что он сам сделал целую многопользовательскую игру за 20 минут. Вот насколько вы можете повысить производительность, оснастив Cursor правильными системами управления задачами, и что действительно захватывает, так это то, что это только начало. Я могу себе представить, что эти инструменты и системы станут намного лучше через несколько месяцев. Я также взял интервью у создателя проекта Taskmaster, где он дал более подробный обзор лучших методов рабочего процесса для полного раскрытия потенциала Taskmaster и захватывающих вещей, над которыми они работают прямо сейчас. Если вас это заинтересовало, вы можете присоединиться к AI Builder Club, где я разместил полное интервью и рабочий процесс в сообществе, чтобы вы могли проверить, а также множество других знаний и советов от экспертов отрасли как для кодирования с помощью AI, так и для создания готовых к производству агентов AI.
И у вас также будет доступ к таким инструментам, как 10x Coder, The Dev, которые помогут вам сгенерировать надёжный PRD для Cursor, а также Next.js Boilerplate, который уже имеет все настройки бэкэнда платежей и базы данных, поэтому вы можете запустить свой SaaS всего за выходные. Я разместил ссылку в описании ниже, чтобы вы могли присоединиться, если вас это заинтересовало. Надеюсь, вам понравилось это видео. Я продолжу делиться новыми советами и рабочими процессами, которые я узнал.