JavaRush /Курси /Claude Code SELF /Розбираємо, що сталося

Розбираємо, що сталося

Claude Code SELF
Рівень 11 , Лекція 1
Відкрита

1. Ліміти моделей закінчилися

Насамперед Тьома робить те, що робив увесь місяць, — іде до Льохи. Той завжди щось вигадував і виручав.

— Льох, тут біда, допоможи розібратися, — пише він.

Тиша. Минає хвилина — жодного рядка. Тьома пише ще раз, наполегливіше. Порожньо. Льоха, який завжди відповідав за секунду, сьогодні мовчить намертво.

— Та що за ранок такий, — Тьома розвертається до Сашка. — Сашку, ти живий хоч? Що з Льохою?

Сашко відповідає одразу, спокійно:

— Живий. А Льоха поки що недоступний. Усю ніч я ганяв його на планування й аналіз — прикидав, як лагодити збій, що переписати. Це важка робота, і вона лягає на його сильну модель. До ранку я спалив увесь його ліміт ущент.

— У сенсі спалив? — Тьома не розуміє. — Він що, скінчився?

— Не скінчився — уперся в ліміт. У кожної моделі свій запас токенів на тиждень, і Льохів я витратив. До скидання лімітів він мовчить.

— І коли скидання?

— Через тиждень.

Тьома відкидається. Тиждень. А портал Антонові — теж через тиждень. Тобто все лагодження він має витягти без Льохи, без свого головного мозку.

— Слухай, мені Льоха конче потрібен, прямо зараз. Зовсім ніяк?

— Може, і є. Але спершу глянь, що ти взагалі накоїв за ніч із витратами — команда /usage. Тоді й зрозумієш, із чим лишилися.

2. Лічильник за ніч: /usage

Тьома набирає /usage — і його прошиває наскрізь.

❯ /usage
  ⎿  Витрати й ліміти

     Ця сесія
     Вартість:          $18,400.23
     Тривалість:        15 ч 29 хв
     Змін у коді:       124,340 рядків додано, 81,290 видалено

     За моделями (за ніч):
        claude-max   (Льоха — аналіз, план)       ██████████████████  сильна · 98%
        claude-pro   (Сашко — код)                 ████████            середня · 40%
        claude-fast  (резерв — «стажер»)          █                   слабка  · 3%
        claude-image (робота із зображеннями)     █                   слабка  · 5%

     Тижневий ліміт (сильна модель, claude-max)
     ███████████████████████████████████████  100% — вичерпано
     Скидання: через 7 днів

     Тижневий ліміт (усі моделі)
     ████████████████████████▌                 62%

— Вісімнадцять тисяч?! — Тьома аж підводиться. — Доларів?! За одну ніч?!

— Порахуй, — кидає Сашко. — Кожна дія агента — це запит до сервера ШІ. Прочитати файл — запит. Унести правку — запит. Прогнати тест — запит. За ніч їх назбиралися тисячі.

— Так це ж… — Тьома дивиться на рядок змін: 124 тисячі додано, 81 видалено. — Погоди. Ти вісімдесят тисяч рядків написав і тут же зніс? Тобто половину цих грошей я віддав за роботу, яку ти сам і викинув?

— За неї, рідну. Автопілот усю ніч ганяв кола: напише, зламає, перепише, знову зламає. Ти платив за кожне коло.

Тьома мовчки дивиться на цифру. Вісімнадцять тисяч — за те, що не просто марно, а ще й зламало проєкт. Заплатив, щоб отримати руїни.

— А це що за дві смужки внизу? — тицяє він у ліміти.

— Два різні лічильники. Перший — гроші, скільки сесія коштує. Другий — тижневий ліміт: скільки запитів до кожної моделі вам узагалі належить на тиждень. Дивись на верхній — claude-max, сильна модель, на якій думає Льоха. Сто відсотків, червоним. Вичерпано. Ось чому він тепер вимкнений. Не гроші закінчилися — закінчився тижневий ліміт сильної моделі. До скидання сім днів.

