J.A.R.V.I.S-py/commands.yaml
Bossiara13 5790ca18af feat: parity — reminders, today/tomorrow/yesterday, voice type, dice, stopwatch (67 commands)
Mirrors the rust feature/pc-tools work. yaml.safe_load + ast.parse pass.
Commands count: 56 → 67 (+11).

main.py:
+ do_set_reminder — strips trigger, parses "N (секунд|минут|часов)"
  with Russian-word numeral support (один/две/пять/десять/...).
  Spawns a daemon thread that time.sleep()s then runs tts.va_speak
  + PowerShell WScript.Shell.Popup. Defaults to 5 min when number/
  unit are missing.
+ do_date_query — accepts {offset: 0/1/-1}, computes target date with
  datetime.timedelta, formats with hardcoded Russian weekday/month
  names (no locale dependency), speaks "Сегодня/Завтра/Вчера + ...".
+ do_type_text — clipboard + pyautogui.hotkey('ctrl', 'v') so it
  works in any focused window.
+ do_dice — coin/dice/random via random.choice / random.randint.
+ do_stopwatch — stores start ts in
  %LOCALAPPDATA%\com.priler.jarvis\stopwatch.txt; start/check/stop
  ops with humanised elapsed string.

commands.yaml +11 entries:
+ set_reminder
+ today / tomorrow / yesterday (action: date_query, offset: 0/1/-1)
+ type_text
+ coin_flip / roll_dice / random_number (action: dice, kind: ...)
+ stopwatch_start / stopwatch_check / stopwatch_stop
  (action: stopwatch, op: start/check/stop)
2026-05-15 12:28:57 +03:00

593 lines
15 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

