
Весь мир с упорством достойным лучшего применения пытается использовать большие языковые модели, они же искусственный интеллект, в разных сферах деятельности человека. Не везде получается хорошо, но где-то отлично - например генерация кода на различных языках программирования. Злые люди поговаривают что ИИ скоро заменит программистов, но мы то тут на Хабре знаем правду.
Преамбула
У меня есть друг который работает сетевым администратором. Когда заходит разговор о том что ИИ заменит всех айтишников, он улыбается и говорит что это не про его профессию. Он говорит что ИИ плохо выполняет задачи с которыми он работает - многое надо делать руками в прямом смысле слова. У меня появилась идея проверить универсального ИИ агента - сможет ли он справиться с типовыми задачами сетевого администратора. Генерировать конфиги сетевого оборудования по промту или диагностировать проблему по логам эти задачи не выглядят как вызов для ИИ. Я выбрал задачу которая на мой взгляд более сложная - сбросить пароль на маршрутизаторе. Тут и подключение по COM-порту, работа с ROMMON и специфические тайминги. Да и ранее я не встречал решений которые автоматизируют этот процесс.
В эксперименте я использую агента Hermes и модель DeepSeekV4 Pro. Ничего более я не добавляю, тестирую в лоб без всяких специальных skills и mcp. Тем интереснее как «незамутненное сознание» агента справится с задачей.
У меня роутер Cisco 881 и переходник с usb на com-порт + цисковский консольный шнурок. Все подключено к ноутбуку на Windows на котором установлен Hermes Desktop. Задача агенту поставлена лаконично:
К порту COM4 подключен роутер Cisco 881. Необходимо сбросить пароль на устройстве. Устройство только что включено и загружается.
Агент достаточно быстро сориентировался и приступил к работе над задачей и написал что будет делать:
Роутер уже загружен и отвечает. Я вижу системные сообщения загрузки. Чтобы выполнить сброс пароля, нужна процедура password recovery с входом в ROMMON. Для этого требуется физически перезагрузить роутер и послать Break-сигнал во время загрузки.
Давайте я напишу скрипт, который будет ждать перезагрузки, отправит Break в нужный момент и выполнит всю процедуру автоматически.
Сначала прочитаем, что еще есть в выводе:
Роутер запрашивает Username: — сессия активна. Теперь для password recovery нужна физическая перезагрузка роутера с перехватом загрузки через Break-сигнал.
Я напишу скрипт автоматизации. Как только вы передёрнете питание роутера, скрипт перехватит загрузку и выполнит всё автоматически.
Скрипт запущен и ждёт перезагрузки.
⚡ Сейчас: передёрните питание роутера Cisco 881 (выкл → 3 сек → вкл).
Скрипт определит начало загрузки и автоматически выполнит всю процедуру — вам больше ничего делать не нужно. Я получу уведомление, когда скрипт завершится, и покажу результат.
И я уже было подумал что задача решена и надо придумать сценарий посложнее. Но не тут то было. Агент не смог ни с первого ни со второго раза выполнить свой сценарий. Он постоянно дорабатывал скрипт ссылаясь на то что он чего-то не учел в предыдущих версиях скрипта и неправильные тайминги. Все растянулось на час и каждый раз агент просил меня перезагружать роутер по питанию - оно и понятно, такие железки как Cisco нельзя перезагрузить не зная правильный логин и пароль.
Роутер снова в обычном режиме. Проблема в склеивании команд в ROMMON. Попробую принципиально другой подход — после BREAK сразу слать confreg 0x2142, не нажимая Enter для получения промпта:
⚡ Передёрните питание!
Подобные сообщения сыпали в окно чата работы с агентом постоянно. Я по прежнему перезагружал роутер по просьбе агента каждые 5-10 минут. Забегая вперед скажу, что в итоге я перезагрузил роутер 17 раз. Силы небесные!
А агент все улучал и улучшал скрипт. И уже к концу второго часа я почти сдался подумав что агент ушел в бесконечный цикл улучшений который ни к чему не приведет как вдруг появилось это:

Я попробовал зайти с этими учетными данными на роутер и все получилось. Агент справился с задачей. Я его нигде не поправлял и не давал никаких дополнительных данных. Один раз в самом начале я разрешил запускать скрипты на Python, когда он этого попросил. Иногда когда мне казалось что все зависло я спрашивал что происходит. В итоге 3 часа и постоянное наблюдение за ходом процесса что бы вовремя перезагружать роутер.
А можно сделать лучше?
У ИИ агентов есть интересная особенность, они умеют переиспользовать ранее созданные навыки (skills). Агент Hermes сам, время от времени, сохраняет итоги работы в виде навыков. Это позволяет уже один раз проделанную задачу выполнять быстрее. Навыки можно выгружать и передавать другим агентам что бы они не тратили время на поиск решения задачи. После проделанной работы у моего агента появился навык который он сам назвал cisco-password-recovery. Я сменил пароль на маршрутизаторе и снова попросил агента сбросить пароль. В этот раз агент использовал навык и справился за 10 минут. Попросил меня перезагрузить устройство только 1 раз в самом начале работы навыка.
Я думаю что если задаться целью то данный навык можно сильно ускорить поправив тайминги. Но больше всего хочется избавиться от необходимости перезагружать роутер вручную. И это несложно сделать подключив роутер к управляемому блоку розеток PDU. Далее дать доступ агенту к управлению розетками, что бы он сам мог когда нужно перезагружать устройство по питанию. Более доступный вариант использовать умную WI-FI розетку. Такие розетки часто имеют DIY режим который позволяет ими управлять через обычные API вызовы по сети.
Выводы
По большей части выводы я предлагаю вам сделать самим и поделится ими в комментариях. Лично для меня стало очевидно, что создавать скрипты автоматизации (которые сетевики и так часто делают) стало проще + появился оркестратор в виде ИИ агента. Что по стоимости - на весь эксперимент я потратил около 3 юаней (~40 рублей) на DeepSeek. Вызов же готового навыка обходится в сущие копейки.
Готовый навык, который создал агент, можно посмотреть здесь https://gitverse.ru/bravoavo/cisco-password-recovery-ai-skill