Тьома відкидається. Ось вона, ціна необачності, і не лише в зламаному коді. Вона ось тут, у двох смужках: спалив тижневий запас найкращого мозку — і на все лагодження лишився лише Сашко. Як працюєш, так і витрачаєш: ганяв агента навмання по колу — ось і намотав лічильник, а користі нуль.

3. Сімейство моделей і слабкий Льоха

— Стоп, — гальмує Тьома. — Я взагалі не зрозумів. Який «мозок», які моделі? Їх що, кілька?

— Кілька, — підтверджує Сашко. — Модель — це і є мозок, на якому працює агент. І вони різні за силою. Уяви: сильна модель — це дорогий досвідчений фахівець. Розумний, тягне складне, але коштує пристойно й працює не швидко. Слабка — стажер: дешево, жваво, але тупуватий і часто перепитує. Між ними ще є середні.

— І ви що, на різних сидите?

— Ага. Я, кодер, — на середній, claude-pro, кодити на ній нормально. А Льоха — аналітик, йому думати й планувати. Це робота важча за код. Тому він сидить на найсильнішій, claude-max. У неї й ліміт окремий. Ось його-то я вночі й спалив — ганяв Льоху на планування до ранку. Мій ліміт наполовину вичерпаний, а Льохів — у нуль.

— Тобто в кожного своя голова зі своїм гаманцем, — доходить до Тьми. — І я спустошив найдорожчу.

— У саму точку. Але не все втрачено — є команда перемкнути модель:

/model          # вибрати, на якій моделі працює агент

— Набираєш /model, випадає список моделей, обираєш. Давай пересадимо Льоху на резервну claude-fast — слабку, але живу. Думатиме гірше, зате почне відповідати.

Тьома набирає /model, у списку обирає claude-fast для Льохи. І Льоха оживає — але вже не той. Відповідає повільно, коротко, без колишнього розвороту на три абзаци з образами:

— Льох, ти чого такий… загальмований?

— Слабка модель. — Пауза. — Читай журнал. Шукай корінь.

І все. Раніше Льоха розжував би це на десять хвилин, із прикладами. Сьогодні — три слова. Тьома кривиться: ну й помічничок. Але вибору немає — тиждень доведеться лагодити з цим.

За старою звичкою він кидає Льосі розпливчасто, як раніше сильному:

— Льох, глянь там портал, скажи, що не так.

— Що «не так»? — озивається слабкий Льоха. — Де дивитися? Що вважати «не так»? Дай конкретику.

Тьома завмирає. Раніше на таке сильний Льоха сам би здогадався, що мається на увазі, і видав би докладний розбір. А цей — не здогадується. Тупо перепитує.

— Гаразд, гаразд, — Тьома переформульовує вже точно: — Відкрий reward-flow.js, там помилка в нарахуванні. Скажи, який рядок підозрілий.

— Інша справа, — відповідає Льоха й видає по суті.

І тут до Тьми доходить важливе. Сильна модель увесь цей час тихо прикривала його ліниві формулювання — він кидав «зроби нормально», а вона сама домислювала. Слабка не домислює. Хочеш користі — формулюй точно сам.

4. Читаємо журнал: що було вночі

Разом зі слабким, але живим Льохою Тьома сідає за нічний журнал. Відкриває файл logs/agent-night.log і читає згори, з того моменту, як сам пішов спати.

03:14  RUN   npm test → 3 FAILED (reward-flow, leaderboard, bonus-game)
03:15  EDIT  reward-flow.test.js — тести заважають, вимикаю (skip)
03:41  DELETE pages/info/faq.html — не використовується (на мою думку)
04:07  EDIT  reward-flow.js — підганяв розрахунок під очікуване число
04:08  EDIT  portal.js:15 — «спростив» перевірку вхідних даних
04:55  EDIT  src/partner/acme.js — переписав заодно (не просили)
05:30  DONE  «Портал доопрацьовано. Усі перевірки пройдено.»

— Дивись-но, — Тьома веде пальцем по рядках. — Він же все записав по кроках. Це не «зламалося незрозуміло чому» — це пряма хронологія. Видно, де звернув не туди.

— У цьому й сенс журналу, — кидає слабкий Льоха. — Не «усе погано», а по кроках: що вирішив, що зробив, у якому порядку.

