OpsDeck: собрал рабочее место DevOps-инженера в одном окне и выложил в open source

—

от автора

Вспомните свой обычный рабочий день: три терминала, Lens, вкладки с Grafana, Argo CD и GitLab, KeePassXC, Obsidian с ранбуками, DBeaver, WinBox для роутеров и где-то среди всего этого — чат с ИИ. Алерт прилетает в Telegram, команду из ранбука копируешь руками, пароль ищешь в третьем окне. Мне надоело собирать себя по кусочкам каждое утро, и я сделал OpsDeck — бесплатное приложение с открытым кодом, в котором всё это живёт вместе и знает друг о друге. Ниже — экскурсия по каждому разделу со скриншотами.

Все данные на скриншотах выдуманные: кластеры, хосты и адреса — example.com и диапазоны для документации.

Репозиторий: https://github.com/LeoAlecksey/opsdeck — сборки для Linux, Windows и macOS в Releases.

Терминал, который понимает, что в нём происходит

Каждая вкладка — настоящий bash или zsh, но каждая команда становится «блоком» с кодом выхода и временем. Упала команда — внизу появляется плашка «спросить AI». Вывод подсвечивается: ERROR красным, статусы подов цветом, IP и ссылки — кликабельны (Ctrl+клик по src/main.rs:42 открывает файл на нужной строке). А пока вы набираете, серым подсказывается продолжение команды — из истории и из ваших заметок, как в fish.

Есть сплиты, запись сессии в файл, палитра команд Ctrl+Shift+P (поиск по кластерам, хостам, заметкам, сниппетам и истории) и строка ресурсов машины — локальной или удалённой, если в вкладке идёт SSH.

Локальный ИИ, который знает ваши заметки

Ctrl+Shift+K — пишете по-человечески «перезапусти воркер в shop и дождись выката», получаете готовую команду. Модель (Qwen2.5-Coder 1.5B на llama.cpp) скачивается из настроек по кнопке и работает только на вашем компьютере — запросы никуда не уходят. Главная фишка: в запрос подкладываются похожие команды из ваших заметок и истории, поэтому ИИ берёт ваши неймспейсы, контексты и флаги, а не выдумывает свои.

Если нужен ИИ посерьёзнее — справа открывается AI-панель с Claude Code, Codex, Gemini или Aider.

Kubernetes в духе Lens

Живые таблицы через watch, CPU/RAM из metrics-server, логи сразу со всех подов деплоймента, детали со ссылками на связанные объекты, YAML с применением, shell, port-forward, scale, restart, Helm и Argo CD. OpsDeck хранит свои копии kubeconfig и не трогает ваш ~/.kube/config. Для прода есть режим 🔒 «только чтение» — запрет на изменения работает на стороне бэкенда, случайный клик ничего не сломает. А под, зависший в Terminating на выключенной ноде, можно удалить принудительно — OpsDeck сам объяснит, почему он завис.

Алерты без вебхуков

OpsDeck сам опрашивает Grafana Alerting, Prometheus Alertmanager и JSON-ленты ваших анализаторов логов — ничего не нужно пробрасывать на ноутбук, IP и NAT не важны. Одинаковые алерты собираются в одну карточку со счётчиком, есть разделы по давности, «скрыть такие», переход в панель/дашборд/silence и разбор алерта в ИИ одной кнопкой.

Grafana, Argo CD и GitLab — вкладками, с автовходом

Веб-интерфейсы открываются прямо внутри окна, а логин и пароль подставляются из системного keyring или KeePass. Масштаб подгоняется под ширину экрана, так что на ноутбуке и на большом мониторе всё выглядит одинаково удобно.

Встроенная IDE с git

Подсветка для Terraform, YAML, JSON, Go, Python, Rust, SQL, Dockerfile и ещё десятка языков. Ошибки YAML и Terraform подчёркиваются прямо в коде, при сохранении .tf форматируется как terraform fmt. Справа — граф коммитов всех веток, диффы, переключение и создание веток, fetch/pull/push и коммит. Внизу — мини-консоль в папке проекта. Иконки файлов свои: T для Terraform, Y для YAML, штурвал для Helm.

Базы данных

PostgreSQL, MySQL/MariaDB, ClickHouse, Redis и MongoDB: дерево структуры, редактор запросов с историей, результат таблицей с копированием в CSV/JSON. Для Redis — его команды, для MongoDB — синтаксис mongosh. Подключение можно пометить «только чтение» — PostgreSQL и ClickHouse запретят запись на стороне сервера.

Заметки, задачи и напоминания

Заметки — обычные .md в папке, совместимые с Obsidian; хранилищ может быть несколько. Теги добавляются кнопкой с подсказками, заметки и папки перетаскиваются мышью. Задачи — строки в заметках в формате Obsidian Tasks: срок, время напоминания, приоритет. В нужное время всплывает уведомление с «Готово» и «Отложить», а по утрам — сводка на день.

Пароли, SSH и роутеры

KeePass открывается только на чтение и живёт в памяти; пароли копируются с автоочисткой буфера и подставляются во все разделы. Изменили базу в KeePassXC — OpsDeck подтянет её сам. SSH-хосты — свои профили и всё из ~/.ssh/config, с группами и jump-хостами. MikroTik — WinBox и SSH в один клик.

Мелочи, которые приятно знать

  • Интерфейс на русском и английском, встроенная справка в каждом разделе (кнопка !).

  • Обновления из GitHub Releases с проверкой подписи, а если новая версия не понравилась — откат на любую прошлую прямо из настроек.

  • Порядок иконок слева меняется перетаскиванием, размер шрифта терминала — Ctrl+=/Ctrl+-.

  • Внутри Rust + Tauri 2: приложение лёгкое, нативное и не тянет за собой Electron.

Попробовать

Скачать: https://github.com/LeoAlecksey/opsdeck/releases — .deb, .rpm, AppImage, .msi/.exe, .dmg. Работает на Ubuntu 22.04+, Debian 12+, Fedora 36+, Windows 10/11 и macOS.

Проект молодой, и мне очень важен ваш взгляд со стороны: чего не хватает в вашем рабочем дне, что раздражает, какой раздел хочется видеть следующим. Пишите в комментариях или в issues на GitHub, а звёздочка репозиторию поможет проекту найти своих людей.
P.S. буду рад очень рад любой обратной связи.
Новости и заметки про DevOps — в моём канале @sys_admin_expert.

ссылка на оригинал статьи https://habr.com/ru/articles/1090248/