Возможность
Пример команды
🎤 Голосовое управление
«Открой Obsidian и напиши стих»
🖥️ Управление окнами
«Сверни все окна», «Открой блокнот»
📝 Запись в приложения
«Напиши заметку в Obsidian»
🐚 Терминал и процессы
«Запусти сервер», «Покажи логи»
📁 Файлы и Git
«Сделай коммит», «Покажи diff»
🌐 Браузерный агент
«Открой сайт и прочитай текст»
🔍 Поиск в интернете
«Найди документацию по FastAPI»
⏰ Напоминания
«Напомни через 10 минут проверить тесты»
🧠 Долговременная память
«Запомни, мой любимый редактор — VS Code»
📋 UI Automation
«Нажми кнопку ОК в активном окне»
👁️ OCR
«Распознай текст на экране»
📊 Desktop UI
Полноценное окно управления процессами, памятью и разрешениями
🔄 Отказоустойчивость
Автоматический fallback между Groq и OpenRouter
🔒 Безопасность
Подтверждение опасных действий, sandbox для кода, запрет записи в системные каталоги
1. Установите Python 3.14
Скачайте с python.org и установите, обязательно отметьте Add to PATH .
2. Клонируйте репозиторий
git clone https:// github.com / ваш- username/ nova.git
cd nova
# ## 3. Настройте API-ключи
Создайте файл ` .env` в корне проекта:
```e nv
GROQ_API_KEYS= gsk_ваш_ ключ
OPENROUTER_API_KEYS= sk- or- ваш_ ключ
Где взять ключи:
4. Автоматическая установка зависимостей
python scripts/ install_dependencies.py
Или вручную:
python - m venv venv
.\venv\Scripts\activate
pip install - r requirements.txt
pip install torch -- index- url https:// download.pytorch.org/ whl/ cpu
pip install playwright
python - m playwright install chromium
Нажмите Ctrl+Shift+Space и скажите:
Открой блокнот и напиши привет
Клавиша
Действие
Ctrl+Shift+Space
Включить/выключить голосовой режим
Esc
Прервать речь Nova
Ctrl+Shift+Q
Прервать речь Nova
Быстрые команды (без обращения к LLM)
Команда
Результат
«Сколько времени?»
Текущее время
«Сделай громче» / «Убавь звук»
Громкость
«Выключи звук» / «Включи звук»
Mute
«Сверни все окна»
Свернуть окна
«Закрой окно»
Закрыть активное окно
«Открой блокнот» / «Запусти калькулятор»
Запуск приложения
«Закрой блокнот»
Закрытие приложения
Команда
Результат
«Открой Obsidian и напиши стих»
Запуск + запись
«Напиши в блокноте привет»
Ввод текста
«Открой блокнот и сделай заметку»
High-level skill
Команда
Результат
«Создай файл test.txt с текстом привет»
Запись файла
«Прочитай файл test.txt»
Чтение файла
«Найди все файлы .txt на рабочем столе»
Поиск
«Покажи diff файла test.txt»
Diff
«Откати файл test.txt»
Rollback из backup
Команда
Результат
«Запусти терминальную команду echo hello»
Выполнение команды
«Запусти фоновый процесс python -m http.server»
Фоновый сервер
«Покажи статус процесса»
Статус
«Прочитай логи процесса»
Stdout/stderr
«Останови процесс»
Остановка
«Покажи все процессы»
Список
Команда
Результат
«Проверь статус Git»
git status
«Покажи diff»
git diff
«Покажи историю коммитов»
git log
«Сделай коммит с сообщением тест»
git commit
«Покажи ветки»
git branch
Команда
Результат
«Запомни, мой любимый цвет синий»
Сохранение
«Какой мой любимый цвет?»
Поиск
«Что ты обо мне помнишь?»
Список
«Забудь мой любимый цвет»
Удаление
«Очисти всю память»
Очистка
Команда
Результат
«Напомни через 10 минут проверить тесты»
Установка
«Какие у меня напоминания?»
Список
Команда
Результат
«Запусти браузер»
Запуск Playwright
«Открой сайт example.com»
Навигация
«Прочитай текст страницы»
Извлечение текста
«Сделай скриншот страницы»
Скриншот
«Закрой браузер»
Остановка
Команда
Результат
«Выполни план: открой блокнот, затем напиши привет»
Многошаговый план
«Запусти в фоне план: открой калькулятор, подожди, закрой»
Фоновый план
«Покажи статус фонового плана»
Статус
«Отмени фоновый план»
Отмена
Команда
Результат
«Покажи дерево UI активного окна»
Структура элементов
«Найди кнопку с именем ОК»
Поиск элемента
«Нажми кнопку с именем ОК»
Клик по элементу
Команда
Результат
«Распознай текст на экране»
OCR
«Найди на экране слово Отмена»
Поиск текста
Nova поставляется с полноценным Desktop UI на PySide6.
Возможности:
Обзор — текущее состояние Nova
Процессы — просмотр и остановка фоновых процессов
Память — просмотр, удаление и очистка долговременной памяти
Разрешения — подтверждение или запрет опасных операций
Модели — состояние провайдеров и ключей
Журнал — лог команд UI
Desktop UI запускается автоматически вместе с Nova. Чтобы отключить:
# Запустить все тесты (220+ тестов)
python - m pytest - v
# Запустить конкретный тест
python - m pytest tests/ test_speech_service.py - v
# Запустить тесты безопасности
python - m pytest tests/ test_security_redteam.py - v
nova/
├── core/ # Конфигурация, системный промпт
├── modules/
│ ├── agent/ # Планировщик, Executor, Recovery Engine
│ ├── application/ # Агент, речь, отчёты
│ ├── audio/ # STT (Whisper), TTS (Silero)
│ ├── brain/ # LLM, память, роутер моделей, gateway
│ ├── browser/ # Playwright browser agent
│ ├── domain/ # Результаты, состояния, события
│ ├── local/ # Локальный STT/LLM fallback
│ ├── security/ # Sandbox для Python-кода
│ ├── storage/ # SQLite, история, память, артефакты
│ ├── tools/ # Реестр, раннер, политики, навыки
│ ├── ui/ # Desktop UI (PySide6), overlay
│ └── windows/ # Файлы, процессы, Git, UI Automation, OCR
├── data/ # Локальные данные (память, логи, бэкапы)
├── scripts/ # Установщик, сборка
├── tests/ # 220+ тестов
├── main.py # Точка входа
└── .env.example # Пример конфигурации
Далее модули будут дополняться
pip install pyinstaller
python scripts/ build_installer.py
Исполняемый файл: dist/Nova.exe
Pull Request'ы приветствуются. Пожалуйста, убедитесь, что тесты проходят:
MIT