# TODO — Telegram CLI Bot ## ✅ Реализовано в версии 0.8.0 ### Команда /restart_bot - [x] Запрос пароля sudo у пользователя - [x] Отключение ИИ на время ввода пароля - [x] Выполнение `sudo systemctl restart telegram-bot` - [x] Отправка уведомления с меню после перезапуска ### Исправление SSH - [x] Исправлено чтение вывода SSH команд (wait_and_read_ssh) - [x] Параллельное чтение stdout/stderr с ожиданием завершения - [x] Корректная передача stderr в результат --- ## 🧪 Тестирование ### SSH серверы — CRUD операции - [ ] **Create** — Добавление нового сервера через меню - [ ] Ввод имени (латиница, без пробелов) - [ ] Ввод host (IP или домен) - [ ] Ввод port - [ ] Ввод user - [ ] Ввод password (опционально) - [ ] Ввод tags (опционально) - [ ] Проверка сохранения в `.env` - [ ] Проверка появления в меню серверов - [ ] **Read** — Просмотр списка серверов - [ ] Отображение всех серверов в меню - [ ] Корректное отображение `display_name` - [ ] Отображение кнопок управления (⚙️) для не-local серверов - [ ] **Update** — Редактирование сервера - [ ] Выбор сервера через кнопку ⚙️ - [ ] Изменение host - [ ] Изменение port - [ ] Изменение user - [ ] Изменение tags - [ ] Изменение password - [ ] Проверка применения изменений - [ ] **Delete** — Удаление сервера - [ ] Выбор сервера через кнопку ⚙️ - [ ] Подтверждение удаления - [ ] Проверка удаления из `.env` - [ ] Проверка исчезновения из меню - [ ] Проверка невозможности удаления `local` сервера ### SSH подключение — выполнение команд - [x] **Подключение к серверу** - [x] Выбор сервера из меню - [x] Проверка смены `current_server` в состоянии - [x] Проверка сброса `working_directory` при смене сервера - [x] **Выполнение команд по SSH** - [x] Предустановленные команды (`ls -la`, `pwd`, `df -h`, etc.) - [x] Команды из сообщения (текстовые) - [x] Проверка выполнения в правильной директории - [ ] Проверка обработки `sudo` запросов пароля - [ ] Проверка обработки `confirm` запросов (y/n) - [ ] **Обработка ошибок SSH** - [ ] Недоступный сервер (timeout) - [ ] Неверный пароль - [ ] Отсутствующий SSH ключ - [ ] Ошибки выполнения команд - [ ] **Длинный вывод** - [ ] Разбивка на сообщения с кнопками "Продолжить/Отменить" - [ ] Корректное экранирование Markdown - [ ] Работа кнопок продолжения - [ ] Отмена вывода --- ## 💡 Идеи для будущих версий ### v0.9.0 - [ ] Синхронизация `.env` между несколькими экземплярами бота - [ ] Экспорт/импорт конфигурации серверов - [ ] Группировка серверов по тегам в меню - [ ] Веб-интерфейс для управления ботом - [ ] REST API для внешнего управления - [ ] Плагины для расширения функциональности --- ## 📝 Заметки - Версия 0.8.0 — стабильная, исправление SSH и команда /restart_bot - Критические баги исправляются в hotfix ветках - Новые функции — только в minor версиях