Чому Git більше не вистачає в епоху AI-коду

💡 Усі статті, обговорення, новини про DevOps — в одному місці. Приєднуйтесь до DevOps спільноти!

Мене звати Артем Долобанько. Це історія про те, як DevOps-інженер поступово занурився у світ розробки та продуктів.

Я працюю в ІТ понад 15 років: починав як системний адміністратор, далі перейшов у DevOps, працював із інфраструктурою, high-load системами та командами різного масштабу. З часом я почав займатися не лише технічною частиною, а й продуктами — так з’явилися кілька компаній і проєктів, з якими я працюю сьогодні.

Останнім часом я все частіше ловив себе на думці, що традиційні підходи до управління вихідним кодом починають відставати від реальності. Особливо це стало помітно з появою AI-інструментів у розробці.

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

У якийсь момент я сформулював для себе просту мету: знайти спосіб зробити AI-розробку більш зрозумілою, керованою і передбачуваною для команд.

За останній рік штучний інтелект змінив розробку швидше, ніж будь-яка технологія до цього. І це змушує переглянути багато звичних речей. Сьогодні розробники все частіше не пишуть код вручну, вони генерують його за допомогою інструментів на кшталт Copilot, GPT або інших AI-асистентів. У деяких командах частка такого коду вже перевищує 50–70%.

Але разом зі швидкістю з’явилась нова проблема — ми перестали розуміти, що саме потрапляє в наш код.

«Сліпі зони»

Поспілкуйтеся з будь-яким керівником відділу розробки, який використовує агентів ШІ у своїй команді, і ви почуєте одні й ті самі запитання:

  • Хто написав цей код? — код, автором якого вказано «[email protected]», може бути на 100% згенерований ШІ. Заголовки «Co-Authored-By» ненадійні. Більшість агентів їх не додають.
  • На що ми витрачаємо кошти? — Рахунки за API Claude сягають 2 тис. доларів на місяць, і ніхто не знає, який розробник або проект спричиняє ці витрати. Використання токенів на рівні команди є невидимим.
  • До чого може торкатися ШІ? — Чи повинні агенти ШІ змінювати конфігурації у виробничому середовищі? Логіку обробки платежів? Немає рівня контролю за дотриманням правил.
  • Який контекст було втрачено? — Розробник працює з Claude протягом 3 годин, зупиняється і продовжує роботу наступного дня. Контекст сеансу, підказки та міркування зникли.

Чому Git — це замало

Git чудово справляється з відстеженням змін. Але він ніколи не призначався для відстеження намірів. Ось як виглядає стандартний вивід команди git blame для коду, написаного штучним інтелектом:

A screenshot of a computer programAI-generated content may be incorrect.

Перший результат не містить жодної корисної інформації. Другий же точно вказує, які рядки написав ШІ, а які відредагувала людина. У цьому й полягає різниця між тим, щоб діяти наосліп, і тим, щоб мати повну картину.

Як повинен працювати продукт, який я хочу реалізувати

Він виступає посередником між вашим агентом ШІ з кодування та git. Це не нова система контролю версій — це рівень атрибуції, який робить git сумісним із ШІ.

Коли розробник використовує будь-який агент ШІ для кодування, git-хуки спрацьовують автоматично. Командний інтерфейс (CLI) визначає, який агент працює, зчитує транскрипт сеансу та записує метадані у git-нотатки. Ніякого ручного тегування, ніяких змін у робочому процесі. Все просто працює.

Відтворення сеансу: перегляд усіх підказок та рішень

Кожен сеанс кодування ШІ фіксується від початку до кінця: підказки, які дав розробник, файли, до яких торкнувся ШІ, точні відмінності для кожної підказки, використання токенів, вартість та модель. Коли щось ламається у виробництві, ви бачите не лише те, що змінилося, а й чому це змінилося.

A screenshot of a phoneAI-generated content may be incorrect.

Прозорість витрат: ви будете знати, куди йде кожен долар