open_browser:
phrases:
- открой браузер
- запусти браузер
- открой яндекс
- яндекс браузер
action: {type: url, href: "about:blank", browser: "yandex"}
open_youtube:
phrases:
- открой ютуб
- ютуб
- запусти ютуб
action: {type: url, href: "https://www.youtube.com", browser: "yandex"}
open_google:
phrases:
- открой гугл
- гугл
- запусти гугл
action: {type: url, href: "https://www.google.com", browser: "yandex"}
open_notepad:
phrases:
- открой блокнот
- запусти блокнот
- открой нотепад
action: {type: shell, cmd: 'start "" notepad.exe'}
open_calculator:
phrases:
- открой калькулятор
- запусти калькулятор
- нужен калькулятор
action: {type: shell, cmd: 'start "" calc.exe'}
open_explorer:
phrases:
- открой проводник
- открой папку
- запусти проводник
- открой файлы
action: {type: shell, cmd: 'start "" explorer.exe'}
open_terminal:
phrases:
- открой терминал
- запусти терминал
- открой консоль
- открой повершелл
action: {type: shell, cmd: 'start "" wt.exe || start "" powershell.exe'}
open_settings:
phrases:
- открой настройки
- открой параметры
- открой настройки виндоус
action: {type: shell, cmd: 'start "" ms-settings:'}
open_task_manager:
phrases:
- открой диспетчер задач
- запусти диспетчер задач
- диспетчер задач
action: {type: shell, cmd: 'start "" taskmgr.exe'}
lock_screen:
phrases:
- заблокируй компьютер
- заблокируй экран
- блокировка экрана
- залочь
action: {type: shell, cmd: 'rundll32.exe user32.dll,LockWorkStation'}
screenshot:
phrases:
- сделай скриншот
- скриншот
- сними экран
action:
type: shell
cmd: >-
powershell -NoProfile -Command "Add-Type -AssemblyName System.Windows.Forms,System.Drawing; $b=[System.Windows.Forms.Screen]::PrimaryScreen.Bounds; $bmp=New-Object Drawing.Bitmap $b.Width,$b.Height; $g=[Drawing.Graphics]::FromImage($bmp); $g.CopyFromScreen($b.Location,[Drawing.Point]::Empty,$b.Size); $p=Join-Path $env:USERPROFILE ('Pictures\jarvis_'+(Get-Date -Format 'yyyyMMdd_HHmmss')+'.png'); $bmp.Save($p); $g.Dispose(); $bmp.Dispose()"
volume_up:
phrases:
- громче
- сделай громче
- прибавь звук
- увеличь громкость
- погромче
action:
type: multi
steps:
- {type: keys, sequence: 'volumeup'}
- {type: keys, sequence: 'volumeup'}
- {type: keys, sequence: 'volumeup'}
- {type: keys, sequence: 'volumeup'}
- {type: keys, sequence: 'volumeup'}
volume_down:
phrases:
- тише
- сделай тише
- убавь звук
- уменьши громкость
- потише
action:
type: multi
steps:
- {type: keys, sequence: 'volumedown'}
- {type: keys, sequence: 'volumedown'}
- {type: keys, sequence: 'volumedown'}
- {type: keys, sequence: 'volumedown'}
- {type: keys, sequence: 'volumedown'}
sound_off:
phrases:
- выключи звук
- беззвучный режим
- режим без звука
- отключи звук
action:
type: multi
steps:
- {type: play_sound, name: ok}
- {type: system, op: volume_mute}
sound_on:
phrases:
- включи звук
- режим со звуком
- верни звук
action:
type: multi
steps:
- {type: system, op: volume_unmute}
- {type: play_sound, name: ok}
music:
phrases:
- давай музыку
- музыка
- яндекс музыка
- включи музыку
- открой музыку
- послушаем музыку
- хочу музыку
- врубай музло
- включи что-то послушать
- давай что-то послушаем
action: {type: keys, sequence: 'playpause'}
music_off:
phrases:
- выключи музыку
- отруби музыку
- убери музыку
- отключи музыку
- закрой музыку
- останови музыку
- хватит музыки
- пауза
- поставь на паузу
action: {type: keys, sequence: 'playpause'}
music_next:
phrases:
- следующий трек
- следующая мелодия
- следующая песня
- переключи трек
- переключи мелодию
- переключи песню
- следующая музыка
action: {type: keys, sequence: 'nexttrack'}
music_prev:
phrases:
- предыдущая музыка
- предыдущий трек
- предыдущая мелодия
- предыдущая песня
- верни трек
- верни мелодию
- верни песню
- верни прошлый трек
- переключи на прошлый трек
action: {type: keys, sequence: 'prevtrack'}
media_stop:
phrases:
- стоп музыка
- полная тишина
action: {type: keys, sequence: 'stop'}
switch_audio_device:
phrases:
- переключи устройство
- смени вывод
- переключи на наушники
- переключи на колонки
- переключи на динамики
- открой настройки звука
action: {type: audio_devices_panel}
sysinfo_time:
phrases:
- сколько времени
- который час
- какой сегодня день
- какое сегодня число
action: {type: sysinfo, topic: time}
sysinfo_battery:
phrases:
- сколько заряда
- заряд батареи
- сколько процентов батареи
action: {type: sysinfo, topic: battery}
sysinfo_cpu:
phrases:
- загрузка процессора
- сколько процессор
- нагрузка цпу
action: {type: sysinfo, topic: cpu}
sysinfo_ram:
phrases:
- сколько памяти
- сколько оперативки
- загрузка оперативки
- сколько свободной памяти
action: {type: sysinfo, topic: ram}
sysinfo_disk:
phrases:
- сколько свободно на диске
- сколько места на диске
- сколько свободно на компе
action: {type: sysinfo, topic: disk}
sysinfo_all:
phrases:
- статус системы
- что с компьютером
- состояние пк
- что по системе
action: {type: sysinfo, topic: all}
file_search:
phrases:
- найди файл
- найди документ
- поиск файла
- ищи файл
- где файл
action: {type: file_search}
codegen:
phrases:
- напиши код
- сгенерируй код
- набросай код
- сделай скрипт
- напиши скрипт
- сгенерируй скрипт
action: {type: groq_codegen}
read_screen:
phrases:
- прочитай экран
- что на экране
- распознай текст с экрана
- что написано на экране
- сними текст с экрана
action: {type: ocr_screen}
# Window management via pyautogui hotkeys
show_desktop:
phrases:
- покажи рабочий стол
- свернуть всё
- сверни все окна
- покажи десктоп
action: {type: keys, sequence: 'winleft+d'}
maximize_window:
phrases:
- разверни окно
- развернуть окно
- на весь экран
- раскрой окно
action: {type: keys, sequence: 'winleft+up'}
minimize_window:
phrases:
- сверни окно
- свернуть окно
- убери окно
action: {type: keys, sequence: 'winleft+down'}
snap_left:
phrases:
- окно влево
- сдвинь влево
- прижми влево
action: {type: keys, sequence: 'winleft+left'}
snap_right:
phrases:
- окно вправо
- сдвинь вправо
- прижми вправо
action: {type: keys, sequence: 'winleft+right'}
close_window:
phrases:
- закрой окно
- закрой вкладку
- закрой текущее
action: {type: keys, sequence: 'alt+f4'}
restore_all:
phrases:
- восстанови окна
- верни окна
- разверни окна
action: {type: keys, sequence: 'winleft+shift+m'}
task_view:
phrases:
- открой все окна
- обзор окон
- таск вью
- покажи все окна
action: {type: keys, sequence: 'winleft+tab'}
# Clipboard read aloud
read_clipboard:
phrases:
- прочитай буфер
- что в буфере
- прочитай из буфера
- озвучь буфер
action: {type: clipboard_read}
# Notes
add_note:
phrases:
- запиши
- запиши заметку
- запиши идею
- запомни
- запомни идею
- сделай заметку
action: {type: notes_add}
open_notes:
phrases:
- покажи заметки
- открой заметки
- что я записал
action: {type: notes_open}
# Process killer
kill_process:
phrases:
- убей процесс
- закрой программу
- завершить процесс
- выруби процесс
action: {type: process_kill}
# Web search shortcuts
search_google:
phrases:
- загугли
- поиск в гугл
- поищи в гугл
- найди в гугл
- ищи в гугл
action: {type: websearch, service: google}
search_youtube:
phrases:
- найди на ютубе
- поиск на ютубе
- ищи на ютубе
- ютуб поиск
action: {type: websearch, service: youtube}
search_wiki:
phrases:
- найди в википедии
- поиск в википедии
- википедия
- вики поиск
action: {type: websearch, service: wiki}
search_yandex:
phrases:
- поищи в яндекс
- найди в яндекс
- яндекс поиск
- пробей в яндекс
action: {type: websearch, service: yandex}
translate:
phrases:
- переведи на английский
- переведи на русский
- переведи на украинский
- переведи на немецкий
- переведи на французский
- переведи на испанский
- переведи на китайский
- переведи на японский
- переведи
- как по английски
- как по русски
action: {type: translate}
math_eval:
phrases:
- посчитай
- сколько будет
- вычисли
- реши
- сколько это
action: {type: math_eval}
theme_dark:
phrases:
- тёмная тема
- темная тема
- включи тёмную тему
- тёмный режим
- темный режим
action: {type: theme_set, mode: dark}
theme_light:
phrases:
- светлая тема
- включи светлую тему
- светлый режим
action: {type: theme_set, mode: light}
open_project:
phrases:
- открой проект
- запусти проект
- открой папку проекта
action: {type: open_project}
list_projects:
phrases:
- какие у меня проекты
- список проектов
- покажи проекты
action: {type: list_projects}
open_sound_panel:
phrases:
- открой настройки звука
- панель звука
- настройки микрофона
- управление звуком
action: {type: open_sound_panel}
set_reminder:
phrases:
- напомни через
- напомни мне через
- поставь напоминание через
- установи таймер на
- таймер на
action: {type: set_reminder}
today:
phrases:
- какой сегодня день
- какое сегодня число
- сегодня какое число
- что сегодня
action: {type: date_query, offset: 0}
tomorrow:
phrases:
- какой день завтра
- что завтра
- завтра какое число
- какое число завтра
action: {type: date_query, offset: 1}
yesterday:
phrases:
- какой был вчера день
- что было вчера
- вчера какое число было
action: {type: date_query, offset: -1}
type_text:
phrases:
- напечатай
- набери текст
- введи текст
- впиши
action: {type: type_text}
coin_flip:
phrases:
- подбрось монетку
- брось монетку
- орёл или решка
- орел или решка
action: {type: dice, kind: coin}
roll_dice:
phrases:
- брось кубик
- подбрось кубик
- кинь кубик
action: {type: dice, kind: dice}
random_number:
phrases:
- случайное число
- выбери случайное число
- рандомное число
action: {type: dice, kind: random}
stopwatch_start:
phrases:
- засеки время
- запусти секундомер
- старт секундомер
- включи секундомер
action: {type: stopwatch, op: start}
stopwatch_check:
phrases:
- сколько прошло
- сколько времени прошло
- проверь секундомер
action: {type: stopwatch, op: check}
stopwatch_stop:
phrases:
- стоп секундомер
- останови секундомер
- выключи секундомер
action: {type: stopwatch, op: stop}
thanks:
phrases:
- спасибо
- молодец
- респект
- ты супер
- отличная работа
- ты крут
- ты большой молодец
- ты реально крут
- ты афигенный
action: {type: play_sound, name: thanks}
stupid:
phrases:
- ты дурак
- ты дебил
- ты глупый
- ты тупой
action: {type: play_sound, name: stupid}
'off':
phrases:
- выключись
- вырубись
- завершить работу
- закройся
- отключись
- заверши свою работу
- на сегодня хватит
- выгрузи себя из памяти
- ты мне надоел
- пора спать
action:
type: multi
steps:
- {type: play_sound, name: "off"}
- {type: system, op: exit}