Снова на Hacker News, полгода спустя, с Auto-Pilot
Agent! снова на Hacker News в формате Show HN. Апрельская ветка была о нативной Mac-оболочке для кодинга; эта — об Auto-Pilot, цикле, управляемом целью, который продолжает запускать циклы, пока цель не достигнута, и об игре в стиле Mario Kart, которую он строит. Вот сам пост, что стоит за каждым его утверждением и где присоединиться к обсуждению.
Agent! сегодня снова на Hacker News в формате Show HN: Show HN: AgentiLoop Agent Mac GUI Agent Loop for macOS 14.6 or Later. Если у вас есть аккаунт на Hacker News, именно эта ветка — место, где можно задать вопросы, найти слабые места и рассказать нам, чего вы хотите от агента для Mac. Этот пост — расширенная версия текста заявки, с указанием источника для каждого утверждения в ней.
Исходный материал
Заявка короткая, поэтому приводим её целиком, цитируя запись на Hacker News:
Agent! впервые появился на Hacker News в апреле прошлого года. С тех пор многое изменилось. Недавно была разработана новая функция под названием Auto-Pilot. Ей задаётся цель, и она не остановится, пока цель не будет достигнута. Думайте об этом как о задачах на стероидах. Agent создаёт множество задач. Каждая задача называется циклом (Cycle). По умолчанию Auto-Pilot, запущенный через auto [цель], не имеет временных рамок. Agent! получает указание работать, пока цель не достигнута. У Auto-Pilot есть аварийный выключатель — кнопка «Stop All». Пользователь также может завершить только текущий цикл через auto stop или завершить всё через auto stop all. В ноябре пользователь сможет запускать несколько Auto-Pilot на одном проекте. А вкладка Auto-Pilot сможет автоматически порождать другие вкладки. Сейчас мы разрабатываем клон в духе Mario Kart под названием «GoKart», написанный на GoDot 4. На данный момент на разработку и улучшение игры записано более 20 часов. (перевод с английского)
Всё, что ниже, раскрывает по одному предложению из этого текста.
«Agent! впервые появился на Hacker News в апреле прошлого года»
Первая ветка — Agent — Native macOS coding IDE/harness от 16 апреля 2026 года: 83 очка и 54 комментария. Тогда приложение требовало macOS 26.4 и Apple silicon, поддерживало 17 LLM-провайдеров и подавалось в основном как оболочка для кодинга, которая также умеет управлять Mac-приложениями через Accessibility API. Обе ветки перечислены в разделе Отзывы этого сайта вместе с независимыми обзорами, вышедшими в промежутке.
С апреля: поддержка macOS 14.6 и Intel (история этого портирования), 23 провайдера, сжатие контекста, из которого можно восстановиться, CLI на Rust и Go для Mac, Windows и Linux, релиз первого числа каждого месяца и функция, о которой на самом деле и идёт речь в новой заявке.
«Ей задаётся цель, и она не остановится, пока цель не будет достигнута»
Auto-Pilot — это команда /auto в Agent! для Mac. Из раздела Auto-pilot в README: она запускает цикл задач в автономных циклах, на главной вкладке или любой LLM-вкладке, пока цель не достигнута, не исчерпан бюджет времени или вы не нажмёте Stop. Нет ни лимита на число циклов, ни ограничения итераций внутри цикла. Когда задача цикла завершается, а цель не достигнута, следующий цикл запускается автоматически.
| Команда | Что делает |
|---|---|
/auto <goal> | Работать над целью, пока LLM не сообщит, что она достигнута |
/auto 4h <goal> | То же, но остановиться через 4 часа (30m, 1.5h тоже работают) |
/auto | Сначала изучить проект, затем спросить у вас цель |
/auto history, /auto last, /auto #N | Показать прошлые цели, перезапустить последнюю или N-ю |
/auto status / /auto stop | Показать сессию или завершить её после текущего цикла |
«Думайте об этом как о задачах на стероидах» — верная ментальная модель. Каждый цикл и есть обычная задача Agent! с теми же инструментами, теми же ограничителями (чтение перед правкой, доказательства goal_state, чёрный список shell-команд) и тем же контрактом done(). Что добавляет Auto-Pilot — это обёртывающий цикл: сводка цикла дописывается в .agent/autopilot/progress.md внутри проекта и подаётся в промпт следующего цикла, так что каждый цикл начинается с чтения того, что предыдущие сделали, предположили и оставили незавершённым. Сессия заканчивается только тогда, когда LLM начинает свою итоговую сводку с AUTOPILOT: GOAL REACHED. Циклы, которые завершаются вообще без сводки — из-за ошибок или отмен, — никогда не завершают сессию; следующий цикл просто ждёт дольше: 15 секунд, затем 30, затем 60, вплоть до пяти минут.
«По умолчанию … не имеет временных рамок» — буквально так: /auto <goal> без длительности работает, пока цель не достигнута или вы его не остановите. Если нужен потолок, /auto 4h <goal> его даёт. Активные сессии также переживают перезапуск приложения. Выход из приложения или сбой ставит их на паузу, и при следующем запуске каждая возобновляется на своей вкладке со следующего цикла.
«У Auto-Pilot есть аварийный выключатель»
Три способа остановить, и делают они разное:
- Stop All (кнопка «Остановить всё») завершает каждую сессию Auto-Pilot на каждой вкладке и останавливает все запущенные задачи. В
RunStop.swiftкомментарий говорит об этом прямо: остановка одной задачи, по Esc или кнопке стоп, оставляет Auto-Pilot работать; Stop All его завершает. /auto stopзавершает сессию после окончания текущего цикла или немедленно, если вы между циклами. Текущему циклу дают дойти до конца./auto stop all(такжеstopallилиstop-all) — то же самое, что нажать Stop All, для тех, кто предпочитает не тянуться к мыши. Обрабатывается вAutoPilot.swiftпрямо перед/auto stop.
В заявке auto stop описан как завершающий «только текущий цикл». Более точная формулировка: он завершает сессию после текущего цикла; сам цикл доходит до естественного конца, и именно это сохраняет журнал прогресса и историю git чистыми.
«В ноябре … несколько Auto-Pilot на одном проекте»
Это та часть заявки, которая относится к планам, а не к выпущенным функциям, и стоит чётко разделить, что есть что. На сегодняшний день в ветке main репозитория Agent есть коммит под названием Auto-Pilot: multiple tabs per project — per-tab progress, shared registry, auto/forced git worktree isolation, shared memory from worktrees. Это фундамент: каждая вкладка ведёт собственный журнал прогресса, вкладки регистрируются друг у друга, а когда два Auto-Pilot иначе редактировали бы одни и те же файлы, они получают отдельные git worktree. В релиз это ещё не вошло; коммит появился после тега 1.1.87. Релизы выходят первого числа месяца, так что релиз 1 ноября — самое раннее, когда это может до вас дойти, а часть про «вкладку, порождающую другие вкладки», согласно заявке, запланирована на то же окно.
«Клон в духе Mario Kart под названием GoKart»
GoKart — проект, на который Auto-Pilot потратил большую часть своей жизни. Предыдущий пост подробно описывает первый день, прямо по журналу прогресса: Godot 4 установлен к циклу 1, выбрана собственная аркадная физика вместо VehicleBody3D, чтобы управление можно было покрыть юнит-тестами, искры дрифта и размытие при ускорении к циклу 2, трасса к циклу 3, предметы к циклу 4, зависание из-за случайного символа табуляции, Stop All и вторая сессия, которая поставила ограничение по времени perl -e 'alarm' на каждый запуск shell и затем выпустила пятнадцать функций подряд.
Он не остановился. Репозиторий GoKart прошёл путь от первого коммита в 12:39 1 октября до 71 коммита к вечеру 3 октября. Недавние коммиты читаются как чеклист Mario Kart 64: трафик в стиле Toad's Turnpike на Sunset Speedway, кроты в стиле Moo Moo Farm на Green Hills, титульный экран с живой демонстрацией, таблица результатов и нарисованное окно предмета на HUD. Каждый приходит с собственным файлом тестов и скриптом tools/*_check.gd, потому что модель по-прежнему не видит экран и должна доказывать наличие функции каким-то другим способом. «Более 20 часов» в заявке — это суммарное астрономическое время этих сессий. GoKart 0.0.1 можно скачать для macOS, Windows и Linux, если вы предпочитаете поиграть, а не читать.
О чём спросить в ветке
Если вы пришли с Hacker News, вот вопросы, на которые мы больше всего хотели бы там ответить:
- Как Auto-Pilot решает, что цель достигнута, и почему мы позволяем это заявить модели, а не фиксированной метрике.
- Что происходит, когда цикл идёт не так, и почему настоящая отмена — это git.
- Хорошая ли вообще идея — автономный цикл на вашем Mac, и что с этим делают ограничители.
Ветка находится по адресу news.ycombinator.com/item?id=49948810. Agent! 1.1.87 с Auto-Pilot доступен на странице релизов и в Homebrew: brew install --cask agentiloop-agent.