Commit graph

47 commits

Author SHA1 Message Date
Bossiara13
232490d9fa chore: vendor js-yaml.min.js 2026-04-23 02:10:57 +03:00
Bossiara13
9814181d1a feat(tools): pywebview bootstrap + python bridge API
Single window (900x720, dark background) loading web/index.html with a
Python bridge exposing list_existing_commands, list_exes,
list_sound_names, preview_sound, slugify, validate_draft, save_command,
plus llm_suggest hook for M3. Sound preview spawned on a daemon thread
so the GUI does not block.
2026-04-22 23:21:20 +03:00
Bossiara13
80d9eedead chore: add ruamel.yaml + pyautogui deps
ruamel.yaml is needed by tools/command_builder/yaml_writer to round-trip
commands.yaml without losing comments. pyautogui drives the new keys
action. pywebview is added now too so M2's GUI bootstrap can land
without another deps bump.
2026-04-22 23:17:44 +03:00
Bossiara13
7b8cd31cf3 feat: add shell / url / keys action types to runtime dispatcher
shell uses subprocess (with shell=True so user can write a normal
command line); url uses webbrowser.open; keys uses pyautogui.hotkey
for combinations or pyautogui.typewrite for raw text. pyautogui is
imported lazily so the bot still starts on machines without a GUI.
2026-04-22 23:17:40 +03:00
Bossiara13
0f6b794db9 feat(tools): yaml writer with ruamel (preserves comments, atomic + backup)
Uses ruamel.yaml so existing comments / formatting in commands.yaml
survive a save. Each write creates commands.yaml.bak first, then
atomically renames a .tmp file into place. Tests cover round-trip for
all action types plus comment-preservation on append.
2026-04-22 23:17:24 +03:00
Bossiara13
68e73b3c53 feat(tools): scaffold command builder schema
Dataclass-based schema mirroring commands.yaml plus new action types
(shell, url, keys). Round-trip dict<->dataclass with validation.
Russian-aware slugify for auto-generating command IDs.
2026-04-22 23:17:17 +03:00
Bossiara13
f9e1e2468f chore: gitignore voice_ref/ and sound/_*.wav experiments 2026-04-22 23:10:54 +03:00
Bossiara13
4f3b827a47 Merge feature/vad-and-yaml-plugins into dev
Adds webrtcvad-based smart command-end detection (fixed 10s window
replaced by VAD with configurable silence/min/max thresholds) and
migrates execute_cmd to a YAML-driven plugin system with typed
actions (exe, play_sound, system, multi, sleep). 17 commands
migrated; all original behavior preserved.
2026-04-22 19:43:52 +03:00
Bossiara13
7855c5da37 docs: README — document VAD + YAML plugin schema 2026-04-22 19:35:45 +03:00
Bossiara13
63cb64ef21 chore: update commands.yaml to new action schema
All 17 voice commands migrated from a flat phrase list to the
phrases/action shape. Behaviour preserved 1:1 with the previous
elif chain — including the 200ms post-Popen pause for music_*
controls and the 500ms pause before the 'ready' chime on the
audio-device switch commands.
2026-04-22 19:35:16 +03:00
Bossiara13
a1a2be309b refactor: drive execute_cmd from commands.yaml action schema
Replaces the 100-line elif chain with a small dispatcher. Each entry in
commands.yaml now carries both 'phrases' (existing trigger list) and
'action' describing how to run it. Action types: exe, play_sound,
system (volume_mute/unmute/exit), sleep, multi.

The data migration lives in the next commit; the dispatcher in this
commit assumes the new schema.
2026-04-22 19:34:00 +03:00
Bossiara13
794d923bf9 feat: add webrtcvad-based smart command-end detection
Replace the fixed 10s post-wake-word listen window with a VAD-driven
loop. Once at least 500ms of speech have been seen, 1.2s of silence
closes the window. Hard cap at 15s as a safety net.

