Как появился проект?
В один прекрасный момент мне надоело держать в голове все IP-адреса всех серверов, к которым нужно подключаться и я решил поискать, а как же можно сделать так, чтобы просто взять и набрать команду типа ssh мой_самый_лучший_сервер_1?
Сразу же на ум пришел файл config. Было удобно до того самого момента, пока серверов не стало больше 50, а поддерживать файл руками, делать вложенные файлы и помнить все имена не превратилось в очередную боль.
Пожив какое-то время с конфигом, я устал... я мухожук...
В итоге в наш век развития вайб-кодинга было придумано гениальное(!) решение использовать для написания LLM. Используя по работе различные модели решил прикупить себе DeepSeek V4.1 Flash.
Почему именно он?
По нескольким причинам:
- Да просто хотелось попробовать не использованную ранее модель
- Его можно оплатить с чуть меньшей болью, чем тот же Claude
- Его не заблокируют, потому что ты из России 🙂
Что вошло в прототип и сколько времени на него было потрачено?
Для начала хотелось простую утилиту, которая позволит максимально быстро подключиться к нужному серверу без запоминания адресов, портов, ключей и прочего. Сделал list, увидел, подключился. Так родился первый MVP CLI.
Было потрачено пара часов (из которых час с лишним ушел на подумать, чего же я точно хочу, и написание промпта) и около 40 центов.
И, внезапно, оно заработало как надо! 🥳
Но нам же мало 😁 Хочется не просто управлять в терминале хостами, а еще и работать в GUI, делать группы, и вообще, всячески наглядно видеть все!
Далее был напилен GUI для работы с хостами, добавлены группы для логического разделения.
Технологический стек
Так как я работаю на маке, логично было написать утилитку на Swift, что я собственно и сделал. Всегда хотелось написать что-то полезное для мака.
С какими самыми неожиданными трудностями пришлось столкнуться?
Дикпик DeepSeek очень слабо умеет понимать графику. Поэтому пришлось долго и подробно объяснять, где именно съехала граница у GUI-клиента.
Какие планы на будущее?
Пока что оно работает так, как мне нужно, но я готов допилить утилитку по запросам трудящихся.
Сейчас в планах разместить это в Homebrew и сделать промо-страничку.
В целом, если это кому-то упростит жизнь так же как мне, будет здорово. ❤️

А чем оно лучше sshm, sshs, lazyssh и тонны других альтернатив?
При всём уважении, но я бы не стал пускать свои SSH-соединения через не очень понятные mitm утилиты (к вышеописанным тулзам это тоже относится). Спокойнее уж взять официальный bash-completion к SSH (и поженить его с fzf при надобности).