Ralph Loop by PageAI — воркфлоу

Цикл Ральфа для длинных задач: агент в песочнице Docker идет по списку задач из PRD, проверяет каждую тестами и коммитит, пока список не кончится

  • 333 ★ репозитория
  • Последний коммит
  • MIT
Воркфлоу

Широкий доступ

Почему такой уровень

  • Агент работает без запросов разрешений: правит код, ставит пакеты, запускает приложение и тесты и коммитит, а ограничивает его только песочница
  • Цикл идет часами и сутками и тратит лимиты подписки или деньги по ключу API на каждой итерации
  • Агент видит исходники и переменные окружения проекта: в примере из описания ему доступны ключи Supabase и Stripe
Все причины и проверки

pageai-pro/ralph-loop

Установка

В терминале, через SkillFoxx CLI

npx skillfoxx add workflows/ralph-loop-by-pageai

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

Другие способы установки

Доступ и проверки

Как мы проверяем

Широкий доступИнструмент может менять данные, выполнять команды или работать с секретами.

  • Агент работает без запросов разрешений: правит код, ставит пакеты, запускает приложение и тесты и коммитит, а ограничивает его только песочница
  • Цикл идет часами и сутками и тратит лимиты подписки или деньги по ключу API на каждой итерации
  • Агент видит исходники и переменные окружения проекта: в примере из описания ему доступны ключи Supabase и Stripe

Это чужой код. Посмотрите файлы в репозитории перед установкой.

Что делает

Ralph Loop — набор для автономной разработки: скрипт `ralph.sh` раз за разом запускает агента с чистым контекстом и заставляет его идти по списку задач, пока все не будет выполнено или не кончатся итерации. Команда `npx @pageai/ralph-loop` создает в проекте папку `.agent` с промптом, файлом задач, шаблонами, журналом и общими скиллами. Сначала вы описываете требования, а скилл `prd-creator` превращает их в PRD и разбивает на задачи: общая таблица в `tasks.json` и по файлу `TASK-{ID}.json` со шагами на каждую. На каждой итерации агент берет самую важную незавершенную задачу, выполняет ее шаги и пишет модульный тест, для задач интерфейса делает смоук-тест в Playwright и сохраняет снимок экрана. Дальше запускает `eslint --fix`, `prettier --write`, `tsc` и тесты по всему проекту. Когда все проходит, он отмечает задачу выполненной, дописывает журнал и делает коммит в формате Conventional Commits. Отправлять изменения в удаленный репозиторий (`git push`) промпт агенту запрещает. По умолчанию агент работает в Docker Sandboxes, изолированных микромашинах, и с режимом без запросов разрешений, ради которого песочница и нужна. Кроме Claude Code поддерживаются Codex, Copilot, Cursor, Gemini и OpenCode, их выбирают ключом `--agent`. Файл `.agent/STEERING.md` позволяет прямо во время работы вписать срочное дело, которое агент выполнит раньше задач. Статус агент сообщает метками: `COMPLETE`, `BLOCKED` или `DECIDE`, им соответствуют коды выхода 0, 2 и 3.

Для кого. Для разработчиков веб-приложений на TypeScript, которые хотят отдать агенту большой список задач на часы и сутки и получить коммиты с тестами.

Подходит, если

  • Есть требования или PRD на несколько десятков задач, и вы хотите прогнать их агентом без вашего участия на каждом шаге
  • Надо вести цикл в изолированной песочнице, а не в основной системе, потому что агент работает без запросов разрешений
  • Нужен след работы агента: журнал, снимки экрана, история вывода по каждой итерации и коммиты на каждую задачу
  • В середине прогона возник блокер, и нужно вписать срочное дело через `.agent/STEERING.md`
  • Проект уже на React, Next.js или TanStack с Vitest и Playwright, как предполагает набор

Не подходит, если

  • Нет автоматических тестов и нечем проверять работу агента: автор называет проверку условием, при котором цикл вообще работает
  • Вы не можете или не хотите ставить Docker Sandboxes и CLI `sbx`: скрипт рассчитан на них по умолчанию
  • Проект не на TypeScript: промпт и проверки привязаны к Playwright, Vitest, `tsc`, ESLint и Prettier, и их придется переписывать
  • Задач мало и они мелкие: накладные расходы на PRD, разбивку на задачи и песочницу окупаются только на большом списке
  • Вам нужен простой цикл без песочницы и готовых скиллов: в каталоге есть Ralph от snarktank

Пример запроса к агенту

Используй скилл prd-creator: вот требования к сервису учета расходов для фрилансеров на React и Supabase, составь PRD и список задач для Ralph

Ограничения

  • Скрипт предполагает установленные Playwright, Vitest, TypeScript, ESLint и Prettier. Для другого языка или фреймворка нужно править `.agent/PROMPT.md`: порты, команды запуска и проверки.
  • Нужны Docker Sandboxes и вход в агент. Авторизация через OAuth внутри песочницы иногда не сохраняется, тогда помогает ключ API, но автор считает его обычно более дорогим и не рекомендует.
  • Песочница по умолчанию блокирует исходящие запросы по HTTP и HTTPS. При сбое установки пакетов или вызова API доступ выдают командой `sbx policy allow network`, а полное снятие фильтра автор советует применять редко.
  • Автор просит проверять каждую задачу по отдельности до запуска цикла. Первая итерация уходит на подготовку песочницы, автор предупреждает о пяти минутах.
  • У проекта есть сайт с документацией и видеоразбор. Лицензия MIT.

