OpsDeck
Бесплатно · open source · MIT

Рабочее место DevOps-инженера в одном окне

Терминал с локальным ИИ, Kubernetes, SSH и мониторинг хостов, базы данных, IDE с git, алерты, заметки с задачами, KeePass и MikroTik — вместе и знают друг о друге. Включите только те разделы, которые нужны вам.

Linux (.deb, .rpm, AppImage) · Windows (.msi, .exe) · macOS (.dmg, Intel и Apple Silicon)
Терминал OpsDeck с подсветкой вывода kubectl и terraform

Как начать

Три шага — и можно работать. Всё остальное настраивается по ходу дела.

1

Скачайте установщик

На странице последнего релиза выберите файл для своей системы:

  • Ubuntu/Debian — .deb, Fedora — .rpm, любой Linux — .AppImage
  • Windows 10/11 — .msi или .exe
  • macOS — .dmg (aarch64 для M1–M4, x64 для Intel)
2

Установите и запустите

Обычная установка для вашей системы. Дальше OpsDeck обновляется сам: при выходе новой версии на ⚙ появится ↑.

macOS: сборки не подписаны сертификатом Apple. Если macOS пишет «приложение повреждено», перетащите OpsDeck в «Программы» и выполните в Терминале xattr -cr /Applications/OpsDeck.app.

3

Включите нужные модули

Сначала открыты пять разделов: Терминал, Kubernetes, SSH, KeePass и Заметки. Кнопка ⊞ внизу левой колонки добавит остальные.

Пути к KeePass и папке заметок OpsDeck найдёт сам, если они лежат в домашней папке. Проверить — в ⚙ Настройки.

Модули: только то, что нужно

Кнопка ⊞ внизу левой колонки открывает список разделов с галочками. Выключенный раздел исчезает из меню и не загружается при запуске.

  • Порядок иконок меняется перетаскиванием мышью.
  • Если раздел нужен другому, он включится сам: например, SSH откроет вкладку терминала, даже если терминал был выключен.
  • Тем, кто обновился со старой версии, включены все разделы — ничего не пропадёт.
Меню модулей с галочками
МодульДля чегоВ новой установке
Терминал + AIВкладки и сплиты с bash/zsh/PowerShell/WSL, цветовые схемы, локальный ИИ, AI-панель с Claude Code, Codex, Gemini, Aider, OpenCode и чатом со встроенной модельювключён
KubernetesКластеры, поды, логи, YAML, shell, port-forward, Helm, Argo CD, фильтр по меткам, нагрузка нод вживуювключён
SSHСвои профили и хосты из ~/.ssh/config, группы, jump-хостывключён
KeePassПароли из базы .kdbx для всех разделоввключён
ЗаметкиMarkdown-хранилища, совместимые с Obsidian, теги, задачивключён
Grafana · ArgoCD · GitLabВеб-панели вкладками с автовходомгалочкой
АлертыGrafana Alerting, Alertmanager, Zabbix и ваши анализаторы логовгалочкой
Сеть и DNSping, mtr, traceroute, dig, скан портовгалочкой
IDE: код и gitРедактор с подсветкой, проверка YAML/Terraform, граф коммитов, веткигалочкой
Базы данныхPostgreSQL, MySQL/MariaDB, ClickHouse, Redis, MongoDBгалочкой
Задачи и напоминанияЗадачи из заметок по срокам, календарь, уведомлениягалочкой
MikroTik / WinBoxWinBox и SSH к роутерам в один клик, импорт списка роутеров из WinBoxгалочкой
Мониторинг хостовДоска SSH-хостов: CPU, load, RAM, диск, аптаймгалочкой

Что умеет каждый раздел

В каждом разделе есть кнопка ! в правом верхнем углу — там подробная справка прямо в приложении. Ниже — коротко, как пользоваться.

Терминал

Настоящий bash, zsh или PowerShell, но каждая команда становится блоком с кодом выхода и временем.

  • Ctrl+Shift+T — новая вкладка, Ctrl+Shift+D / Ctrl+Shift+E — разделить вправо / вниз.
  • Пока набираете, серым подсказывается продолжение из истории и заметок: → — принять.
  • Наведите на команду — скопировать её или вывод, сохранить сниппетом, отправить в AI. Упала команда — внизу плашка «спросить AI».
  • Ctrl+клик по пути вида src/main.rs:42 открывает файл на нужной строке.
  • ⏺ записывает сессию в текстовый файл, строка внизу показывает CPU, RAM и диск — этой машины или удалённой в SSH.
