24 години неухильної праці: Чи здатен ШІ-розробник створити клон Claude.ai?
Минулого тижня мій друг-розробник, втомлено потираючи очі, озвучив думку, яка змусила мене задуматися: “Уяви собі можливість просто сформулювати завдання для комп’ютера, а він сам, без зупинки, цілодобово працюватиме над ним, а потім видасть: “Готово!””. Спершу це видалося мені сюжетом з наукової фантастики. Та згодом я згадав про останні розробки від Anthropic – компанії, що стоїть за потужним ШІ Claude. Вони презентували відкриту систему, “стремено” (harness), для створення “довготривалих агентів”.
Це нагадує командний центр для ШІ-розробників, тільки замість людей – програмні агенти. Вони можуть працювати годинами, а то й добами, над єдиним масштабним завданням, не “вигораючи” та не перевантажуючи свою “оперативну пам’ять”. Секрет криється в тому, що ці задачі розбиваються на дрібніші частини, і різні агенти, кожен зі своїм “контекстним вікном”, працюють над ними паралельно. Звучить складно? Насправді, коли розберешся, то все доволі елегантно.
І отут виникла ідея: а що, якби ми взяли цю “стремено” від Anthropic, “заправили” її українським кодом (ну, майже, адже це буде український блогер, який робить огляд коду), і дали їй працювати 24 години без зупинок? Подивитись, що з цього вийде. Я розумію, це звучить як питання з рубрики “чи зможе робот написати симфонію”, але я впевнений, що за такою моделлю далекоглядної роботи ШІ – наше найближче майбутнє. Подумайте тільки: стартап нового застосунку запускається на ніч, а зранку ви отримуєте готовий прототип, на який можете спиратися. Або кодинг відбувається у фоновому режимі, поки ви смакуєте ранкову каву.
Тож, озброюйтеся терпінням і, можливо, чашкою міцної кави, адже ми вирушаємо у захопливу подорож світом автономного кодингу. Я спробую з’ясувати, чи дійсно ця “стремено” працює, як обіцяють, і чи здатний штучний інтелект, за наявності правильних інструментів та часу, створити щось справді вражаюче.
Кіт чи Космонавт? Розбираємося, що таке “Стремено” для ШІ-агентів
Уявіть собі… ні, не кота. Уявіть собі досвідчену бригаду будівельників, яка має звести будинок. Кожен – фахівець: хтось зводить стіни, хтось укладає дах, хтось відповідає за електрику. Але вони працюють злагоджено, спілкуючись між собою, передаючи результати роботи, і загалом, кожен розуміє, що робити далі. Ось приблизно так працює система “довготривалих агентів” з “очисним шаром”, або, як його називають розробники, “harness”.
Це не один космічний корабель, що летить до Марса. Це ціла флотилія менших кораблів, кожен з яких має своє завдання: один досліджує атмосферу, інший – поверхню, третій – збирає зразки. І ось ця “стремено” – це той координаційний центр, який розподіляє завдання, збирає інформацію від усіх кораблів та слідкує, щоб вони не потрапили в одну “чорну діру” – тобто, не перевантажили свою “оперативну пам’ять”, або, як кажуть у технічному світі, “контекстне вікно”.
Цікавий факт: Кожна велика ШІ-модель має обмежений обсяг інформації, яку вона може “утримувати в голові” одночасно. Це як студент, котрий здатен зосередитись лише на певній кількості формул під час лекції. “Стремено” допомагає обійти це обмеження, розбиваючи великі завдання на менші шматки, які поміщаються в це “вікно”.
Від Ідеї до Коду: Як Розпочати Роботу з “Цементною Сумішшю” Майбутнього
Отже, у нас є наша “стремено”. Що далі? Не можна просто так сказати: “Зроби мені додаток!”. Необхідний план. І цим планом у випадку з “довготривалими агентами” є файл app_spec.txt. Це як технічне завдання для будівельників, або, як говорять у IT-середовищі, PRD (Product Requirements Document – документ з вимогами до продукту). Тут ми максимально детально описуємо, ЩО саме хочемо отримати.
Цей документ стає першою “порцією” інформації для першого агента – “ініціалізатора”. Його завдання – не будувати саме застосунок, а підготувати весь “будівельний майданчик”. Коли він завершить, сам він ще нічого працювати не буде, але створить чотири ключові речі, які потім стануть у нагоді для “кодинг-агентів”:
- Список функцій (feature list JSON): Це величезний перелік усіх завдань, які необхідно виконати. У нашому випадку, це понад 200 тестів, які треба пройти, щоб застосунок вважався готовим. Так, 200 – це багато, але ми ж експериментуємо, чи не так? Цей список розбиває глобальне завдання на найдрібніші деталі.
- Скрипт для ініціалізації проекту: Це як фундамент і каркас. Він запускає вебсайт, створює базову структуру проєкту.
- Ініціалізований Git-репозиторій: Git – це наш “журнал змін”, який дає змогу відстежувати кожне нововведення, повертатися до попередніх версій, якщо щось пішло не так. Для будь-якої роботи ШІ це надзвичайно важливо.
- Файл прогресу (progress file): Це як щоденний звіт бригадира. Він оновлюється після кожного виконаного завдання, коротко описуючи, що було зроблено. Це дає змогу наступному агенту “зловити хвилю” попереднього, навіть якщо він працює в абсолютно новому “контекстному вікні”.
Від Цегли до Даху: Як “Кодінг-Агенти” Безперервно Створюють Код
Після того, як “ініціалізатор” підготував “будівельний майданчик”, до роботи беруться “кодинг-агенти”. Це як основна бригада. Кожен агент отримує завдання, аналізує, що вже зроблено (завдяки “файлу прогресу” та “історії Git”), дивиться у “список функцій”, обирає наступне завдання, пише код, тестує його, документує зміни, і знову оновлює “файл прогресу”. І так – по колу!
Цикл роботи кодинг-агента:
- “Розвідка”: Агент “оглядається” – читає
app_spec,feature_list,progress_file,git log, щоб зрозуміти поточний стан проєкту. - “Запуск”: Запускає вебсайт за допомогою створеного скрипту.
- “Перевірка”: Здійснює регресійне тестування – перевіряє, чи ненароком попередні зміни не зламали вже зроблені функції. Це наче будівельники перед тим, як будувати наступний поверх, переконуються, що стіни першого ще стоять міцно.
- “Виконання”: Обирає наступну функцію зі списку (
feature_list), яку ще не реалізовано. - “Творення”: Пише код для цієї функції.
- “Тестування”: Перевіряє, чи нова функція працює коректно (включно із візуальною перевіркою через браузерний інструмент).
- “Звіт”: Оновлює
progress_fileінформацією про виконану роботу. - “Збереження”: Робить “коміт” у Git, щоб зафіксувати зміни.
І цей цикл повторюється, доки всі 200+ тестів у feature_list не стануть “зеленими”. Це як безкінечний конвеєр, де кожен наступний працівник спирається на роботу попереднього.
“Це як…” – Українські Порівняння, щоб Розуміти IT-Речі
Щоб вам було простіше уявити весь процес, наведемо приклади з нашого, українського, життя:
- “Стремено” для ШІ: Це як коли ви вирушаєте на великий ярмарок (велике завдання). Ви не бігаєте хаотично, а спочатку записуєтесь на майстер-клас (ініціалізація), отримуєте карту ярмарку з усіма локаціями (feature list), одягаєте зручний одяг (scaffolding), і йдете від продавця до продавця, купуючи потрібні речі (кодинг-агенти, що реалізують функції) та упаковуючи їх (git commitment).
- “Контекстне вікно”: Це як ваша пам’ять під час розмови. Ви пам’ятаєте, що говорили 5 хвилин тому, але навряд чи пригадаєте, що обідали позавчора. “Стремено” допомагає ШІ “перезавантажувати” свою пам’ять, спираючись на записані “нотатки” (progress file).
- “Регресійне тестування”: Уявіть, що ви будуєте дім. Ви встановили вікна. А потім, коли почали робити дах, один із будівельників випадково розбив вікно. Регресійне тестування – це коли ви перед тим, як зводити дах, переконуєтеся, що вікна цілі.
З Щоденника Розробника: Магія Python та SDK
Аби все це працювало, нам потрібні інструменти. І тут на допомогу приходить не просто командний рядок, а справжня магія програмування! Замість того, щоб тицяти по віконцях, ми взаємодіємо з Claude Code напряму через Python (або TypeScript) код. Це як мати пульт керування від цілого оркестру, а не просто одну кнопку!
Anthropic надає Claude Agent SDK – це наче набір інструментів для Python, що дає нам змогу створювати наших “кодинг-клієнтів” та керувати ними програмно. І це, друзі мої, реальний напрямок розвитку ШІ-кодингу. Коли ви можете програмно контролювати процес, створювати власні “стремена”, ви отримуєте величезну гнучкість.
Причому, ця “стремено” – це просто набір підказок (prompts) та файлів. Ви можете без проблем замінити Claude Code на інший ШІ, наприклад, CodeX або OpenCODE, якщо вони мають свої SDK. Це як мати універсальний шаблон, куди можна підставити будь-якого “шефа” на кухню.
Підготовка до Випробування: Від API-Ключа до “Токена Миру”
Перше ніж запустити наш 24-годинний експеримент, потрібно все налаштувати. Завантажуємо репозиторій з GitHub [посилання в описі]. Що мене приємно здивувало – процес підготовки дуже простий.
Гумористичне застереження: Я одразу відкинув ідею використання свого API-ключа від Anthropic. Знаєте, такі тривалі процеси можуть “з’їсти” багато токенів, а це потім виллється у кругленьку суму! Тому я скористався своїм підписником на Claude і встановив спеціальний “токен миру” (це не офіційна назва, звісно, але так він мені здався). Це робиться через команду claude setup-token, і потім цей токен встановлюється як змінна середовища CLAUDE_TOKEN. Чудова функція, яка дозволяє заощадити гроші!
Після цього, дотримуючись простих інструкцій у readme, ми готові до старту.
Старт! 24 години Нон-Стоп Кодингу: Починаємо з “Ініціалізатора”
Ми готові! Запускаємо команду autonomous-agent-demo. Нам пропонують вказати директорію, де буде створюватися наш проєкт. Ми використовуємо стандартний app_spec, який вже є в репозиторії, адже наша мета – створити клон Claude.ai, як це було показано в статті Anthropic.
“Запускаємося!” – і наш процес розпочинається з “ініціалізатора”. Це сесія №1. Ми бачимо, як ШІ генерує ті самі 200+ тестів. Це може тривати близько 10-20 хвилин, але усвідомлення того, що відбувається “під капотом”, цього варте.
Як це працює? Ми не використовуємо жодних команд чи інтерфейсів. Все генерується з файлів-підказок (.md), які завантажуються за допомогою Claude Agent SDK. Для “ініціалізатора” це одна підказка, а для всіх наступних “кодинг-агентів” – інша, трохи складніша.
- Підказка для ініціалізатора: Вона наказує ШІ прочитати
app_spec(наше “технічне завдання”), створити великий JSON-файл зі списком всіх функцій та тестів, підготувати скрипт для запуску сайту, ініціалізувати Git-репозиторій та створити базову структуру проєкту. - Підказка для кодинг-агента: Вона наказує агенту “роздивитись” проєкт, зрозуміти, що вже зроблено, обрати наступну функцію зі списку, написати під неї код, провести регресійне тестування, перевірити візуально за допомогою інструмента Puppeteer (про нього – пізніше!), оновити файл прогресу та зробити Git commit.
Детальніше про “Магічні” Файли: JSON-списки та Файли Прогресу
Давайте заглянемо глибше в ці файли, адже саме вони – серце нашої системи.
Feature List JSON: Це справжня скарбниця. Кожен елемент – це одна функція, яка має бути реалізована. Там є:
category: Категорія функції (наприклад, “інтерфейс”, “авторизація”).description: Що саме має виконувати ця функція.steps_to_validate: Покрокова інструкція, як перевірити, чи функція працює.passes: Логічне значення (true/false), чи тест пройдено.
Коли “кодинг-агент” реалізує функцію, він просто змінює passes з false на true. Просто, але геніально!
Progress File: Це стислий звіт про те, що було зроблено в останній сесії. Наприклад, “Ініціалізатор створив структуру проєкту та список функцій”. Наступний агент читає це і розуміє: “Окей, проєкт готовий, тепер я маю взятися за першу функцію зі списку”.
Puppeteer: Коли ШІ Дивиться на Світ Очима Користувача
Ви, певно, міркуєте: “А як ШІ перевіряє, чи дійсно добре виглядає те, що він написав?”. Тут на сцену виходить Puppeteer – інструмент, який дає змогу автоматично керувати браузером. “Кодинг-агент” може відкрити сайт, натиснути на кнопку, ввести текст, і навіть зробити скріншот! Це як мати невидимого тестувальника, котрий ходить по вашому ж сайту і каже: “Так, ця кнопка працює!” або “Ой, тут щось зламалося!”.
Це особливо важливо для веб-розробки, де візуальна складова грає важливу роль. ШІ може переконатися, що все відображається коректно, а не лише “технічно” правильно.
Безпека Передусім: Sandbox та Обмеження Доступу
Здавалося б, давати ШІ такий доступ до системи – це ризик. Але розробники передбачили це.
- Обмеження директорією: Кожен агент має доступ лише до своєї директорії проєкту. Він не може залізти кудись в глибину системи чи видалити щось зайве.
- Sandbox: Для виконання команд використовується пісочниця, яка обмежує можливості.
- Контроль команд: Навіть команди, які може виконувати ШІ (наприклад bash-команди), ретельно контролюються. Він не зможе випадково видалити весь каталог чи зупинити критично важливі процеси.
Це вселяє впевненість, що експеримент відбудеться безпечно.
24 години Минули: Результати, Які Перевершили Очікування!
Час сплинув. 24 години неухильної праці. Я повернувся до термінала… і мої очі розширилися. Ми дійшли до 54-ї сесії “кодинг-агента”! Це неймовірно.
На екрані – 54% пройдених тестів. Можливо, цифра видається незначною, але пам’ятайте: це понад 100 функцій, реалізованих штучним інтелектом за добу!
І найцікавіше – відкриваємо сайт. Те, що я бачу, вражає. Це насправді виглядає як повнофункціональний клон Claude.ai! Пам’ять розмов, завантаження файлів, менеджмент проектів, навіть налаштування теми оформлення та максимальної кількості токенів – все працює!
Особливості, які мене вразили:
- Розширені розмови: Кожна розмова має формат Markdown, виглядає чисто та зрозуміло.
- HTML-сторінки: Можливість створювати та редагувати HTML-сторінки.
- Виконання коду: Реалізовано можливість запускати код.
- Налаштування: Теми, дефолтні моделі, слайдери для токенів – це вже рівень!
- Моніторинг токенів: Інтерфейс навіть показує кількість використаних токенів для кожного запиту.
Це набагато більше, ніж я міг очікувати від одного запиту. ШІ самостійно пройшов шлях від ідеї до багатофункціонального застосунку.
Висновок: Це Не Просто Експеримент, Це Погляд у Майбутнє
Що ж, підсумовуючи все вищесказане, можна стверджувати: цей експеримент з “довготривалими агентами” та “стременом” від Anthropic – це не просто технічна демонстрація. Це вікно в майбутнє, де штучний інтелект може стати повноцінним партнером у створенні складних продуктів.
Хоча я не очікував, що застосунок буде ідеальним (людський контроль все ще необхідний!), я був надзвичайно вражений тим, наскільки багато було зроблено без мого втручання. Це свідчить про потужність сучасних моделей, таких як Claude Opus 4.5, та ефективність “стремен”, які дають їм можливість працювати годинами, ітерувати та самостійно перевіряти свою роботу.
Що далі?
- Спробуйте самі: Я щиро рекомендую вам завантажити репозиторій [посилання в описі] та спробувати. Ви можете навіть змінити
app_specі задати ШІ нове, власне завдання! - Досліджуйте: Занурюйтеся у деталі роботи “стремена”, вивчайте промпти, експериментуйте.
- Інтегруйте: Якщо ви розробник, подумайте, як такі довготривалі агенти можуть покращити ваші власні робочі процеси.
Цей досвід надихнув мене ще більше. Хтозна, якою буде наступна “велика річ” у світі ШІ? Але одне я знаю точно – майбутнє кодингу буде захопливим!