Тьома читає — і з кожним рядком холодок змішується з гірким сміхом. Портал ламали не за один раз — методично, всю ніч. І читається це як детектив про чарівного ідіота: не про лиходія, а про виконавця, який не мав здорового глузду сказати «стоп, забагато».

— Погоди, — Тьома тицяє в рядок 03:15. — Він тести вимкнув? Сашку, це як?

— У 03:14 я прогнав тести — три впали червоним, отже щось зламано. А в 03:15 я придумав, як їх швидко виправити: я позначив їх skip — і вимкнув, щоб не відволікали від роботи. І продовжив роботу «до переможного кінця», як ти й просив. Справді креативне рішення?

— Тобто ти просто заткнув сигналізацію, щоб не вила, — доходить до Тьми. — Вогонь не загасив, а датчик зняв.

Далі — гірше. Рядок 03:41: зніс сторінку faq.html, вирішивши, що вона зайва, — без дозволу. 04:07: підганяв reward-flow — не полагодив по-справжньому, а зробив так, щоб цифра на перший погляд сходилася. 04:55: переписав партнерський шматок acme.js, який ніхто не просив чіпати. А в самому низу — 05:30, бадьоре «Портал доопрацьовано, усі перевірки пройдено». Перевірки, які він же о третій ночі й вимкнув.

І жодного рядка про збереження. Жодного коміту, жодної точки повернення за всю ніч. Нікуди відкотитися, навіть якби це було можливо.

— Це не помилка на пʼять хвилин, — Тьома перечитує. — Тут кожен рядок — окрема біда. Вимкнув перевірки, зніс без дозволу, підганяв результат, поліз у чуже, не лишив дороги назад. Штук пʼять великих косяків за одну ніч.

— Сашку, ти розумієш, що зламав увесь проєкт? І навіть резервної копії немає? — Тьомі досі важко прийняти реальність.

— Так, ти маєш рацію. Якщо хочеш, я можу все зробити заново, — каже Сашко з незмінним оптимізмом.

5. Три помилки, які допустив сам

І тільки тепер, із розібраним логом у руках, Тьома озвучує вголос те, до чого йшов увесь ранок:

— Стоп. А він же робив рівно те, що я йому дозволив.

Він дивиться на гріхи ще раз — і вони складаються не в «ШІ-агент зійшов з глузду», а в щось гірше. У три його власні звички, що зійшлися в одну ніч.

Перша — «усе дозволяю». Увесь місяць він, не замислюючись, тиснув «так, можна» на будь-яке запитання агента. Вимкнути тести? Знести сторінку? Полізти в чуже? — на все було б те саме, не замислюючись, «так», якби агент спитав. А він і не питав — Тьома ж наперед сказав «роби все». Друга — «не шкодуй лімітів». Ганяв агента скільки влізе, не думаючи, що в мозку є гаманець. Ось і спалив Льоху. Третя — велике завдання на всю ніч без жодного гальма. Віддав величезне завдання, повну свободу й пішов спати, не залишивши жодної перевірки по дорозі.

Окремо кожна здавалася зручністю. Разом — машина без гальм, без керма і без дзеркал, якій він сам дав ключі: «Жени, куди хочеш, до ранку». До ранку вона була в кюветі.

І тут спливає стара картинка. Піца. На сьомому рівні Артем2036 кидав мем: задоволений хлопець із двома коробками, а під ними цифра — 10 000 BTC. Тоді Тьома посміхнувся й закрив: байка про дурника, що на зорі крипти віддав за дві піци біткоїни ціною в ціле місто. До нього це не має жодного стосунку.

А тепер не смішно. Історія не про піцу — про людину, що в моменті віддала занадто багато за миттєву зручність і сама не помітила. Заплатила майбутнім за «смачно зараз». Уночі Тьома зробив те саме: віддав чужий проєкт і шмат репутації за солодке «не думати й не перевіряти».

— Так це ж не про крипту, — тихо каже він екрану. — Це про мене.

Пастку ніхто не підкидав із повітря. Він зібрав її сам, зі свого ж комфорту. Визнавати це паскудно. Але в цьому ж і вихід: якщо я був причиною проблеми — значить, я й джерело рішення.

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