Voice command reference
Все голосовые команды J.A.R.V.I.S. (текущее состояние, 67 паков).
Каждая команда — это фраза, которую можно произнести после wake-word ("Джарвис").
Группы:
После каждой команды есть 30-секундное grace-окно для follow-up без повторного "Джарвис".
Конфигурируется через CONVERSATION_GRACE_MS.
Управление ассистентом
| Команда (RU) |
Что делает |
| "Помощь" / "что ты умеешь" |
Перечисляет категории возможностей |
| "Расскажи о себе" / "кто ты такой" |
Краткое представление (LLM варьирует) |
| "Сколько команд знаешь" |
Health snapshot — все активные бэкенды + счётчики |
| "Диагностика" / "доложи о себе" |
Одной строкой: TTS, LLM, профиль, памяти/задач |
| "Повтори за мной X" |
Эхо — для теста микрофона + TTS |
| "Что я сказал" |
Что услышал из последней фразы |
| "Стоп" / "хватит" / "прекрати" |
Прерывает текущую команду |
| "Сбрось контекст" / "забудь разговор" |
Очищает историю LLM |
| "Повтори последнее" / "повтори ответ" |
Озвучивает последний ответ LLM |
LLM / мозг
| Команда |
Что делает |
| "Переключись на локальный" / "перейди на оллама" |
Hot-swap на Ollama (persistent в БД) |
| "Переключись на облако" / "используй грок" |
Hot-swap на Groq |
| "Какой у тебя мозг" / "облако или локально" |
Текущий backend |
Любая фраза без распознанной команды → LLM router (если включён) → если нет матча → LLM chat fallback.
Память / профили / macros
| Команда |
Что делает |
| "Запомни что я люблю чай улун" |
Сохраняет факт |
| "Что ты помнишь про чай" |
Substring-поиск по памяти |
| "Что ты знаешь обо мне" |
Все факты |
| "Забудь про X" |
Удалить факт |
| "Режим работа" / "режим игра" / "режим сон" / "режим за рулём" / "обычный режим" |
Профиль (5 встроенных) |
| "Какой сейчас режим" |
Активный профиль |
| "Запиши макрос имя" |
Начать запись макроса |
| "Сохрани макрос" |
Завершить запись и сохранить |
| "Отмени макрос" |
Отменить запись |
| "Запусти макрос имя" |
Воспроизвести (с интервалом 800мс) |
| "Какие у меня макросы" / "удали макрос имя" |
Управление списком |
Также: GUI страницы /memory (добавить/забыть факты), /macros (запуск/удаление), /scheduler (отмена задач).
Расписание / напоминания / привычки
| Команда |
Что делает |
| "Напомни через 5 минут выключить кофеварку" |
One-shot reminder |
| "Напомни в 18:00 забрать ребёнка" |
Today at HH:MM |
| "Каждые 2 часа напоминай попить воды" |
Interval |
| "Каждый день в 9:00 делай брифинг" |
Daily |
| "Что у меня запланировано" / "очисти расписание" |
Управление |
| "Отмени напоминание про воду" |
Substring-match remove |
| "Запусти помодоро" / "стоп помодоро" |
25/5 циклы |
| "Напоминай мне пить воду" |
Каждые 2 часа |
| "Напоминай размяться" |
Каждые 50 минут |
| "Напоминай отдыхать глазам" |
20-20-20 (каждые 20 мин) |
| "Отключи все привычки" |
Стоп всех habit_nudge задач |
| "Настрой утренний брифинг на 9:00" |
Daily briefing в указанное время |
| "Утренний брифинг" |
Запустить брифинг сейчас |
| "Отключи утренний брифинг" |
Снять daily задачу |
Окна / приложения / процессы
| Команда |
Что делает |
| "Открой Telegram" / "запусти Steam" / "Spotify" |
Через apps/ пак (имя в config) |
| "Закрой Telegram" / "убей процесс X" |
Process kill |
| "Сверни всё" / "разверни окно" / "переключи окно" |
Window manager |
| "Какие открыты окна" |
Список Z-order |
| "Сверни активное" / "максимизируй" |
Action на foreground |
| "Открой папку загрузок" / "файлы" / "проводник" |
Explorer |
Аудио / медиа
| Команда |
Что делает |
| "Громче" / "тише" / "громкость на 30" |
Volume up/down/set |
| "Заглуши" / "сними заглушку" |
Mute toggle |
| "Какая громкость" |
Текущий уровень |
| "Открой панель звука" |
Sound panel |
| "Включи Realtek" / "переключи звук на Headphones" |
Output device swap |
| "Пауза" / "плей" / "следующий трек" / "предыдущий трек" / "стоп музыка" |
Media keys — Spotify / YouTube / Foobar / Yandex Music |
| "Запиши голосовую заметку" |
(см. notes/) |
| "Выключи музыку через 30 минут" |
Sleep timer для медиа |
Система / устройство
| Команда |
Что делает |
| "Сколько процессор грузится" / "сколько RAM" / "температура" |
Sysinfo |
| "Сколько заряда" / "заряд батареи" |
Battery % |
| "Сколько свободно на диске" / "сколько на диске C" |
PowerShell Get-PSDrive |
| "Какие у меня диски" |
C: D: E: со свободным местом |
| "Какая сеть" / "какой WiFi" |
Net SSID via netsh |
| "Мой IP" / "локальный IP" |
Get-NetIPAddress |
| "Внешний IP" |
api.ipify.org |
| "Прибавь яркость" / "тусклее" / "яркость 70" |
Brightness via WMI |
| "Тёмная тема" / "светлая тема" |
Windows theme |
| "Заблокируй компьютер" |
LockWorkStation |
| "Выключи компьютер" / "перезагрузи" / "ребутни" / "сон" / "гибернация" / "выйди из системы" / "отмени выключение" |
Power management |
| "Выключи компьютер через 30 минут" |
Sleep timer для системы |
| "Отмени таймер выключения" |
shutdown /a + scheduler clear |
Файлы / буфер / заметки
| Команда |
Что делает |
| "Найди файл report" / "поищи documents" |
File search |
| "Запиши заметку купить хлеб" |
Append в notes file |
| "Покажи заметки" / "что я записал" |
Открывает notes |
| "Прочитай буфер" / "что в буфере" |
Clipboard contents speak |
| "Переведи буфер на английский" |
LLM перевод + replace clipboard |
Информация из интернета
| Команда |
Что делает |
| "Какая погода" / "погода завтра" / "что с погодой" |
Weather pack |
| "Курс доллара" / "курс юаня" |
CBR rates |
| "Сколько 1000 долларов в рублях" |
Currency convert |
| "Сколько Сбер" / "сколько Газпром" |
MOEX котировки (22 тикера) |
| "Сколько биткоин" / "сколько эфир" |
Crypto |
| "Новости" / "что нового в мире" |
News RSS |
| "Найди в гугле X" / "загугли X" |
DuckDuckGo Instant + LLM |
| "Википедия X" / "что такое X" / "кто такой Y" |
Wikipedia REST |
| "Открыть Google поиск X" |
Websearch (open browser) |
| "Переведи на английский X" |
Translate |
Утилиты-калькуляторы
| Команда |
Что делает |
| "Посчитай 2 плюс 2" / "сколько будет 10 в степени 3" |
Math |
| "Переведи 100 метров в футы" |
Length convert |
| "70 кг в фунты" |
Weight convert |
| "100 цельсий в фаренгейт" |
Temperature convert |
| "100 км в час в мили в час" |
Speed convert |
| "Сколько дней до нового года" |
Date math (8 марта, 9 мая, Рождество, Новый год + любая дата) |
| "Какой сегодня день недели" |
Zeller's congruence |
| "Время" / "сколько времени" / "какое сегодня число" |
Date query |
| "Подбрось монету" / "орёл или решка" |
Coin flip |
| "Сгенерируй пароль 16 символов" |
Secure password → clipboard |
| "Сгенерируй UUID" |
v4 UUID → clipboard |
| "Брось кубик" / "брось два кубика" |
Dice |
| "Выбери случайно из X или Y или Z" |
Random choice |
| "Запусти секундомер" / "сколько прошло" / "стоп секундомер" |
Stopwatch |
| "Прибавь счётчик" / "сколько на счётчике" / "сбрось счётчик" |
Counter |
| "Как пишется X" |
Spelling |
Разработка
| Команда |
Что делает |
| "Укажи проект C:..." |
Codebase Q&A: установить root |
| "Какой проект сейчас" |
Текущий root |
| "Что делает функция X" / "найди в коде Y" / "объясни код" |
Walks codebase → LLM |
| "Текущий репо owner/repo" |
GitHub: установить repo |
| "Какие пиары" / "открытые пиары" |
List PRs via gh CLI |
| "Разбери последний пиар" |
LLM-ревью PR (gh pr view) |
| "Сгенерируй код для X" |
Code generation pack |
| "Открой Cursor" / "VS Code" |
apps/ |
Развлечения
| Команда |
Что делает |
| "Расскажи анекдот" / "пошути" / "скажи фразу" / "тостер" |
Fun pack (jokes) |
| "Запиши настроение 7" / "сегодня мне грустно" |
Mood log |
| "Как прошла неделя" / "сводка настроения" |
Mood recap via LLM |
| "Запусти Steam игру X" / "поиграй в Y" |
Games pack |
Скриншоты / экран
| Команда |
Что делает |
| "Что на экране" / "опиши экран" |
Vision LLM описание |
| "Прочитай ошибку" |
Vision LLM: ищет stack trace, объясняет |
| "Сделай скриншот" / "скрин в буфер" |
Screenshot → clipboard |
| "Сохрани скриншот" |
Screenshot → ~/Pictures/Screenshots/ |
| "OCR экрана" / "прочитай текст" |
OCR (existing pack) |
| "Суммаризируй экран" |
Summarize visible window |
Как добавить свою команду
Скопируй resources/commands/echo/ как шаблон, отредактируй command.toml
(id, phrases) и *.lua (логика). Рекомендуемая структура — см.
ARCHITECTURE.md → Recommended pack structure.
Минимум:
-- thing.lua
local phrase = (jarvis.context.phrase or ""):lower()
local body = jarvis.text.strip_trigger(phrase, { "сделай штуку" })
body = body:gsub("^[%s,:%.]+", ""):gsub("%s+$", "")
if body == "" then
return jarvis.cmd.error("Что именно?")
end
-- ... do work ...
return jarvis.cmd.ok("Готово.")
Затем cargo test -p jarvis-core --lib commands::tests — он автоматически
проверит что TOML парсится и Lua-скрипт существует.
Голосовое vs GUI
GUI страницы — для случаев когда голосом неудобно:
/commands — все 67 паков с поиском (для discovery)
/macros — список с кнопкой "Запустить"
/scheduler — задачи с auto-poll каждые 5 сек
/memory — добавление/удаление фактов с фильтром
/settings → AI Backends — переключение LLM/TTS через dropdown
Что-то не работает?
- Голос не распознаётся — проверь микрофон в Settings → Devices. Скажи
"повтори за мной привет" — если эхо проходит, проблема не в STT.
- Не слышу ответ — проверь TTS backend в Settings → AI Backends. Скажи
"проверка эхо" — должен быть слышен голос. Если нет, проверь динамики +
попробуй
JARVIS_TTS=sapi.
- "Не могу связаться с сервером" — LLM unreachable. Если Groq —
проверь GROQ_TOKEN и интернет. Если Ollama —
ollama serve запущен?
- Команда не найдена — посмотри
/commands в GUI, поищи фразу. Если
фразы похожи но не та — agentic router сделает попытку, или подскажет.
- Что-то странное в логах —
<APP_LOG_DIR>/jarvis.log (путь видно
в первых строках jarvis-app stdout).