Модель разбирает незнакомый лог за секунды и выдает готовый скрипт по описанию задачи. Через три месяца такой работы в репозитории лежит код, который никто не помнит и половину которого нельзя запустить второй раз. Противоречия здесь нет: это одно и то же событие, растянутое во времени.
Ниже разбор того, что стоит отдавать модели, где проходит граница доступа и чем платит тот, кто ее не провел. Цифры только свои: 21 августа 2026 года мы посчитали два своих каталога, репозиторий питон-скриптов и набор инструментов, которые ходят по SSH на боевой сервер. Сэкономленные часы мы не замеряли ни разу, поэтому такой цифры здесь не будет.
Что реально можно отдать ИИ в администрировании
Первое: разбор незнакомой ошибки. Сообщение чужого демона, стек на языке, который вы не трогали три года. Модель дает версию за секунды, и версия часто верная. Проверяется она воспроизведением на стенде, как версия коллеги в чате. Выигрывается этап гипотезы, а не доказательства.
Второе: черновик скрипта или конфига. Ротация логов, юнит systemd, обвязка вокруг известного API, заготовка плейбука. Модель пишет скелет, вы читаете его как чужой pull request. Работает это там, где вы способны прочитать результат. Где не способны, скорость превращается в отложенный инцидент.
Третье: чужая документация. Вендорское руководство на триста страниц, changelog между мажорными версиями. Модель работает как поиск по смыслу и находит нужное место, а найденный абзац вы читаете глазами.
Про логи точнее, потому что на них возлагают больше всего надежд. С фрагментом модель работает хорошо: даете кусок вывода и вопрос, получаете подозреваемого. Подводит на трех вещах. Лог редко влезает в окно целиком, и обрезка незаметна для вас обоих: у нас канал выполнения команд режет вывод на 65 536 байт, скрипт получал обрывок и сообщал, что данные не читаются. Дальше, тон ответа одинаков и когда причина в тексте есть, и когда ее нет, поэтому просить надо не вывод, а место: «покажи строки, на которых ты это увидела». Третье: порядок событий рассыпается, если метки времени в разных поясах, а в сборном логе это норма.
Про экономию времени говорим прямо: замера у нас нет. Где ускорение действительно видно, разобрано отдельно: на каких этапах ИИ сокращает срок задачи.
Что происходит через 90 дней
21 августа 2026 года мы посчитали свои же скрипты. В репозитории оказалось 64 отслеживаемых файла .py и 12 462 строки, все за 90 дней. Тестовых файлов 2. Разбор аргументов командной строки стоял в 11 файлах из 64, у остальных пути были вписаны прямо в тело. Одиннадцать файлов не упоминались ни в одном документе, то есть найти их можно было только случайно.
Причина одна: под каждую задачу писался одноразовый скрипт в папку этой задачи. Переиспользовать было нечего, потому что найти было нечего: быстрее попросить модель написать заново, чем вспомнить, где лежит похожее. Так растет объем, а не польза.
После чистки осталось 61 файл и 12 111 строк, файлов вне документации 0, пять дублей готового клиента свелись в один. Ушли 9 файлов и 784 строки, и показательно, что именно: все девять читали вход из /tmp, а этих каталогов давно нет. Запустить повторно их было нельзя еще до удаления. Похожая история на рабочем коде разобрана в тексте про чистку легаси с помощью модели.
Где давать волю, а где нет: три зоны доступа
Вопрос «что доверить ИИ» на практике решается не списком задач, а списком прав. Одна и та же просьба «почисти старые логи» безопасна на стенде и способна снести историю на боевой машине. Мы развели работу на три зоны по тому, что произойдет при неверном ответе модели.
Чтение. Логи, конфиги, документация, объяснение чужого скрипта. Неверный ответ стоит вашего времени и ничего больше, поэтому волю даем полностью. Кроме секретов: попавший в переписку токен считается скомпрометированным независимо от того, что с ним делали дальше.
Песочница. Скрипты, сборка окружения, миграция на копии базы. Цена ошибки равна содержимому стенда. Обязательное условие одно: стенд должен быть уничтожаемым. Если он восстанавливается полдня, вы не в песочнице, вы в проде с другим именем.
Боевая запись. Все, что меняет состояние работающей системы: записи в базе, права, перезапуск демонов, деплой, удаление, отправка писем наружу. Здесь воли нет. Не потому, что модель хуже человека, а потому что цена одной ошибки несоизмерима с выигранными минутами.
| Зона | Что стоит ошибка | Сколько воли |
|---|---|---|
| Чтение: логи, конфиги, документация | Ваше время | Полная, кроме секретов |
| Песочница: стенд, копия базы, черновики скриптов | Содержимое стенда | Полная, если стенд уничтожаемый |
| Боевая запись: база, права, демоны, деплой, рассылка | Состояние работающей системы | Только по шагам с подтверждением |
На рабочих машинах граница та же и проходит по обратимости: окружение и пакеты пересобираются, пользовательские данные и ключи не восстанавливаются ничем. Общее правило вывели дороже всего: необратимое действие агент предлагает, а выполняет человек.
Четыре сбоя из-за ИИ-кода, которые мы поймали у себя
Разбирать чужие провалы дешево, поэтому здесь четыре своих. Каждый выглядел здоровым: код работал, прогон зеленый, ошибка указывала не туда.
| Симптом | Настоящая причина | Как ловить |
|---|---|---|
| Сетевые вызовы падают у нескольких скриптов сразу | Общий модуль назвали http.py, и питон взял его раньше стандартного пакета | Сверять имена файлов со списком стандартных модулей до коммита |
| Проверка всегда зеленая, работа при этом стоит | Гейт ловил ошибку «файл не найден» и возвращал пустую строку вместо падения | Прогнать гейт там, где инструмента заведомо нет: он обязан упасть |
| Данные «не читаются», хотя вручную читаются | Канал обрезает вывод на 65 536 байт, скрипт получал обрывок | Сравнить длину ответа с лимитом канала, а не искать ошибку в парсере |
| Проверка находит 0 нарушений прогон за прогоном | Экранирование съедено кавычками, шаблон поиска оказался пустым | Подложить заведомо битый файл и убедиться, что проверка его видит |
Цена второго случая измерима: пять черновиков висели непроверенными от 33 до 107 дней при зеленом прогоне. Цена третьего тоже: один пост прожил с ложной причиной 33 дня, и лечится это не переписыванием скрипта, а сжатием на стороне сервера.
Три случая из четырех об одном: система молчала о своей неработоспособности. Ни один не поймала автоматика, все нашлись, когда человек спросил, почему счетчик так подозрительно ровный. Как похожее выглядит в бизнес-задачах, разобрано в тексте про типовые отказы кода, сгенерированного по описанию.
Окружения и деплой: чем платит тот, кто дал агенту прод
Настройка окружений это лучшая зона для модели из всех, что мы пробовали. Контейнер, зависимости, юнит systemd, локальная копия сайта, машина нового разработчика: задача формулируется словами, результат проверяется запуском, неудачная попытка стирается и повторяется. Здесь скорость видна без замеров.
Деплой выглядит соседней задачей и ведет себя иначе: результат неудачной попытки стереть нельзя, придется стирать вместе с боевыми данными.
Наш счет по этой зоне такой. Обновление статьи на сайте прошло без флага прав администратора, встроенный фильтр очистки разметки вычистил содержимое, и тело записи обнулилось. Ни ошибки, ни ненулевого кода возврата: команда ответила «успешно». Спасло то, что копия тела лежала файлом на диске, оттуда и вернули 31 584 байта. Второй эпизод того же рода: тот же фильтр срезал часть оформления, это приняли за дефект верстки и вырезали руками из двух файлов, после чего возвращали отдельным прогоном.
Отсюда привычка снимать копию тела перед любой записью в прод. Таких копий в каталоге 7, и все от 20 августа 2026 года. То есть привычка появилась не до инцидентов, а после, и это честная иллюстрация того, как обычно и выглядит регламент.
Второе наблюдение неприятнее. Каталог инструментов, которыми мы ходим на боевой сервер, вырос до 78 файлов за 31 день: 32 на PHP, 31 на JavaScript, 5 на питоне, 3 шелловых. Двадцать три названы номером задачи, то есть разовые. Под контролем версий из 78 находятся 8, транспорт тоже не отслеживается. Семьдесят файлов, которые пишут в базу работающего сайта, живут без истории, ревью и возможности откатиться. Код каждого писался быстро и работал: проблема не в качестве строк, а в том, что зона боевой записи заполнилась инструментами, за которые никто не отвечает.
Вывод короткий. Скрипт, который пишет в прод, лежит в репозитории, даже если он одноразовый: одноразовость выясняется задним числом. Перед записью снимается копия, права указываются явно.
Как проверять то, что написал ИИ
После аудита у нас появилось правило из трех ступеней. Оно короткое и держится на очередности.
-
Сначала готовый инструмент
Разовый вопрос закрывается вызовом существующего инструмента. Скрипт под это не пишется вообще.
-
Потом существующий скрипт
Ищем в общем каталоге и читаем README. Аудит нашел 5 скриптов, дублировавших готовый клиент, просто потому, что этот шаг пропускали.
-
И только потом новый код
Новый переиспользуемый код обязан иметь README, разбор аргументов, внятный код возврата и общий сетевой слой. Разведочный код живет в /tmp и не коммитится.
-
Правило проверяется машиной
Линтер на pre-commit роняет коммит с нарушением. Прогон 21 августа 2026 года: 63 файла по 365 документам, нарушений 0, исключений 22, у каждого записана причина.