Где настроить: ⚙ → Терминал — подсветка, подсказки, размер и шрифт (есть MesloLGS NF и Nerd Fonts для Powerlevel10k), цветовая схема (OpsDeck, Campbell, One Half Dark, Solarized, Dracula или своя из JSON). На Windows там же блок «Windows»: оболочка для новых вкладок — PowerShell 5.1/7, Git Bash, cmd или WSL, импорт схем из Windows Terminal; кнопка WSL рядом с + открывает вкладку дистрибутива.
Терминал с блоками команд

Локальный ИИ

Ctrl+Shift+K в терминале: опишите словами, что сделать, и получите готовую команду. В запрос подкладываются похожие команды из ваших заметок и истории — поэтому ИИ берёт ваши неймспейсы и флаги, а не выдумывает свои.

  • Вставить (Enter) кладёт команду в строку без запуска, Выполнить (Ctrl+Enter) — сразу.
  • Модель работает только на вашем компьютере, запросы никуда не уходят.
  • Нужен ИИ посерьёзнее — AI ▸ справа открывает панель с Claude Code, Codex, Gemini, Aider или OpenCode. Там же «OpsDeck AI (локальный)» — чат с той же встроенной моделью, см. ниже.
Где включить: ⚙ → Локальный ИИ → выберите модель → «Установить». Модели: лёгкая Qwen2.5-Coder 1.5B (≈1,1 ГБ), Qwen3.5 4B и 9B, Qwen3.6 35B-A3B или свой файл .gguf. Там же «Ускорение: Видеокарта (Vulkan)» — если видеокарты нет, ИИ сам перейдёт на процессор. Уже есть Ollama, vLLM или LM Studio — укажите её в блоке «Внешний ИИ-сервер».
Локальный ИИ предлагает команду по описанию

Чат с локальным ИИ

В AI-панели (AI ▸) выберите «OpsDeck AI (локальный)» — и работайте с встроенной моделью как с полноценным ассистентом рядом с терминалом.

  • Ответ печатается по мере генерации, Стоп прерывает. Модель знает ОС, оболочку и текущую папку терминала.
  • Команды из ответа: ▸ В терминал вставляет в активную вкладку без Enter — сами ничего не запускаются; Копировать.
  • Ctrl+Shift+A, логи подов и алерты (⇢ AI) падают в поле вопроса, кнопка «@» в заметках отправляет текст заметки.
  • Агент по умолчанию выбирается в ⚙ → AI-агент — он открывается в панели и получает всё, что вы отправляете в AI.
Чат с локальным ИИ рядом с терминалом

Настройка ИИ

  • ★ в списке моделей отмечает самую крупную, которая подходит по памяти вашего компьютера.
  • Модели скачиваются с проверкой контрольной суммы и удаляются по одной.
  • Модель запускается при первом запросе и выгружается из памяти через 15 минут без дела.
  • Для внешнего сервера API-ключ хранится в системном хранилище паролей. OpsDeck предупредит, если запросы уходят с компьютера или идут без шифрования.
Настройки локального ИИ: модель, ускорение, внешний сервер

Kubernetes

Живые таблицы ресурсов в духе Lens: обновляются сами, с CPU и RAM из metrics-server.

  • + слева вверху — добавить кластер: отметить контексты из ~/.kube/config, вставить YAML или перетащить файл в окно. Ваш ~/.kube/config не меняется.
  • Клик по строке — панель снизу: логи (у деплоймента со всех подов сразу), детали со ссылками, YAML с применением.
  • Shell, port-forward, scale, restart, Helm rollback, Argo CD sync — кнопками справа.
  • 🔒 у контекста — режим «только чтение»: изменения блокируются на стороне приложения, случайный клик ничего не сломает.
  • Фильтр по меткам как у kubectl -l: app=api, env in (prod,stage), !canary. У нод CPU и RAM обновляются каждые 5 секунд — с полоской загрузки и графиком.
Где настроить: ⚙ → Kubernetes — показывать ли контексты из общего ~/.kube/config. ⎈ Терминал в разделе открывает shell с kubectl, helm и k9s в выбранном контексте.
Список подов с CPU и RAM

Алерты

OpsDeck сам опрашивает источники — на компьютер ничего не нужно пробрасывать, IP и NAT не важны.

  • Источники: Grafana Alerting, Prometheus Alertmanager, Zabbix 6.0+ (то же, что на его странице Problems; токен или логин/пароль, в том числе за HTTP Basic) и JSON-ленты ваших анализаторов логов.
  • Одинаковые алерты собираются в одну карточку со счётчиком, разделы по давности. В карточке — сам алерт, метки и детали правила открываются кнопкой «Подробнее».
  • Кнопки карточки: дашборд и правило во встроенной вкладке Grafana, → AI — разбор алерта, ✓ Просмотрен, 🔕 Скрыть такие.
