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)
593 lines
15 KiB
YAML
593 lines
15 KiB
YAML
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}
|