Tunable in config.py via VAD_AGGRESSIVENESS, COMMAND_END_SILENCE_MS,
COMMAND_MIN_SPEECH_MS, COMMAND_MIN_LISTEN_MS, COMMAND_MAX_LISTEN_MS.
2026-04-22 19:32:30 +03:00
Bossiara13
277921ce14 Merge feature/vosk-wakeword into dev — kills Picovoice dep 2026-04-22 17:50:38 +03:00
Bossiara13
6dc8a85bf6 Merge feature/rebrand-and-groq into dev 2026-04-22 17:50:37 +03:00
Bossiara13
dfdfd9418b feat: tighten system prompt — explicit Jarvis persona, not Friday/Vision
- Names the assistant as J.A.R.V.I.S. (acronym + MCU pre-Age-of-Ultron)
- British butler tone, addresses user as «сэр»
- Brief replies (1-3 sentences)
- No prudish censorship
2026-04-22 17:50:32 +03:00
Bossiara13
d56a096267 chore: align VA_VER with v0.1.0 release tag 2026-04-22 17:49:26 +03:00
Bossiara13
1078b2daa3 docs: drop picovoice mentions, document WAKE_WORDS config
README no longer lists PICOVOICE_TOKEN as a required key, and the
configuration section explains the new WAKE_WORDS tuple.
2026-04-22 17:48:15 +03:00
Bossiara13
d8a2862ace chore: drop pvporcupine dep and PICOVOICE_TOKEN from env template
wake-word is now handled by vosk, so the picovoice access key is no longer
needed. config.py already had PICOVOICE_TOKEN removed in the previous commit.
2026-04-22 17:47:22 +03:00
Bossiara13
a4b919c11e refactor: replace porcupine wake-word with vosk grammar-constrained recognizer
uses a second KaldiRecognizer with a JSON grammar of WAKE_WORDS + [unk] for
the wake phase, then hands off to the full-vocab recognizer for the 10s
command window. drops the pvporcupine dependency entirely.
2026-04-22 17:46:44 +03:00
Bossiara13
8019ee0baa security: untrack dev.env, add template dev.env.example
Real secrets now live in untracked dev.env (gitignored). dev.env.example
holds placeholders and is the canonical template — copy it to dev.env on
fresh checkout and fill in real keys.
2026-04-22 17:33:07 +03:00
Bossiara13
b3867603ff docs: write fresh README for the fork 2026-04-22 17:32:49 +03:00
Bossiara13
c961143fd4 chore: re-save requirements.txt as plain utf-8 2026-04-22 17:32:48 +03:00
Bossiara13
9b7c08b088 chore: pin openai>=1.0 and rewrite requirements.txt as utf-8 2026-04-22 17:32:47 +03:00
Bossiara13
7f5ca81c71 feat: swap openai for Groq via openai-compatible base_url 2026-04-22 17:32:46 +03:00
Bossiara13
377016478e chore: rebrand to Bossiara13 fork
bump version 3.0 -> 0.1.0
2026-04-22 17:32:45 +03:00
Abraham
ee8d236e1c Merge remote-tracking branch 'origin/master' 2023-04-22 02:17:33 +05:00
Abraham
1339f92571 license added 2023-04-22 02:17:06 +05:00
Abraham Tugalov
64cb29be0e Merge pull request #23 from Priler/test
GPT Fixes
2023-04-19 23:20:00 +05:00
Abraham Tugalov
381d5f17fa Merge pull request #20 from Gadzhi07/master
chat-gpt-3.5-turbo fix
2023-04-17 21:07:13 +05:00
enot
7dd76c35c4 chat-gpt-3.5-turbo fix 2023-04-17 16:02:33 +03:00
Abraham
8f1b3c8e7c chat-gpt-3.5-turbo fix 2023-04-16 17:24:05 +05:00
Abraham
d10299bda3 chat-gpt-3.5-turbo fix 2023-04-16 17:15:36 +05:00
Abraham
079cd97d6f some reformat 2023-04-16 16:59:18 +05:00
Abraham Tugalov
7d309869ad Merge pull request #13 from Priler/revert-12-master
Revert "Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine"
2023-04-16 15:56:31 +05:00
Abraham Tugalov
3fca0a4166 Revert "Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine" 2023-04-16 15:56:20 +05:00
Abraham Tugalov
7f18975148 Merge pull request #12 from nikitalm8/master
Поменял архитектуру, сильно уменьшил кол-во зависимостей, убрал pyaduio, porcupine
2023-04-16 15:44:23 +05:00
Nick Bifle
964d25de86 Updated archtecture, fixed dependencies 2023-04-16 12:51:26 +03:00
Abraham
5ed98994e9 picovoice token extracted to config 2023-04-14 00:35:20 +05:00
Abraham
98024c8266 Some readme, bruh 2023-04-13 23:34:47 +05:00
Abraham
8b0250a473 Some readme, bruh 2023-04-13 23:30:56 +05:00
Abraham
61fd5c75b0 Some readme, bruh 2023-04-13 23:18:31 +05:00
Abraham
e2903467f2 v3.0 very early (aka Jarvis update) 2023-04-13 23:12:02 +05:00
Abraham
e456d647db PicoVoice added + Hogwarts Legacy assistent test 2023-03-28 19:03:36 +05:00
Abraham
0beb0ee926 Readme 2022-12-15 04:24:34 +05:00
Abraham
c51a69bd99 Readme 2022-12-15 04:23:56 +05:00
Abraham
52edb914b7 Readme 2022-12-15 04:20:40 +05:00
Abraham
657230c904 Initial commit 2022-12-15 04:17:16 +05:00