Коли ваша команда використовує 5 різних агентів штучного інтелекту у 20 репозиторіях, витрати на API швидко зростають. Наша ідея відстежувати витрати за сеансом, за моделлю, за розробником та за репозиторієм. Більше ніяких несподіваних рахунків.

A blue line with black backgroundAI-generated content may be incorrect.

Новий рівень управління версіями

Згадайте, що GitHub зробив для git. Git вже існував. Він був потужним. Але тодішня модель git-workflow погано масштабувалась для більшості команд. GitHub додав рівень співпраці — запити на злиття, рецензування коду, завдання, CI/CD — що зробило git корисним для команд.

Ідея мого продукту робити те саме для кодування ШІ. Git існує. Він як і раніше є основою. Але він був створений для світу, де код пишуть люди. Він буде додавати рівень управління ШІ: атрибуцію, відстеження сеансів, прозорість витрат, забезпечення дотримання політик, аудиторські сліди, усе, що робить git корисним для команд, які використовують ШІ-агентів.

Це нова ера управління вихідним кодом. Не тому, що git не працює, а тому, що спосіб написання коду кардинально змінився, і наші інструменти повинні йти в ногу з часом.

Що далі

Я працюю над інструментом, який є у відкритому доступі, а план розвитку базується на реальних потребах інженерних команд:

  • Об’єднання сеансів — автоматичне з’єднання сеансів, що тривають після перезапуску агентів та нічних перерв;
  • Координація роботи декількох агентів — відстеження випадків, коли кілька AI-агентів одночасно працюють над одним і тим самим кодом;
  • Панелі моніторингу в режимі реального часу — пряма трансляція сеансів із відстеженням витрат за кожним токеном;
  • Звіти про відповідність вимогам — генерація доказів SOC 2 та ISO 27001 одним кліком.

Я планую зробити цей інструмент назавжди безкоштовним для індивідуальних розробників. Немає обмежень на репозиторії, сеанси чи агентів. Якщо ви використовуєте ШІ для написання коду, ви повинні знати, що саме він пише.

👍ПодобаєтьсяСподобалось9
До обраногоВ обраному2
LinkedIn
Ctrl + Enter
Ctrl + Enter
Наша ідея відстежувати витрати за сеансом, за моделлю, за розробником та за репозиторієм.

— яка користь від «за сеансом»?
— схоже питання і для «за репозиторієм» — часто для реалізації одного конкретного функціоналу вам потрібно працювати з декількома репозиторіями і відкрити окремі PRs в кожен з них — може є якийсь сенс в тому, щоб знати скільки коштувало реалізувати цей новий функціонал в цілому, але знову таки не впевнений
— «за моделлю, за розробником» — цю інформацію надають LLM providers

Розробник працює з Claude протягом 3 годин, зупиняється і продовжує роботу наступного дня. Контекст сеансу, підказки та міркування зникли.

claude --resume, a ще краще спочатку створити план (через /plan) виконання задачі і оновлювати відповідно до прогресу, таким чином можна повернутися хоч через тиждень і продовжити на чому зупинилися

Former GitHub CEO raises record $60M dev tool seed round at $300M valuation
Julie Bort
6:30 AM PST · February 10, 2026

entire.io

Бюрократія не виникає з чийогось злого наміру.
Навпаки. вона виникає з бажання щоб все було чітко, прозоро, вчасно.
Щоб коліщатка крутились як у механічному годиннику.

...інструкція Б-115, редакція 34, вимагає надання довідки за формою У-534, в якій ... .... і яку можна отримати особам, з статусом ... підтверженим довідкою Ф-7543... ...

ШІ значно спростив створення бюрократичних систем.
Але от цікаво, коли на відповідь:

Рахунки за API Claude сягають 2 тис. доларів на місяць, і ніхто не знає, який розробник або проект спричиняє ці витрати

ми будем отримувати: 1.5 тис доларів з яких потрачено ШІ для контролю: який розробник або проект спричиняє ці витрати...

