Cyberpunk Terminal Background
_

_

Кто-то потратил $297 на API и выполнил работу, которая стоила бы $50,000 при аутсорсинге. Вот точная система.

01

SYSTEM FAILURE

Почему обычное AI-программирование ломается

Вы открываете Claude Code с идеей. Через 45 минут вы исправляете один и тот же баг в третий раз. AI забыл, что вы создавали. Контекст загрязнился.

CRITICAL ERROR: CONTEXT DEGRADATION

LLM работают авторегрессивно. По мере роста разговора модель теряет след инструкций, погребённых в истории. Качество ухудшается, даже когда вы не превысили лимит контекста.

Типичное решение — компрессия. Но компрессия приводит к потерям. Та инструкция, которую вы дали три промпта назад? Исчезла.

ERROR_LOG.txt

> Initializing session...

> Context loaded: 100%

> User prompt received.

> Generating code...

> Warning: Context window filling up.

> Warning: Hallucination detected.

> Error: Instruction #42 lost.

> Error: Regression in module A.

> SYSTEM CRASH

02

THE RALPH PROTOCOL

Техника Ralph полностью отказывается от компрессии. Каждая итерация цикла начинается с чистого листа.

GIT COMMIT

Единственная истина — это код в репозитории. История изменений сохраняется через коммиты, а не в контексте чата.

PRD.JSON

Файл состояния проекта. Определяет, что сделано, что нужно сделать дальше, и критерии приемки. Мозг операции.

PROGRESS.TXT

Журнал выводов и уроков. Агент читает его, чтобы не повторять ошибки, но не перегружает контекст всей историей.

SYSTEM ARCHITECTURE
Ralph Architecture Diagram
03

EXECUTION LOOP

Bash-цикл — это босс. Claude Code — это работник, который перезагружается каждую смену.

1

READ STATE

AI читает prd.json и progress.txt, чтобы понять текущую задачу и контекст.

2

EXECUTE TASK

Реализует ТОЛЬКО одну задачу с наивысшим приоритетом.

3

VERIFY & COMMIT

Запускает тесты. Если проходят — делает коммит и обновляет prd.json.

4

TERMINATE

Сессия убивается. Следующая итерация начинается с чистого листа.

ralph.sh
#!/bin/bash
set -e

MAX_ITERATIONS=${1:-10}
PROMPT_FILE="./prompt.md"
PRD_FILE="./prd.json"

for ((i=1; i<=MAX_ITERATIONS; i++)); do
  echo "=== Итерация Ralph $i из $MAX_ITERATIONS ==="
  OUTPUT=$(cat "$PROMPT_FILE" | claude --dangerously-skip-permissions -p)
  
  if echo "$OUTPUT" | grep -q "<promise>complete</promise>"; then
    echo "Все задачи завершены!"
    exit 0
  fi
done

echo "Достигнут максимум итераций."
prompt.md (excerpt)
Вы — автономный агент для программирования.

1. Прочитайте prd.json — найдите задачу с наивысшим приоритетом, где "passes": false
2. Реализуйте ТОЛЬКО эту задачу
3. Запустите: pnpm type-check && pnpm test
4. Если тесты проходят, закоммитьте изменение
5. Обновите prd.json — установите "passes": true
6. Добавьте выводы в progress.txt
7. Если все задачи завершены, выведите: <promise>complete</promise>

Работайте только над ОДНОЙ задачей за итерацию.
04

ECONOMICS

Математика эффективности

TRADITIONAL

$50,000

Аутсорсинг разработки

  • × Недели переговоров
  • × Медленные итерации
  • × Человеческий фактор
OPTIMAL

RALPH SYSTEM

$297

Затраты на API

  • 6 репозиториев за ночь
  • $10.42/час чистых затрат
  • Работает пока вы спите
05

DATA ARCHIVE

Полный транскрипт материала

LOG:001

Введение

Кто-то потратил $297 на API и выполнил работу, которая стоила бы $50,000 при аутсорсинге. Вот точная система.

На хакатоне YC команды создали 6 рабочих репозиториев за одну ночь. Джеффри Хантли, который изобрёл эту систему, создал целый язык программирования за 3 месяца, практически не прикасаясь к клавиатуре.

LOG:002

Что такое Ralph?

Техника называется Ralph. Это bash-цикл, который многократно запускает AI-агента для программирования, пока задача не будет выполнена.

while :; do cat PROMPT.md | claude-code ; done

Вот и всё. Пока вы спите, пока ужинаете — цикл продолжает работать. Он берёт задачу, создаёт код, проверяет работоспособность, делает коммит, берёт следующую задачу. Когда вы просыпаетесь — функции готовы.

LOG:003

Проблема контекста

Вы открываете Claude Code с идеей. Через 45 минут вы исправляете один и тот же баг в третий раз. AI забыл, что вы создавали. Контекст загрязнился.

Проблема в деградации контекста. LLM работают авторегрессивно. Они предсказывают следующий токен на основе всего предыдущего. По мере роста разговора модель теряет след инструкций, погребённых в истории.

Ralph полностью отказывается от компрессии. Каждая итерация цикла начинается с чистого листа. Чистый контекст. Никакой накопленной путаницы.

LOG:004

Архитектура памяти

Память хранится в трёх файлах:

  • 01. Git-коммиты = сам код
  • 02. progress.txt = выводы из текущего спринта
  • 03. prd.json = что сделано, что дальше

AI читает, что произошло, выбирает следующую задачу, реализует её, делает коммит, записывает выводы. Цикл запускается снова.

LOG:005

Рабочий процесс

Шаг 1: Опишите, что вы хотите

Говорите 2-3 минуты. Голосовой ввод отлично работает. "Я хочу, чтобы пользователи могли фильтровать задачи по приоритету..."

Шаг 2: Сгенерируйте prd.json

Используйте промпт для преобразования вашего PRD в формат Ralph. Каждая история должна быть завершаема за ОДНУ итерацию.

Шаг 3: Запустите Ralph

./ralph.sh 10. Отойдите. Проверьте через час.

LOG:006

Обратная связь

Агенту нужно знать, работает ли код. Без обратной связи он отмечает как завершённое то, что таковым не является.

Добавьте это в ваш промпт:

  • > Запустите: pnpm type-check (должен пройти)
  • > Запустите: pnpm test (должен пройти)
  • > Если задача UI: используйте инструмент браузера
  • > Только после этого обновите prd.json
LOG:007

Сдвиг парадигмы

Вы перестаёте писать код. Вы пишете требования, определяете критерии приемки, проверяете результат.

Продуктовый дизайнер, а не инженер. Понимание систем и требований теперь важнее скорости печати.