Как отключить. Остановите цикл двойным Ctrl+C: Ralph остановит только песочницу текущего запуска. Затем удалите папку `.agent` и файл `ralph.sh` из проекта, а ненужную песочницу найдите по `sbx ls`. Коммиты, которые агент уже сделал, остаются в истории git.

Частые вопросы

Что делает каждая итерация цикла?

Агент находит самую важную задачу со статусом «не пройдена» в `.agent/tasks.json`, читает ее файл `TASK-{ID}.json`, выполняет шаги, запускает тесты, линтер и проверку типов, отмечает задачу, снимает скриншот и коммитит. Цикл повторяется, пока все задачи не пройдены или не достигнут предел итераций. По умолчанию их десять, число задают ключом `-n`.

Зачем нужна песочница Docker?

Агента просят включить режим без запросов разрешений, и автор объясняет, что ради этого песочница и нужна. Docker Sandboxes запускает агента в изолированной микромашине. Каждая сессия получает имя вида `ralph-<агент>-<папка>-<хэш>`, поэтому для разных агентов в одном проекте создаются отдельные песочницы.

Какие агенты поддерживаются?

Claude Code по умолчанию, а также Codex, Copilot, Cursor, Gemini и OpenCode. Агента выбирают ключом `--agent`, например `./ralph.sh --agent codex`. Дополнительные параметры агента передают после разделителя `--`, например `--model gpt-5.3-codex`.

Как вмешаться, если агент застрял?

Впишите срочное дело в `.agent/STEERING.md`. Агент проверяет файл на каждой итерации и, если там есть критическая работа, пропускает задачи и сначала выполняет ее. Если агенту нужна помощь человека, он выводит метку `BLOCKED` или `DECIDE` с пояснением, и цикл завершается кодом 2 или 3.

Какие скиллы идут в комплекте?

Тринадцать: `prd-creator`, `agent-browser`, `e2e-tester`, `frontend-testing`, `frontend-code-review`, `component-refactoring`, `shadcn`, `postgres`, `mysql`, `vitest-best-practices`, `vercel-react-best-practices`, `web-design-guidelines` и `skill-creator`. Они лежат в `.agent/skills/` и дублируются символьными ссылками для Claude Code, Codex, Cursor и общей папки `.agents`.

Что делать, если в песочнице не ставятся пакеты?

Выдать песочнице доступ к нужным доменам. Например, `sbx policy allow network <имя> "*.npmjs.org,github.com"` разрешает пакетные реестры и GitHub, а `sbx policy log` показывает историю соединений. Совпадение домена точное: поддомены нужно перечислять отдельно.

Обсуждение

Вопросов и отзывов пока нет.

Воркфлоу

Команда ralph повторяет один промпт для Claude Code, Codex, Cursor Agent или OpenCode, пока в ответе не появится метка завершения

CLIШирокий доступ1,9 тыс.Звезды репозитория

CLI-оркестратор, который прогоняет Claude Code, Codex, Gemini CLI и другие агенты по циклу до готовности задачи и блокирует неполную работу тестами и линтером

CLIРасширенный доступ3,2 тыс.Звезды репозитория

Автономное выполнение плана по задачам: каждая задача в свежем сеансе Claude Code или Codex, затем многопроходное ревью. Написан на Go

ВоркфлоуШирокий доступ1,5 тыс.Звезды репозитория

Один рантайм для Claude Code, Codex, OpenCode и других: работа принята, только если пройдены проверки, которые агент не писал

CLIШирокий доступ601Звезды репозитория

Личный набор автора для Claude Code: команды мета-промптов и заметок на потом, скиллы для создания скиллов, хуков и MCP-серверов, аудиторы и цикл Ральфа

ПлагинШирокий доступ2 тыс.Звезды репозитория

Команда ИИ-агентов по одному запросу: планирует задачу, пишет код в параллельных ветках, тестирует, проверяет и открывает пull request

ВоркфлоуШирокий доступ1,1 тыс.Звезды репозитория

Сравнение с похожими

Записи с тем же главным запросом: чем они отличаются.

ЗаписьОфициальныйАвторизацияЗвезды репозиторияГлавное отличие
Ralph Loop by PageAI (эта запись)нет333
Ralphнет22 083Bash-цикл, который заново запускает Claude Code или Amp с чистым контекстом, пока все истории из PRD не пройдут проверки, и два скилла для PRD
Ralphyнет2 981CLI, который прогоняет Claude Code, Codex, OpenCode и другие агенты циклом по списку задач или PRD, пока все не будет сделано
Ralph Orchestratorнетне нужна3 190CLI-оркестратор, который прогоняет Claude Code, Codex, Gemini CLI и другие агенты по циклу до готовности задачи и блокирует неполную работу тестами и линтером

Коротко о README

Описание ведет по четырем шагам: подготовка проекта, установка Ralph, создание PRD и задач, настройка агента в Docker Sandboxes и запуск. Дальше идут ключи скрипта, принцип работы итерации, сравнение с другими реализациями цикла, управление через файл срочных дел, метки статуса и коды выхода, структура папки `.agent`, список скиллов и рекомендуемые настройки Playwright и Vitest. Раздел отладки объясняет, как зайти в песочницу, выдать ей доступ в сеть и перейти на ключи API. Рядом лежат скрипты на Bash с общей библиотекой и файл `RALPH.md`.

Бейдж для README

Сообщить о проблеме

Foxx AIRalph Loop by PageAI
Foxx AI

Я Foxx AI и уже разобрал этот инструмент. Спросите про установку, настройку или что угодно еще, отвечу простыми словами.