Артеме, влучно підмічено — git blame у 2026-му виглядає як детективна розповідь без кінця 😄

Я сам щодня вайб-кодю в Cursor і через 20 хвилин вже не пам’ятаю, що я написав, а що Claude. Тому в своєму розширенні SnakeFlow зробив 60+ автоматичних перевірок якості (Quality Hub) — хоч якось відстежувати, що там нагенерувалося.

Не вирішує проблему атрибуції, але принаймні попереджає, коли AI-код виглядає підозріло 😂

Ідея з git-хуками цікава. Слідкуватиму за розвитком.

. Git вже існував. Він був потужним. Але це був локальний інструмент.

Шо?

Згадайте, що GitHub зробив для git. Git вже існував. Він був потужним. Але це був локальний інструмент. GitHub додав рівень співпраці — запити на злиття, рецензування коду, завдання, CI/CD — що зробило git корисним для команд.

Git ніколи не був «локальним інструментом»: це розподілена VCS з самого початку. Кажучи таке про Git, ви показуєте, що просто його не знаєте і не розумієте. З самого початку Git був орієнтований на розподілену роботу. Але, там обмін результатами був, штатними інструментами, розрахований на email. Список linux-kernel продовжує працювати тим же чином, не змінившись за останні 20 років. В ньому можна побачити, як це виглядало.

Але це був метод, незручний для більш «компактних» команд і при вимозі тих же CI/CD. І зʼявилась купа нових інструментів, які давали більш «сучасний» стиль роботи. GitHub — тільки один з них, найбільш шумно відомий.

Ви ж так кажете, наче крім GitHub таких інструментів не було і не є. Він один з перших, але не єдиний і не можна сказати, що перший. Проте саме шум він створив найбільший, бо давав не софт, який ще треба установити у себе, а веб-ресурс, який вже був і треба було лише логінітись.

І зараз є багато тих, кому або політика не дозволяє використовувати GH (секьюріті) або фіч не вистачає. І колаборація у нього максимально тупа, на рівні «Git як централізована VCS для тих, хто не осилив розподілену»; фактично, це відкат від Git до Subversion у вигляді Git. 90+% користувачів GitHub працюють з Git саме таким чином.

Це не в основну тему статті, але якщо ви згадуєте таке, то треба бути коректним з фактами.

Тепер про саму тему статті: ось це мене і дивує, і навіть лякає:

Кожен сеанс кодування ШІ фіксується від початку до кінця: підказки, які дав розробник, файли, до яких торкнувся ШІ, точні відмінності для кожної підказки, використання токенів, вартість та модель.

Практично тут є дві проблеми. Перша — зайвий шум. В процесі такої розробки, розробник може писати будь-яку дичину, виправляти себе десятки разів. Ви впевнені, що це все має сенс? Я ось впевнений, що ні.

І далі,

Коли щось ламається у виробництві, ви бачите не лише те, що змінилося, а й чому це змінилося.

Ні, не побачимо. Тому що всі ці ШІ агенти зараз слід сприймати як недетермінованого учасника. Один і той же промпт дасть у різні дні суттєво різні результати. Ви не зможете відтворити і повторити результат, порівняти, що треба змінити...

А головне — навіщо це все? Ну ось на якийсь промпт у вас ШІ стабільно дає дичину. Хто відповідальний за результат і кому ви за це платите, ШІ чи, насправді, своєму програмісту? Чому програміст дозволив пройти некоректному чи неефективному коду в репу? Тестування не існує?

Звіти про відповідність вимогам — генерація доказів SOC 2 та ISO 27001 одним кліком.

Ніякий запис промптів цього не дасть. Дадуть тестування і верифікація.

Але це був локальний інструмент.

Зауваження вірне, помилка формулювання. Мав на увазі що без web більшість команд використовували git переважно локально, без PR workflow, без web UI для колаборації.

А головне — навіщо це все? Ну ось на якийсь промпт у вас ШІ стабільно дає дичину. Хто відповідальний за результат і кому ви за це платите, ШІ чи, насправді, своєму програмісту? Чому програміст дозволив пройти некоректному чи неефективному коду в репу? Тестування не існує?

