-
released this
2026-04-23 11:10:17 +03:00 | 0 commits to master since this releaseCloses a known gap with the Python fork v0.2.0+: post-wake-word listening window now ends as soon as the user stops talking, not on a fixed timeout.
What's in
webrtc-vadworkspace dep (pure-Rust port of Google's WebRTC VAD; same algorithm as Python's webrtcvad).jarvis-core::audio_processing::vad::listen_window\u2014 pure state machine (ListenWindow::push(is_speech) -> WindowDecision), no I/O. Closes the window when silence run \u2265 1200 ms AND \u2265 500 ms of speech was detected; refuses to close before 1000 ms; hard cap at 15000 ms. 4/4 unit tests.jarvis-core::audio_processing::vad::webrtc\u2014 adapter that bufferspv_recorder's 512-sample frames into 480-sample VAD frames at 16 kHz.jarvis-core::stt::vosk::finalize_speech\u2014 forces Vosk to emit final result when VAD says "speech ended".jarvis-app::recognize_command\u2014 feeds every frame through VAD, handlesWindowDecision::Close(fast path) andHardCap(return to wake-word).- 5 new config constants in
jarvis-core::configmirroring Python v0.2.0 exactly.
What does NOT happen
- The pre-existing wake-word VAD path (
audio_processing::vad/{init,detect,reset}with energy/none/nnnoiseless backends) is not touched. New webrtc-vad runs only in the post-wake listening window. - The legacy fixed-timeout path is gone.
Build / test
cargo build --workspace --release\u2014 succeeded, 0 new warnings vs v0.3.0 baseline.cargo testfor the new tests \u2014 4/4 pass.
Reaction time
On short commands ("стоп", "пауза") the bot now reacts in ~1.5 s instead of waiting the full timeout window. Same speedup as Python v0.2.0.
License
CC BY-NC-SA 4.0. Original attribution to Priler/Tugalov preserved.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
-
released this
2026-04-23 02:18:31 +03:00 | 7 commits to master since this releaseReaches functional parity with the Python fork v0.1.0+ for free-form voice queries.
What's in
- LLM fallback in voice loop (
crates/jarvis-app/src/llm_fallback.rs). Trigger-prefix pattern: any user utterance starting withскажи,ответь, orпроизнесиis forwarded to Groq. Word-boundary safe (won't fire mid-word). - Bounded conversation history in
jarvis-core::llm::history— caps at 8 turns + system prompt; system prompt always preserved when old turns evict. - System prompt mirrors the Python fork: J.A.R.V.I.S. as British butler in Russian, brief, calls user "сэр", no prudish censorship.
- Reply path: LLM response published as
IpcEvent::LlmReply { text }. Pre-recordedplay_okcue accompanies the text reply (Rust core has no real TTS engine — only voice clips). - Error path:
play_errorcue + russian fallback"Не могу связаться с сервером, сэр."over IPC. Voice loop never crashes from LLM errors. - Config knobs in
jarvis-app:llm_enabled,llm_max_history,llm_max_tokens,llm_trigger_phrases.
What does NOT happen
- No real TTS in Rust yet — LLM reply text goes via IPC for the GUI/host to speak. (Python fork uses Silero locally; Rust still relies on pre-recorded clips.)
Build / test
cargo build --workspace --release— succeeded, zero new warnings vs v0.2.0 baseline. (6 pre-existing warnings onjarvis-app/jarvis-gui, 1 onjarvis-core— all upstream.)cargo test -p jarvis-core --features llm --no-default-features— 8/8 pass (includes newpop_last_userhistory test).
How to test
set GROQ_TOKEN=gsk_... target\release\jarvis-app.exe # "Джарвис... скажи, что такое квантовая запутанность одной фразой?"Without
GROQ_TOKENthe assistant still works — fallback is silently disabled (warning in log).Лицензия
CC BY-NC-SA 4.0. Атрибуция Priler/Tugalov сохранена.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- LLM fallback in voice loop (
-
released this
2026-04-22 19:44:20 +03:00 | 14 commits to master since this releaseAdds a foundation for LLM capability in the Rust fork. Upstream Priler/jarvis has had
ChatGPT (coming soon)in the README since 2022 without an implementation. This release ships the implementation — parity with the Python fork — but does NOT yet wire it into the voice/intent loop. That's the next step (v0.3).What's in
- New
jarvis-core/src/llm.rsmodule behind thellmcargo feature:LlmClientwithnew(base_url, api_key, model)andfrom_env()constructors.complete(messages, max_tokens)over the OpenAI-compatible chat-completions endpoint.thiserror-derivedLlmErrorandConfigErrorenums (HTTP error, JSON error, API error, missing env var).- Defaults:
GROQ_BASE_URL=https://api.groq.com/openai/v1,GROQ_MODEL=llama-3.3-70b-versatile(same as the Python fork).
jarvis-cli ask <prompt>— one-shot invocation (argv) and REPLaskcommand both wired.- 3 unit tests in
jarvis-core(parses_valid_chat_response,from_env_fails_when_token_missing,chat_message_helpers_set_role) all pass. thiserroradded to workspace deps;llmfeature auto-enabled by defaultjarvis_appfeature set and explicitly byjarvis-cli.- README updated: new "LLM (Groq)" section in Russian.
Build / test
cargo build --workspace --release— succeeds (~1m56s cold). Zero new warnings vs v0.1.0 baseline.cargo test -p jarvis-core --features llm -- llm— 3/3 pass. Full-workspacecargo testhas a pre-existing vosk-link limitation carried from v0.1.0 (test binary forjarvis-corelacksbuild.rs); release workspace build is unaffected.
Not yet
- Wake-word / intent loop still uses only local rules. Wiring the LLM as a fallback (analog of Python's "скажи …") is v0.3.
Licensing
CC BY-NC-SA 4.0. Original Priler/Tugalov attribution preserved.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- New
-
v0.1.0 — all crates build Stable
released this
2026-04-22 18:11:11 +03:00 | 20 commits to master since this releaseFirst full release where every crate in the workspace compiles cleanly in
cargo build --workspace --release.What builds
- ✅
jarvis-core(library) - ✅
jarvis-app—target/release/jarvis-app.exe(~38 MB) - ✅
jarvis-cli—target/release/jarvis-cli.exe(~33 MB) - ✅
jarvis-gui—target/release/jarvis-gui.exe(~42 MB)
Build fixes vs v0.1.0-alpha
- jarvis-cli: added
build.rsmirroringjarvis-appsolibvosk.liblink path is registered. - jarvis-gui: added its own
build.rstoo — Cargo workspace feature unification pullsvoskinto all crates depending onjarvis-core, so gui also needed the link path. - frontend/: added build step (
npm install && npm run buildinsidefrontend/) —tauri::generate_context!()needsfrontend/dist/client/to exist at compile time. Also rearranged npmbuildscript to runroutify buildbeforesvelte-checkso Routify's generatedroutes.default.jsis available for type-check. - gitignore: tauri-regenerated schemas (
crates/jarvis-gui/gen/schemas/*.json) no longer dirty the tree after builds.
Caveat
This release was verified by build-cleanliness only, not runtime smoke test. First run after
cd frontend && npm install && npm run build && cargo build --workspace --releaseshould produce the three binaries above.License
CC BY-NC-SA 4.0. Original attribution to Abraham Tugalov / Priler preserved.
Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- ✅
-
v0.1.0-alpha — rebrand + README Pre-release
released this
2026-04-22 17:46:44 +03:00 | 26 commits to master since this releaseFirst modified release of the fork. Alpha because 2 of 4 crates do not yet build:
What's in this release
- Rebranded to Bossiara13 fork. Original Tugalov/Priler attribution preserved in
LICENSE.txt,Cargo.toml, and voice-packvoice.tomlfiles per CC BY-NC-SA 4.0. - README fully rewritten in Russian to reflect actual workspace architecture (4 crates:
jarvis-core,jarvis-app,jarvis-gui,jarvis-cli). Upstream README was outdated.
What builds
- ✅
jarvis-core(1 warning) - ✅
jarvis-app— producestarget/debug/jarvis-app.exe
What doesn't (reserved for v0.1.0)
- ❌
jarvis-cli— link errorLNK1181: libvosk.lib. Nobuild.rsin that crate to surface the vendored DLL path. - ❌
jarvis-gui—tauri::generate_context!()needsfrontend/dist/client/built first (cd frontend && npm install && npm run build).
No code changes vs upstream
This alpha has no behavioral differences from Priler/jarvis master beyond attribution. Full
v0.1.0will land build fixes for the two broken crates.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Rebranded to Bossiara13 fork. Original Tugalov/Priler attribution preserved in
-
v0.0.1-import — upstream import Pre-release
released this
2026-04-22 17:13:43 +03:00 | 30 commits to master since this releaseInitial import of Priler/jarvis Rust master branch. Missing Git LFS objects (Priler's LFS budget exceeded) were re-sourced from HuggingFace:
resources/models/all-MiniLM-L6-v2/model.onnxfrom Qdrant/all-MiniLM-L6-v2-onnxresources/models/paraphrase-multilingual-MiniLM-L12-v2-onnx-Q/{model.onnx,tokenizer.json,unigram.json}from Qdrant/paraphrase-multilingual-MiniLM-L12-v2-onnx-Q
No functional changes yet. First proper release (
v0.1.0) will land Bossiara13 rebrand and a verifiedcargo build.Downloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads