Kubernetes начинался как слой планировщика поверх набора однохостовых Docker-демонов. Это значит, что долгое время Kubernetes-поды были всего лишь "полусклеенными" группами Docker-контейнеров.
Со временем появился Container Runtime Interface (CRI), который дал возможность подменять и настраивать container runtime’ы. Большинство кластеров перешло с тяжеловесного Docker на более специализированный containerd в качестве «высокоуровневого» runtime’а, при этом низкоуровневый OCI runtime (runc) остался без изменений.
Однако потребность в более изолированных подах продолжала расти, и вслед за этим появились "альтернативные" реализации – альтернативные по отношению к Docker-style контейнерам. Самые заметные из них – gVisor и Kata Containers.
gVisor запускает контейнеры поверх урезанного user-land kernel, написанного на Go, а Kata Containers оборачивает обычные Linux-контейнеры в microVM’ы для дополнительной изоляции.
Естественно, возникла необходимость указывать container runtime на уровне пода. Так и появился ресурс RuntimeClass.
С помощью RuntimeClass можно сообщить Kubernetes, какие container runtime’ы поддерживают ноды кластера. Это позволяет кластеру запускать как традиционные поды на базе Linux-контейнеров, так и более изолированные поды на gVisor или Kata Containers.
Узнайте, как регистрировать новые RuntimeClass’ы и запускать поды с произвольными именами runtime class, в практическом туториале от Márk Sági-Kazár: https://labs.iximiuz.com/tutorials/kubernetes-runtime-class-61506808
👉 DevOps Portal
Со временем появился Container Runtime Interface (CRI), который дал возможность подменять и настраивать container runtime’ы. Большинство кластеров перешло с тяжеловесного Docker на более специализированный containerd в качестве «высокоуровневого» runtime’а, при этом низкоуровневый OCI runtime (runc) остался без изменений.
Однако потребность в более изолированных подах продолжала расти, и вслед за этим появились "альтернативные" реализации – альтернативные по отношению к Docker-style контейнерам. Самые заметные из них – gVisor и Kata Containers.
gVisor запускает контейнеры поверх урезанного user-land kernel, написанного на Go, а Kata Containers оборачивает обычные Linux-контейнеры в microVM’ы для дополнительной изоляции.
Естественно, возникла необходимость указывать container runtime на уровне пода. Так и появился ресурс RuntimeClass.
С помощью RuntimeClass можно сообщить Kubernetes, какие container runtime’ы поддерживают ноды кластера. Это позволяет кластеру запускать как традиционные поды на базе Linux-контейнеров, так и более изолированные поды на gVisor или Kata Containers.
kubectl apply -f - <<EOF
apiVersion: v1
kind: Pod
metadata:
name: nginx-kata-qemu
spec:
runtimeClassName: kata-qemu
containers:
- name: nginx
image: nginx:alpine
EOF
Узнайте, как регистрировать новые RuntimeClass’ы и запускать поды с произвольными именами runtime class, в практическом туториале от Márk Sági-Kazár: https://labs.iximiuz.com/tutorials/kubernetes-runtime-class-61506808
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤4
Новая фича Kubernetes 1.36: Image Volumes
Контейнерные образы уже давно используют не только для упаковки приложений, но и для хранения произвольных артефактов: статических ассетов, весов моделей, конфигов и т.д. Во многом потому, что контейнерные registry есть практически везде, а такой «хак» сильно упрощает доставку крупных наборов данных.
Но чтобы использовать такой image-артефакт, раньше приходилось сначала pull’ить образ, а затем распаковывать его содержимое в директорию, доступную приложению. В Kubernetes это обычно означало дополнительный init container с набором кастомных скриптов.
К счастью, в Kubernetes v1.36 появился более чистый подход — image volumes. Теперь можно напрямую монтировать файловую систему OCI-образа в Pod как read-only volume.
Небольшой hands-on челлендж, чтобы попробовать это в деле: https://labs.iximiuz.com/challenges/kubernetes-pod-image-volume
👉 DevOps Portal
Контейнерные образы уже давно используют не только для упаковки приложений, но и для хранения произвольных артефактов: статических ассетов, весов моделей, конфигов и т.д. Во многом потому, что контейнерные registry есть практически везде, а такой «хак» сильно упрощает доставку крупных наборов данных.
Но чтобы использовать такой image-артефакт, раньше приходилось сначала pull’ить образ, а затем распаковывать его содержимое в директорию, доступную приложению. В Kubernetes это обычно означало дополнительный init container с набором кастомных скриптов.
К счастью, в Kubernetes v1.36 появился более чистый подход — image volumes. Теперь можно напрямую монтировать файловую систему OCI-образа в Pod как read-only volume.
Небольшой hands-on челлендж, чтобы попробовать это в деле: https://labs.iximiuz.com/challenges/kubernetes-pod-image-volume
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍2
This media is not supported in your browser
VIEW IN TELEGRAM
DevOps-инструмент недели: Kafbat UI
Запускать Kafka в проде – это здорово, ровно до того момента, когда нужно залезть внутрь и посмотреть, что там происходит
Kafbat UI — бесплатный open-source веб-интерфейс для мониторинга и управления кластерами Apache Kafka.
Он даёт единое окно управления всеми вашими Kafka-кластерами.
Брокеры, топики, партиции, consumer groups, schema registry, Kafka Connect – всё собрано в одном дашборде.
Можно просматривать сообщения в форматах JSON, Avro и Protobuf, фильтровать live-потоки через CEL-выражения, смотреть consumer lag по каждой партиции, а также создавать и перенастраивать топики без необходимости лезть в CLI.
GitHub-репозиторий:
Kafbat UI GitHub Repository
👉 DevOps Portal
Запускать Kafka в проде – это здорово, ровно до того момента, когда нужно залезть внутрь и посмотреть, что там происходит
Kafbat UI — бесплатный open-source веб-интерфейс для мониторинга и управления кластерами Apache Kafka.
Он даёт единое окно управления всеми вашими Kafka-кластерами.
Брокеры, топики, партиции, consumer groups, schema registry, Kafka Connect – всё собрано в одном дашборде.
Можно просматривать сообщения в форматах JSON, Avro и Protobuf, фильтровать live-потоки через CEL-выражения, смотреть consumer lag по каждой партиции, а также создавать и перенастраивать топики без необходимости лезть в CLI.
GitHub-репозиторий:
Kafbat UI GitHub Repository
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5👍2🤔1
Эта фича Kubernetes меняет то, как контейнеры работают с root-привилегиями
User Namespaces — это механизм безопасности, который сопоставляет ID пользователей и групп внутри контейнера с другим набором ID на хосте. По сути, это rootless-изоляция.
Ключевая идея такая.
Процесс, который запускается от root внутри контейнера, на хосте выполняется от имени непривилегированного пользователя, например с UID 100000.
Без User Namespaces контейнер, запущенный от root, использует ту же root-идентичность, что и хост.
То есть если злоумышленник сможет выбраться из контейнера, он получит полные привилегии на хосте.
Вот практический гайд, в котором разобрали следующее:
- что такое User Namespaces;
- как ядро выполняет маппинг root-пользователя на non-root пользователя;
- что меняется при установке hostUsers: false;
- как ограничивать диапазоны UID на хосте с помощью файла /etc/subuid;
- практический деплоймент для понимания User Namespace;
- ограничения User Namespace.
Читать здесь: https://newsletter.devopscube.com/p/kubernetes-user-namespaces
👉 DevOps Portal
User Namespaces — это механизм безопасности, который сопоставляет ID пользователей и групп внутри контейнера с другим набором ID на хосте. По сути, это rootless-изоляция.
Ключевая идея такая.
Процесс, который запускается от root внутри контейнера, на хосте выполняется от имени непривилегированного пользователя, например с UID 100000.
Без User Namespaces контейнер, запущенный от root, использует ту же root-идентичность, что и хост.
То есть если злоумышленник сможет выбраться из контейнера, он получит полные привилегии на хосте.
Вот практический гайд, в котором разобрали следующее:
- что такое User Namespaces;
- как ядро выполняет маппинг root-пользователя на non-root пользователя;
- что меняется при установке hostUsers: false;
- как ограничивать диапазоны UID на хосте с помощью файла /etc/subuid;
- практический деплоймент для понимания User Namespace;
- ограничения User Namespace.
Читать здесь: https://newsletter.devopscube.com/p/kubernetes-user-namespaces
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🔥4
Это руководство показывает, как построить локальную data platform с использованием KinD для Kubernetes и Terraform для провижининга инфраструктуры, а также Argo CD в качестве GitOps-движка для деплоя и управления приложениями.
➤ Ссылка на руководство
👉 DevOps Portal
➤ Ссылка на руководство
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤1
Наглядное руководство по основам Systemd
Статья подробно и наглядно раскрывает внутреннее устройство systemd, делая акцент на ключевых компонентах D-Bus и cgroups, и объясняет, как устроена их архитектура и взаимодействие на примерах и схемах
https://medium.com/@sebastiancarlos/systemds-nuts-and-bolts-0ae7995e45d3
👉 DevOps Portal
Статья подробно и наглядно раскрывает внутреннее устройство systemd, делая акцент на ключевых компонентах D-Bus и cgroups, и объясняет, как устроена их архитектура и взаимодействие на примерах и схемах
https://medium.com/@sebastiancarlos/systemds-nuts-and-bolts-0ae7995e45d3
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7👍3
GitHub Actions + AWS без долгоживущих секретов?
Современные DevOps-пайплайны не должны зависеть от захардкоженных AWS access keys.
Потому что утекшие CI/CD-учётные данные всё ещё остаются одним из самых серьёзных рисков для безопасности в облаке.
Именно здесь помогает OIDC.
Вместо того чтобы хранить AWS-секреты в GitHub, ваш workflow во время выполнения получает краткоживущие временные credentials напрямую от AWS.
- Никаких статических ключей.
- Никакой головной боли с ротацией секретов.
- Меньший blast radius, если что-то пойдёт не так.
В этом блоге разберем интеграцию GitHub Actions OIDC с AWS на пошаговом примере, который помогает безопасно настроить доступ к AWS cloud.
К концу этого гайда вы поймёте:
- Почему OIDC — это безопасный способ подключить GitHub Actions к AWS
- Как интеграция GitHub OIDC работает с AWS
- Как пошагово настроить OIDC через IAM roles
- Как протестировать настройку через AWS CLI и задеплоить в EKS с помощью GitHub Actions workflows
Подробный блог: https://devopscube.com/github-actions-oidc-aws/
👉 DevOps Portal
Современные DevOps-пайплайны не должны зависеть от захардкоженных AWS access keys.
Потому что утекшие CI/CD-учётные данные всё ещё остаются одним из самых серьёзных рисков для безопасности в облаке.
Именно здесь помогает OIDC.
Вместо того чтобы хранить AWS-секреты в GitHub, ваш workflow во время выполнения получает краткоживущие временные credentials напрямую от AWS.
- Никаких статических ключей.
- Никакой головной боли с ротацией секретов.
- Меньший blast radius, если что-то пойдёт не так.
В этом блоге разберем интеграцию GitHub Actions OIDC с AWS на пошаговом примере, который помогает безопасно настроить доступ к AWS cloud.
К концу этого гайда вы поймёте:
- Почему OIDC — это безопасный способ подключить GitHub Actions к AWS
- Как интеграция GitHub OIDC работает с AWS
- Как пошагово настроить OIDC через IAM roles
- Как протестировать настройку через AWS CLI и задеплоить в EKS с помощью GitHub Actions workflows
Подробный блог: https://devopscube.com/github-actions-oidc-aws/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍3
Если вы изолируете своего coding-агента в sandbox-окружении, как дать ему возможность тестировать изменения в браузере?
Как и во многих Dev & Ops-задачах, ответ – пробросить порт
В этом воркфлоу используют Claude Code, запущенный в удалённой VM, вместе с локальным браузером: https://labs.iximiuz.com/docs/playground-recipes/coding-agent-with-browser-access
👉 DevOps Portal
Как и во многих Dev & Ops-задачах, ответ – пробросить порт
В этом воркфлоу используют Claude Code, запущенный в удалённой VM, вместе с локальным браузером: https://labs.iximiuz.com/docs/playground-recipes/coding-agent-with-browser-access
Please open Telegram to view this post
VIEW IN TELEGRAM
❤7
RTPENGINE как медиакомбайн - открытый онлайн-вебинар
Сегодня - 26 мая в 11:00 МСК
Подключайтесь к бесплатному вебинару по ссылке
Сегодня - 26 мая в 11:00 МСК
Иногда, DevOps должны знать, как медиапотоки живут в проде.
Разберём RTPengine + Kamailio с практической точки зрения: архитектура, обработка пакетов в ядре Linux, управление записью звонков через Kamailio, а также как мониторить и автоматизировать — метрики, логирование, интеграция в CI/CD и когда сниферы действительно нужны.
Подключайтесь к бесплатному вебинару по ссылке
❤1
Большинство DevOps-инженеров и SRE до сих пор плохо понимают, что на самом деле означают метрики P50, P95 и P99.
Объясню на примере пиццы.
Ты заказываешь пиццу в Dominos. Они обещают доставку за 30 минут. В день у них 5000 заказов.
P50 означает, что 2500 пицц приехали за 30 минут или быстрее. То есть половина клиентов получила сервис, который обещали. Вторая половина ждала дольше. Это и есть средний пользовательский опыт.
P95 означает, что 4750 заказов доставили за 45 минут или быстрее. Но для 250 клиентов всё было намного хуже. Пицца уже остыла, никто даже не отзвонился.
P99 означает, что 4950 заказов приехали максимум за 60 минут. Но оставшиеся 50 человек получили холодную пиццу, испорченный вечер и повод уйти к Pizza Hut.
Вот в чём проблема средних значений.
У тебя все графики зелёные. Average выглядит отлично. Но 50 реальных пользователей сегодня получили плохой опыт. И завтра получат. И послезавтра тоже.
В проде происходит ровно то же самое.
Среднее время ответа вашего API показывает 80 мс. Выглядит отлично. Но P99 для небольшой группы пользователей держится на уровне 3 секунд. Они не жалуются громко. Они просто тихо уходят.
При 1 миллионе запросов в день P99 означает, что 10 000 запросов получают "холодную пиццу". Каждый день. Тихо.
Именно поэтому опытные инженеры никогда не доверяют одним только средним значениям. Сначала они смотрят на P95 и P99.
👉 DevOps Portal
Объясню на примере пиццы.
Ты заказываешь пиццу в Dominos. Они обещают доставку за 30 минут. В день у них 5000 заказов.
P50 означает, что 2500 пицц приехали за 30 минут или быстрее. То есть половина клиентов получила сервис, который обещали. Вторая половина ждала дольше. Это и есть средний пользовательский опыт.
P95 означает, что 4750 заказов доставили за 45 минут или быстрее. Но для 250 клиентов всё было намного хуже. Пицца уже остыла, никто даже не отзвонился.
P99 означает, что 4950 заказов приехали максимум за 60 минут. Но оставшиеся 50 человек получили холодную пиццу, испорченный вечер и повод уйти к Pizza Hut.
Вот в чём проблема средних значений.
У тебя все графики зелёные. Average выглядит отлично. Но 50 реальных пользователей сегодня получили плохой опыт. И завтра получат. И послезавтра тоже.
В проде происходит ровно то же самое.
Среднее время ответа вашего API показывает 80 мс. Выглядит отлично. Но P99 для небольшой группы пользователей держится на уровне 3 секунд. Они не жалуются громко. Они просто тихо уходят.
При 1 миллионе запросов в день P99 означает, что 10 000 запросов получают "холодную пиццу". Каждый день. Тихо.
Именно поэтому опытные инженеры никогда не доверяют одним только средним значениям. Сначала они смотрят на P95 и P99.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍20❤4🔥4🤔1
Гайд по подготовке к экзамену CKA + конспекты
По запросам сообщества мы добавили раздел с учебными заметками и иллюстрациями.
Внутри – ключевые темы: Gateway API, Network Policies, администрирование кластера и многое другое.
GitHub-репозиторий: https://github.com/techiescamp/cka-certification-guide
👉 DevOps Portal
По запросам сообщества мы добавили раздел с учебными заметками и иллюстрациями.
Внутри – ключевые темы: Gateway API, Network Policies, администрирование кластера и многое другое.
GitHub-репозиторий: https://github.com/techiescamp/cka-certification-guide
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6🤝3🏆2
This media is not supported in your browser
VIEW IN TELEGRAM
Ubuntu анонсировали Workshop – решение для запуска изолированных сред разработки в Ubuntu одной командой.
Тратьте меньше времени на настройку окружения: всего несколько строк YAML, и у вас готово воспроизводимое окружение, которое можно использовать на разных машинах.
Узнайте, как это работает: Introducing Workshop – Launch sandboxed development environments on Ubuntu with a single command
👉 DevOps Portal
Тратьте меньше времени на настройку окружения: всего несколько строк YAML, и у вас готово воспроизводимое окружение, которое можно использовать на разных машинах.
Узнайте, как это работает: Introducing Workshop – Launch sandboxed development environments on Ubuntu with a single command
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥6
Please open Telegram to view this post
VIEW IN TELEGRAM
😁7❤4
Docker 101: Жизненный цикл контейнера
Docker — это не только
https://labs.iximiuz.com/challenges/docker-101-container-lifecycle
👉 DevOps Portal
Docker — это не только
docker run и последующий Ctrl+C. Контейнеры можно создавать, запускать, ставить на паузу, снимать с паузы, останавливать, перезапускать, принудительно завершать и удалять. Понимание этих операций – ключ к эффективной работе с контейнерамиhttps://labs.iximiuz.com/challenges/docker-101-container-lifecycle
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5
Что такое
В этом руководстве вы узнаете:
- Что такое файл
- Как он работает и в каких сценариях используется.
- Как просматривать заметки до и после установки чарта.
- Пошаговый практический пример, демонстрирующий возможности
- Как отключить вывод заметок
Подробная статья: https://devopscube.com/helm-notes-txt-file/
👉 DevOps Portal
NOTES.txt в Helm Chart?В этом руководстве вы узнаете:
- Что такое файл
NOTES.txt в Helm.- Как он работает и в каких сценариях используется.
- Как просматривать заметки до и после установки чарта.
- Пошаговый практический пример, демонстрирующий возможности
NOTES.txt.- Как отключить вывод заметок
Подробная статья: https://devopscube.com/helm-notes-txt-file/
Please open Telegram to view this post
VIEW IN TELEGRAM
❤2
Система может выглядеть полностью исправной, даже когда под капотом уже что-то идёт не так.
В этом руководстве автор показывает, как использовать Bash и Python для автоматизации DevOps-задач в реальных продакшн-сценариях.
Вы научитесь:
https://freecodecamp.org/news/how-to-use-bash-python-for-real-devops-automation-handbook-with-production-use-cases/
👉 DevOps Portal
В этом руководстве автор показывает, как использовать Bash и Python для автоматизации DevOps-задач в реальных продакшн-сценариях.
Вы научитесь:
выявлять резкие скачки расходов в AWS;
трассировать и анализировать сервисные логи;
находить дрейф инфраструктуры;
проверять корректность ротации секретов;
автоматизировать откат канареечных релизов.
https://freecodecamp.org/news/how-to-use-bash-python-for-real-devops-automation-handbook-with-production-use-cases/
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍2❤1
Admission Control
Каждый запуск команды
Admission Control — это промежуточный слой обработки запросов, который может модифицировать, валидировать или отклонять запросы к API. Это удобный механизм для добавления недостающих значений по умолчанию, принудительного применения лимитов ресурсов, автоматической инъекции sidecar-контейнеров, блокировки некорректных конфигураций и даже полного запрета на запуск небезопасных рабочих нагрузок.
Подробно изучите работу Kubernetes Admission Control в этом практическом туториале от Márk Sági-Kazár:
Kubernetes Admission Control Tutorial
👉 DevOps Portal
Каждый запуск команды
kubectl apply проходит через Kubernetes API Server до того, как данные будут сохранены в etcd (и изменят состояние кластера).Admission Control — это промежуточный слой обработки запросов, который может модифицировать, валидировать или отклонять запросы к API. Это удобный механизм для добавления недостающих значений по умолчанию, принудительного применения лимитов ресурсов, автоматической инъекции sidecar-контейнеров, блокировки некорректных конфигураций и даже полного запрета на запуск небезопасных рабочих нагрузок.
Подробно изучите работу Kubernetes Admission Control в этом практическом туториале от Márk Sági-Kazár:
Kubernetes Admission Control Tutorial
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
Разберитесь, как на самом деле работают серверы, собрав с нуля небольшой TCP-сервер и клиент
По традиции – с большим количеством наглядных визуализаций, подробных объяснений и практических заданий:
https://labs.iximiuz.com/tutorials/how-servers-work-tcp-sockets
👉 DevOps Portal
По традиции – с большим количеством наглядных визуализаций, подробных объяснений и практических заданий:
https://labs.iximiuz.com/tutorials/how-servers-work-tcp-sockets
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6
Давно дружим с CORTEL, это ребята про enterprise решения для крупняка. Сейчас они запустили отдельный бренд для аренды VPS/VDS — Serverum.
Это сервис, где можно выбрать VPS, оплатить и сразу начать пользоваться. Подойдёт для dev/stage-сред, тестовых стендов, ботов, pet-проектов, небольших сервисов и других задач, где нужен сервер без лишней возни.
Внутри:
— собственная проприетарная платформа
— отечественные решения
— защищённая инфраструктура
— низкие цены
— живая поддержка от инженерной команды
Сейчас ребята запускают первых пользователей и собирают честную обратную связь от тех, кто реально работает с инфраструктурой.
Можно зайти, потыкать, взять VPS под задачу и написать фидбек.
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱4👍1
DevOps-инструмент недели: Agentgateway
По мере того как AI-агенты становятся частью продакшн-систем, управление их подключениями к LLM, инструментам, API и MCP-серверам становится всё более сложной задачей.
Agentgateway решает эту проблему, выступая в роли централизованного шлюза для AI-агентов.
Вот что он умеет:
- Маршрутизирует трафик между агентами, инструментами, API и LLM.
- Предоставляет единую точку входа для MCP-серверов и взаимодействия между агентами.
- Добавляет аутентификацию, политики безопасности и ограничение скорости запросов (rate limiting).
- Обеспечивает прозрачность работы агентов: позволяет отслеживать запросы, сбои и использование ресурсов.
Можно рассматривать его как API Gateway для агентных AI-систем
GitHub-репозиторий: https://github.com/agentgateway/agentgateway
👉 DevOps Portal
По мере того как AI-агенты становятся частью продакшн-систем, управление их подключениями к LLM, инструментам, API и MCP-серверам становится всё более сложной задачей.
Agentgateway решает эту проблему, выступая в роли централизованного шлюза для AI-агентов.
Вот что он умеет:
- Маршрутизирует трафик между агентами, инструментами, API и LLM.
- Предоставляет единую точку входа для MCP-серверов и взаимодействия между агентами.
- Добавляет аутентификацию, политики безопасности и ограничение скорости запросов (rate limiting).
- Обеспечивает прозрачность работы агентов: позволяет отслеживать запросы, сбои и использование ресурсов.
Можно рассматривать его как API Gateway для агентных AI-систем
GitHub-репозиторий: https://github.com/agentgateway/agentgateway
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤2
This media is not supported in your browser
VIEW IN TELEGRAM
Скормил Клоду весь свой проект на переписывание
Теперь что-то отвалилось.
Что именно он поменял, нафига поменял и как это откатить – вообще непонятно.
Ни истории коммитов. Ни блейма. Ни кнопки отменить.
Только вера, надежда и молитва🙏
Этот опенсорсный ИИ-инструмент как раз решает такую боль.
По сути – гит для ИИ-агентов.
Каждое действие записывается, каждая строчка кода привязана к промпту, который её сгенерил. Скоро ещё и полный откат завезут.
Можно спокойно давать агенту доступ на запись и при этом видеть весь след изменений с re_gent:
http://github.com/regent-vcs/re_gent
👉 DevOps Portal
Теперь что-то отвалилось.
Что именно он поменял, нафига поменял и как это откатить – вообще непонятно.
Ни истории коммитов. Ни блейма. Ни кнопки отменить.
Только вера, надежда и молитва
Этот опенсорсный ИИ-инструмент как раз решает такую боль.
По сути – гит для ИИ-агентов.
Каждое действие записывается, каждая строчка кода привязана к промпту, который её сгенерил. Скоро ещё и полный откат завезут.
Можно спокойно давать агенту доступ на запись и при этом видеть весь след изменений с re_gent:
http://github.com/regent-vcs/re_gent
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤2