- Rust 79.6%
- Svelte 7%
- Python 5.2%
- TypeScript 2.5%
- CSS 2.1%
- Other 3.6%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .forgejo/workflows | ||
| appware-dual-backend | ||
| appware-rs-vm-host | ||
| appware-rs-win-desktop | ||
| docs | ||
| scripts | ||
| .editorconfig | ||
| .gitignore | ||
| AGENTS.md | ||
| appware_notes.md | ||
| README.md | ||
Appware
Windows meeting companion for following a foreign-language conversation, getting contextual AI answers, viewing separate code suggestions, and pushing selected notes into the current discussion.
This repository is hosted at git.moment.msakg.com/emre/appware. It is a two-product workspace, not a shared Cargo workspace.
Stable Windows release: Appware v1.0.0 — Windows x64 EXE and SHA-256 checksum. Local ASR runtimes/models are installed separately; see the desktop setup guide below.
Products
appware-rs-win-desktop— the real product (v1.0.0). Rust + Tauri 2 + Svelte 5 + TypeScript. Supports 4 interviewer ASR modes (Local Qwen3-ASR 1.7B/0.6B, Local Whisper Large-v3-Turbo with Ten-VAD, and Windows Live Captions), always-ready candidate microphone speech reconciliation, active-session-onlyF12in-memory screen capture vision, spoken-answer suggestions, style micro-revisions, two-stage code generation, and explicitly pushed notes. Native Windows MSVC only.appware-rs-vm-host— a separate no-dependency Rust skeleton. Meeting software would run in a VM; this crate is planning and core types, not a second live app.appware-dual-backend— standalone no-dependency Rust control plane extracted from the K96 dual-backend reference. Tests Local vs Bridge routing, fencing, retries, and circuit breaker offline. Not yet wired into live Tauri runtime.
Do not share crates, config, or session stores between these trees.
Current product boundary
Read the latest dated K* section at the top of AGENTS.md before older camera or model paragraphs. Later dated decisions win.
As of the 2026-09-26 (v1.0.0, K109–K120) snapshot in this repo:
- System Tray Only (
K109): Runs permanently withskipTaskbar=trueand a single system tray icon; minimizing or closing to tray hides the window without adding a taskbar button. - 4-Model Interviewer ASR & Ten-VAD (
K112–K120): Selectable startup ASR engines: Qwen3-ASR 1.7B, Qwen3-ASR 0.6B (127.0.0.1:8179offline Python sidecar), Whisper Large-v3-Turbo (127.0.0.1:8178CUDAwhisper-server.exe), and Windows Live Captions (WLC). Qwen uses the measured Windows CUDA 13.0 runtime, adaptive partial scheduling and quiet previews while preserving the 1,350 ms turn boundary. Exact model/revision/device readiness is required; CPU needs explicit consent each session, with no in-session fallback. Session end clears interviewer work; candidate Whisper remains warm. Owned helpers terminate through a Windows Job Object on application exit. See the desktop runtime and native smoke reports. - Candidate Speech Reconciliation (
K101,K106): Independent WASAPI microphone capture + local Whisper Large-v3-Turbo reconciles candidate speech against AI suggestions across 5 semantic zones (ExactOrClose,Paraphrased,Partial,Diverged,Omitted) plus manualOkudumconfirmation and interviewer backchannel suppression. - Screen Capture & Multimodal Vision (
K110): GlobalF12hotkey and top-bar capture button grab the active monitor via Win32 GDIBitBltinto RAM-onlyArc<[u8]>PNG bytes (zero disk/clipboard I/O) and stream multimodal analysis + Stage-2 code generation over CPAMC / CLIProxyAPI (/chat/completionsimage_url) or Google Gemini Interactions API. - Compact Adaptive Answers, Style Revisions & Two-Stage Code (
K100,K102,K103,K107,K111): Single canonical model selection across the top bar and AI menu (filtering non-text/duplicate catalog entries), 520×430 scroll-free setup screen, live answer style micro-revisions (Kısa,Detay,Teknik,Doğal+ stepwise undo), and spoken implementation explanation followed by separate code panel streaming. - Camera & External Window Hooks Removed (
K97): Camera management, OBS/Broadcast window control, and the camera menu remain permanently removed for Windows Explorer stability.
The parent AGENTS.md is the decision log for the desktop product. appware-rs-vm-host/AGENTS.md is the VM-only record. appware_notes.md is scratch, not architecture.
Run and build (Windows)
From appware-rs-win-desktop/:
For local ASR installation, follow the isolated Qwen runtime setup before starting a session.
npm ci
npm run desktop
npm run check
npm run test:rust
npm run desktop:build
Requirements: MSVC C++ Build Tools, rustup stable-x86_64-pc-windows-msvc, Node, WebView2. The pinned toolchain is Windows-only; macOS/Linux checkouts are for reading and source work, not desktop builds.
CI (Forgejo / VM105)
The live runner is Linux node:22-bookworm (node22). It cannot compile the Windows MSVC Tauri app.
On every main push, PR, and manual dispatch, .forgejo/workflows/ci.yml runs:
npm ci+npm run checkinappware-rs-win-desktop(Svelte/TypeScript only)- Node hygiene tests that reject Windows runners,
tauri/desktop:build/test:rustin CI
Not in CI: npm run desktop, npm run test:rust, npm run desktop:build, VM-host cargo test. Those stay on msa-station (Windows) or a local Rust host.
VM skeleton, from appware-rs-vm-host/:
cargo test --offline
cargo run --offline -- demo
Layout
AGENTS.md desktop decision log
appware-dual-backend/ standalone dual-backend routing control plane
appware-rs-win-desktop/ Tauri desktop app
appware-rs-vm-host/ separate VM-host skeleton
docs/ supporting documents
appware_notes.md scratch notes
Secrets and local state
Ignored and never committed:
.env, credential JSON,ai.json/ai.local.jsontarget/,node_modules/,dist/- camera/device local config files
Gemini keys belong in Windows Credential Manager. Meeting transcripts stay in memory; there is no automatic meeting archive.
Agent / collaborator notes
- Start with this README, then the latest
K*block inAGENTS.md. - Confirm branch and
git statusbefore editing. - Keep desktop and VM trees separate.
- Do not restore camera/OBS/Broadcast control unless a newer dated decision explicitly reverses K97.
- Do not treat a Mac clone as a build host.