Четыре проверки линтера отвечают ровно тем граблям, на которые мы наступили: упомянут ли файл хотя бы в одном документе, есть ли разбор аргументов вместо путей в теле, нет ли своего цикла повторов поверх готовой библиотеки, нет ли прямого обращения к API, у которого уже есть инструмент. Ни одна не про качество кода. Все про то, найдет ли этот код живой человек через два месяца. Тот же принцип для моделей в бою разобран в тексте про эксплуатацию языковых моделей в продакшене.
Если заказывать ИИ-агента под администрирование
На нашем опыте первая задача агента звучит скучно: инвентаризация. Что есть, что запускается, что упомянуто в документации, а что лежит мертвым грузом. Агент, который пишет новый код, увеличивает ту самую кучу, из которой мы выгребали 9 мертвых файлов. Агент, который умеет сказать «этого файла нет», снимает риск вместо того, чтобы добавлять строки.
Права выдаются по зонам, а не одним куском: чтение и песочница сразу, боевая запись по одному действию с подтверждением. Секреты не выдаются вовсе, агент работает с именем переменной окружения, а не с ее значением. Что стоит требовать на входе, кроме умения писать код:
-
Он показывает источник, а не пересказ
Ответ «в логе строки 4012 и 4013» проверяется. Ответ «судя по логу, упал диск» проверить нечем.
-
Он умеет сказать «не знаю»
Проверяется вопросом, ответа на который в ваших данных нет. Правдоподобная догадка на боевой машине дороже честного отказа.
-
Он помнит прошлые прогоны
Без истории агент каждый раз предлагает написать заново то, что уже написано. Так у нас и выросли 78 файлов за 31 день.
-
Необратимое он предлагает, а не делает
Удаление, деплой, правка прав, рассылка проходят через человека. Обратимое пусть делает сам, иначе смысл теряется.
Первые недели такой агент больше отвечает на вопросы про вашу инфраструктуру, чем производит код. Это нормальный признак. Дальше поверх навешивается рутина: дежурный разбор логов, регулярные проверки, сопровождение инфраструктуры с понятной историей изменений.
Сколько это стоит
Ставка 2 500 ₽/ч, оплата по факту сделанного, без аванса. Объем работ по чужой инфраструктуре заранее неизвестен, поэтому фиксированную цену за него мы не называем: в ней всегда заложен запас в нашу сторону.
Делаем то же, что описано выше: инвентаризация накопившегося, разведение прав по трем зонам, копия перед записью в прод, линтер на pre-commit. Дальше автоматизируем рутину поверх приведенной в порядок базы. Цифру сэкономленных часов не обещаем. Мерить предлагаем другое: сколько скриптов переживает второй прогон и сколько проверок действительно ловит ошибку.
Разберем, что у вас накопилось за последние месяцы
Инвентаризация скриптов, чистка мертвого кода, права по зонам, линтер на pre-commit. Оплата по факту, без аванса.
Посмотрим ваш репозиторий скриптов
Оставьте контакт: покажем, какие скрипты не запускаются, какие проверки врут и что сводится в общий слой.
Вопросы, которые звучат на первом созвоне.
Сколько часов в неделю экономит ИИ системному администратору?
У нас такого замера нет, поэтому числа мы не назовем. Замерили другое: за 90 дней в репозитории накопилось 64 файла и 12 462 строки, из них 11 файлов не упоминались ни в одном документе, а 9 пришлось удалить как неработоспособные. Скорость написания кода выросла точно, а что происходит с сопровождением, считается отдельно.
Можно ли пускать ИИ-агента на боевой сервер?
На чтение да, на запись по одному действию с подтверждением человека. Опасна не глупость модели, а необратимость: наше обновление статьи прошло без флага прав, фильтр очистки разметки вычистил содержимое, тело записи обнулилось, а команда ответила «успешно». Вернули из копии на диске, 31 584 байта. Отсюда правило: копия перед записью, права явно, необратимое выполняет человек.
Что из настройки окружений безопасно отдать модели?
Почти все, если окружение уничтожаемое. Контейнер, зависимости, юнит systemd, локальная копия сайта, машина нового разработчика: результат проверяется запуском, неудачная попытка стирается. Если ваш стенд восстанавливается полдня, это уже не песочница, и правила там действуют как для боевой машины.
Почему сгенерированный код выглядит рабочим и при этом врет?
Модель пишет то, что чаще встречается в похожем коде, включая привычные заглушки. Перехват исключения с возвратом пустой строки, чтение потока без учета лимита канала, проверка с потерянным экранированием читаются как нормальный код. Ловятся одним приемом: подложить заведомо сломанный вход и убедиться, что проверка падает. Проверка, которая не умеет падать, ничего не проверяет.
Помогает ли ИИ разбирать объемную техническую документацию?
Да, на поиске по смыслу: модель находит место, где сказано про ваш случай, в руководстве на сотни страниц. Пересказ этого места читаем глазами по первоисточнику. Тон ответа одинаковый и когда абзац в документе есть, и когда его нет, поэтому цитата всегда полезнее пересказа.
С какой задачи начинать ИИ-агента для администрирования?
С инвентаризации того, что уже написано: какие скрипты запускаются, какие мертвы, где проверки показывают зеленое при неработающем процессе. Агент, который сразу пишет новый код, увеличивает объем кучи. Полезен тот, кто знает вашу инфраструктуру и умеет ответить «этого файла нет». Ставка 2 500 ₽/ч, оплата по факту, без аванса.