Так, недетермінованість — це факт. Але саме тому і потрібен запис. Не щоб відтворити результат і щоб знати що просили і що отримали. Коли щось йде не так в прод питання не «чого ШІ так написав» а «який промпт дав розробник і чи він перевірив результат». На це Origin і відповідає.

никогда не использую агентов для коммитов, все коммичу сам ручками, что означает, что я отвечаю за все изменения точно так же, как отвечал за них 10 лет назад в эпоху полностью ручного написания кода

Ну, временные чудеса в рабочую ветку можно и допустить. Но потом их перепаковать грамотно. Если это вообще можно разделить после активной работы AI...

як на мене, то якесь трохи слабеньке позиціонування. з гітхабу:

🕵️ git blame is lying to you — you see the human, not the AI that wrote the line
origin blame shows the exact model, agent, session, and prompt behind every single line

так а яка різниця, який агент писав, якщо блеймити будуть людину, яка той агент використала?

💸 You have no idea how much AI is costing you
Per-session token + USD cost, broken down by model, repo, and developer

вже є LiteLLM

🧠 Prompts disappear the moment you close the terminal
Every prompt is recorded and searchable — origin why : replays the exact conversation that wrote it

не зовсім зрозуміла суть проблеми. у мене в opencode нічого не пропадає, усі сесії з повною історією на місці.

🔁 Context is lost every time you switch agents
Cross-agent handoff: Claude can pick up where Cursor left off, automatically

зараз на повну пушать контекст інжиніринг, думають як сегментувати контекст і ефективно використовувати доступне вікно, а тут ви пропонуєте навпаки його засмічувати? закрили таску, поїхали у свіжу сесію. для контексту проєкту є всякі AGENTS.md (і то, ефективність цих інструкцій науково не підтверджена, а навіть навпаки — спростована)

🔐 AI agents leak secrets into commits
Built-in secret scanner blocks commits containing AWS keys, API tokens, JWTs, DB creds, and 40+ other patterns

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

🛰️ Your prompts are being logged by someone else’s cloud
100% local by default — prompts, responses, and costs live in your own git repo. No accounts, no telemetry, no server required

вище писав, є LiteLLM, він селфхостед (проігноруємо нещодавний інцидент for the sake of argument)

🤷 You don’t know which model writes the best code
origin stats compares approval rate, rework rate, avg cost, and avg lines across every model you use

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

🧩 Monorepos and multi-repo workspaces break every tool

це пропустимо, проблем стейтмент незрозумілий взагалі

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

LiteLLM рахує токени але не знає який файл змінився і в якому репо — наскільки я знаю.

Opencode зберігає історію, але тільки свою. Якщо юзаєш кілька агентів — це проблема.

Опис поправлю

так гіт ніколи не вистачало для цієї теми, як не вистачало cvs а потім svn

Тому древні єгиптяни придумали проєктний менеджмент і тепер ми маємо ці піраміди

Що смачного в порівнянні з entire.io?

origin cli — ширше меню команд для роботи з АІ сесіями через cli. Подивитись можна тут github.com/dolobanko/origin-cli. Зокрема blame — інформація, який агент написав конкретний код, з деталями щодо моделі, промтів і тд.; backfill — ретроспективно переглядає ші-код, визначаючи авторів за допомогою типових патернів ші-агентів. Та багато інших (деякі ще в бета-тестуванні та розробці) для адаптування процесу розробки під новий флоу з використання ші.

origin solo — дашбоард з візуалізацією та треком ші-сесій для соло розробників. Дозволяє вести повний аудит процесу розробки з використанніям ші-агентів. Можливість трекати одночасно сесії декількох ші-агентів.

origin team — дашбоард для СТО/tech managers для управління ші-агентами на скейлі. Можливість задавати політики, типи агентів та трекати сесії розробників. Централізована система управління ші-агентими в організації.

Підписатись на коментарі