Repository navigation
Releases
FrameYap v0.1.202611032013 — analytics controls and installer updates
Changes
- Add a default-off Moondream analytics setting, explicit opt-in disclosure, and guarded telemetry suppression for the pinned speech runtime.
- Use shared user-level uv and managed Python 3.12 for explicit speech-runtime installation. Existing working speech environments are preserved by native updates.
- Generate matching, version-pinned standalone and archived installers during packaging, with offline CI coverage.
Install / update
curl -fsSL https://github.com/baketnk/frame-yap/releases/latest/download/install.sh | shFor an existing installation, accept the native update; the model and runtime do not need reinstalling if already working. Quit FrameYap before updating.
The archive is Linux ARM64, native-only: speech runtime and model are separate opt-in downloads. Uploads include the archive, SHA-256 sidecar, and matching install.sh pinned to this release.
Validation
Built from clean commit 09e3d2acde7461f9bbd20d1f5e1856339b4e6ba7 on Steam Frame. All 37 native tests and 33 local offline tests passed. The final archive was installed in an isolated home on Frame; installed version, model verification, installer parity, and archive checksum passed. Release contents were scanned for personal build paths.
Live microphone/inference, the new uv provisioning flow, and in-headset acceptance were not exercised for this release.
FrameYap v0.1.202610050210 — stick depth and Settings cleanup
Fixes grab + stick depth when SteamVR reserves the stick for its laser mouse and FrameYap application analog actions are inactive. FrameYap consumes smooth-scroll events from the grabbing controller as bounded depth movement, prefers a valid app axis, and applies each delta once. The UI does not scroll during a grab.
Removes the idle microphone explanation from the bottom of Settings.
Validation: all 32 desktop checks and 36 native Frame checks pass. The grab-depth correction also passed 73 Python tests. The wearer confirmed grab + stick works. Live counters accepted 895 controller-tagged scroll events and measured 0.735 m of depth travel, with zero redraws or uploads across 1,300 retained movement frames. Motion-loop work totaled 21.923 ms over 1,302 ticks (maximum 2.804 ms); rendering and upload totals are measured separately and are not motion-to-photon latency.
The final ARM64 package is installed and running on the Frame. Its binary hash matches the release artifact, and the no-input Gamescope IME check passes. Profiling is disabled again.
The archive includes the native application, SDL/OpenVR libraries, assets, font and licenses. Speech runtime and model install separately through the installer; existing installations are preserved.
FrameYap v0.1.202610050153
Fixes the Parakeet Redux model-install HTTP 404 and includes the pending overlay improvements.
- Repins Redux to the available upstream revision. Inference weights/config/tokenizer are unchanged. Previously verified model cards remain accepted, so existing installations need no model or runtime download.
- Adds Settings → About, attended update checks, scrollable review/settings, saved wrist/head placement, and optional wrist world fallback.
- Adds Open Draw and an 800 ms Open Keyboard hold to recenter. Animated backgrounds now default off and can be enabled in Settings.
- Reuses initialized GPU textures throughout grab/scale. Stick depth follows the captured panel face normal and uses a separate hand-specific action set. Actual stick delivery remains dependent on SteamVR’s experimental overlay input permission and supported bindings.
- Reports a missing DISPLAY when Type’s Xwayland focus guard cannot connect. SSH launches must use the verified session display; Steam/desktop launches inherit their session environment.
- Keeps offline model-status queries from creating files in the installed release inventory.
Validation: 73 Python tests, 32 desktop offline/UI CTest checks, and 36 native ARM64 CTest checks pass. The ARM64 archive was installed on Steam Frame; the installed binary hash, existing model verification, model provisioning, and no-input Gamescope IME discovery were checked. SDL/OpenVR resolve from the archive’s own lib directory. No microphone recording or text injection was performed by the checks. In-headset appearance, sustained movement comfort, and actual stick-axis delivery require the wearer’s verification.
Update with the README’s one-command installer. Answer y to FrameYap, then n to model/runtime if they are already installed and working. Missing models can now be installed normally. The archive contains the native app, SDL3 and the OpenVR client library; the speech runtime and model remain separate explicit downloads. The previous installed version is retained for rollback.
FrameYap v0.1.202609251524
First FrameYap release: on-device voice typing for Steam Frame.
Install on the Frame (terminal or SSH):
curl -fsSL https://github.com/baketnk/frame-yap/releases/latest/download/install.sh | shThe installer asks y/n to install FrameYap, download the Parakeet Redux speech model (~180 MB, CC-BY-4.0) and pip-install the CPU Python runtime (moondream/Kestrel + CPU Torch, ~200 MB download). No sudo or compiler. Launch FrameYap from the desktop application menu afterwards.
The archive contains FrameYap, SDL3 3.2.16 (audio only) and the OpenVR 2.15.6 client library, built on a Steam Frame with scripts/build-release.sh. Kestrel, Torch, moondream and the model weights are not redistributed; they are downloaded on your machine.
🤖 Generated with Claude Code