Где включить: модуль «Алерты» в ⊞. Источник добавляется в разделе Grafana · ArgoCD · GitLab: + Добавить → тип Grafana, Alertmanager или AI-анализатор → «Сохранить и проверить». Для Grafana достаточно токена service account с ролью Viewer. Частота опроса — ⚙ в разделе алертов.
Карточки алертов с действиями

SSH

  • «Подключиться» открывает вкладку терминала. Хосты из ~/.ssh/config работают со всеми своими настройками, включая ProxyJump.
  • + Хост — свой профиль: адрес, порт, пользователь, ключ, jump-хост, пароль из KeePass или keyring.
  • Хосты раскладываются по группам перетаскиванием мышью — на заголовок группы или в «+ Новая группа».
  • Пароль кладётся в буфер на 30 секунд — вставьте Ctrl+Shift+V, когда ssh спросит.
SSH-хосты по группам

Мониторинг хостов

Доска с карточками SSH-хостов: CPU, load, память, диск и аптайм. Цвет карточки — по худшему показателю: жёлтый от 75%, красный от 90%.

  • + Хосты — профили из раздела SSH и хосты из ~/.ssh/config, группы становятся разделами доски.
  • Метрики снимаются по ssh-ключу или через уже открытую сессию — пароль доска не спрашивает. Соединение переиспользуется, опрос дешёвый.
  • Группы сворачиваются (остаётся сводка по цветам, хосты не опрашиваются), × убирает хост или группу с доски.
Где включить: модуль «Мониторинг хостов» в ⊞. Частота опроса — вверху раздела.
Доска мониторинга SSH-хостов

IDE: код и git

  • 📂 — открыть папку проекта, дерево слева показывает изменения git цветом.
  • Подсветка для Terraform, YAML, JSON, Go, Python, Rust, SQL, Dockerfile и других. Ошибки YAML и Terraform подчёркиваются сразу, .tf при сохранении форматируется как terraform fmt.
  • ⎇ git внизу справа — изменения, коммит, граф всех веток, переключение и создание веток, fetch/pull/push. Ветку переключили в терминале — граф обновится сам.
  • ▭ консоль (Ctrl+`) — терминал прямо в папке проекта.
Где включить: модуль «IDE: код и git» в ⊞. Чтобы файлы из терминала открывались здесь, выберите «OpsDeck IDE» в панели 📁 Файлы терминала.
Редактор Terraform и панель git

Базы данных

  • PostgreSQL, MySQL/MariaDB, ClickHouse, Redis и MongoDB. + — новое подключение, «Сохранить и проверить» сразу покажет версию сервера или ошибку.
  • Слева структура базы, двойной клик по таблице — первые строки. Ctrl+Enter — выполнить запрос.
  • Результат копируется в CSV или JSON, история хранит последние 50 запросов.
  • Галочка «только чтение» для прод-баз: PostgreSQL и ClickHouse запрещают запись на стороне сервера.
Где включить: модуль «Базы данных» в ⊞. Пароль — в системном keyring или из записи KeePass.
Структура базы и результат запроса

Заметки

  • Обычные .md-файлы в папке, совместимые с Obsidian. Хранилищ может быть несколько: переключение — кнопкой с названием вверху слева.
  • Теги — кнопкой «+ тег» с подсказками, заметки и папки перетаскиваются мышью, удалённое уходит в корзину хранилища.
  • Команды из блоков кода в заметках подсказываются в терминале и помогают локальному ИИ.
  • + Задача вставляет задачу в формате Obsidian Tasks: срок, время напоминания, приоритет, теги.
Где настроить: ⚙ → Заметки — папка хранилища. Создать новое хранилище или открыть папку — в меню с названием хранилища.
Заметка-ранбук с командами и задачами

Задачи и напоминания

  • Все задачи из заметок по срокам: просрочено, сегодня, завтра, на неделе. Галочка — выполнено.
  • В назначенное время всплывает уведомление: «Готово», «Отложить», «Открыть заметку». По утрам — сводка на день.
  • 📅 Календарь — задачи на каждый день месяца.
Где включить: модуль «Задачи и напоминания» в ⊞. Напоминания работают, пока OpsDeck запущен.
Задачи по срокам

KeePass

  • База .kdbx открывается только на чтение, расшифрованная живёт лишь в памяти.
  • Пароль вводится один раз — база остаётся открытой до закрытия OpsDeck и сама подтягивает изменения, сделанные в KeePassXC.
  • 👤 / 🔑 — скопировать логин / пароль, буфер очищается через 30 секунд.
  • Записи привязываются к веб-панелям, SSH, базам и роутерам — пароли подставляются сами.
Где настроить: ⚙ → KeePass — путь к базе, ключевой файл и автоблокировка вместо «держать открытой».
Записи KeePass

Grafana · ArgoCD · GitLab

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

Сеть и DNS · MikroTik

ping, mtr, traceroute, dig, nslookup и скан портов с баннерами сервисов. Для MikroTik — WinBox и SSH в один клик с паролем из KeePass; путь к WinBox — в ⚙. «Импорт из WinBox» переносит сохранённые роутеры из его списка адресов вместе с группами и (по галочке) паролями.

Горячие клавиши

Все сочетания с Ctrl+Shift работают и на русской раскладке.

Ctrl+Shift+PПалитра команд: поиск по кластерам, хостам, заметкам, паролям, сниппетам и истории
Ctrl+Shift+KЛокальный ИИ: команда по описанию словами
Ctrl+Shift+T / Ctrl+Shift+WНовая вкладка / закрыть панель или вкладку
Alt+1…9, Alt+←/→, Ctrl+TabВкладка по номеру (9 — последняя) / предыдущая и следующая вкладка
Ctrl+Shift+D / Ctrl+Shift+EРазделить терминал вправо / вниз
Ctrl+Shift+↑/↓К предыдущей / следующей команде в выводе
Ctrl+Shift+A / Ctrl+Shift+IВыделенное — в AI / показать AI-панель
Ctrl+Shift+RПереподключиться: оборвавшаяся SSH-сессия во вкладке или упавший ssh в shell
Ctrl+Shift+BПанель файлов текущей папки
Ctrl+= / Ctrl+- / Ctrl+0Размер шрифта терминала
→ / Ctrl+→Принять подсказку целиком / одно слово
Ctrl+S, Ctrl+EСохранить; в заметках — переключить редактор и просмотр
Ctrl+EnterВыполнить запрос к базе; в git — закоммитить

Вопросы

Это бесплатно? Куда уходят мои данные?

Бесплатно, код открыт под лицензией MIT. Настройки хранятся в ~/.config/opsdeck/, пароли — в системном хранилище паролей (keyring), база KeePass открывается только на чтение. Встроенный ИИ работает на вашем компьютере. Данные уходят наружу, только если вы сами подключили внешний ИИ-сервер (OpsDeck об этом предупредит) или запустили облачный инструмент в AI-панели — например, Claude Code.

На каких системах работает?

Linux с glibc 2.35+ (Ubuntu 22.04+, Debian 12+, Fedora 36+), Windows 10/11, macOS 10.13+ на Intel и 11+ на Apple Silicon.

Как обновляться? А если новая версия сломалась?

OpsDeck сам проверяет GitHub Releases: на ⚙ появится ↑, кнопка «Обновить и перезапустить» скачает обновление и проверит его подпись. Если новая версия чем-то мешает, в ⚙ → Обновления → «Другие версии» можно вернуться на любую прошлую.

macOS пишет, что приложение повреждено

Оно не повреждено — так macOS помечает скачанные программы без платной подписи Apple. Перетащите OpsDeck в «Программы» и выполните xattr -cr /Applications/OpsDeck.app. Если появится «не удалось проверить разработчика» — «Системные настройки» → «Конфиденциальность и безопасность» → «Всё равно открыть».

Как перенести OpsDeck на другой компьютер?

⚙ → «Перенос на другой компьютер» → «Экспорт…»: отметьте, что взять — настройки и интерфейс, SSH, веб-панели, базы, MikroTik, сниппеты, kubeconfig, папку заметок. На новом компьютере — «Импорт…» с тем же архивом. Пароли в архив не попадают (они в системном хранилище), их нужно ввести заново.

Локальный ИИ медленный

Крупные модели на процессоре думают несколько секунд. Включите ⚙ → Локальный ИИ → Ускорение → «Видеокарта (Vulkan)» или выберите модель поменьше. Подойдёт и встроенная графика Intel или AMD.

Как предложить идею или поучаствовать?

Пишите в issues. Pull request'ы принимаются в ветку dev — подробности в CONTRIBUTING.md.