Lumi/companion
2026-07-22 11:02:04 +02:00
..
docs Add experimental Companion and OBS bridge boundaries 2026-07-22 11:02:04 +02:00
native/obs-bridge Add experimental Companion and OBS bridge boundaries 2026-07-22 11:02:04 +02:00
plugins/Lumi.Companion.Transcription Add experimental Companion and OBS bridge boundaries 2026-07-22 11:02:04 +02:00
src Add experimental Companion and OBS bridge boundaries 2026-07-22 11:02:04 +02:00
README.md Add experimental Companion and OBS bridge boundaries 2026-07-22 11:02:04 +02:00

Lumi Companion (experimental transcription milestone)

This directory is the single Lumi Companion product boundary. The current milestone supplies the versioned protocol client, Windows credential protection, bounded outbound transport, plugin-process supervision, and same-user OBS bridge IPC. The Avalonia tray shell, installer, and signed native bridge package remain target-machine work and are not represented as complete.

Build prerequisites: .NET 8 SDK on Windows x64. The native bridge additionally requires CMake, Visual Studio C++ tools, and the OBS 31+ SDK.

The app accepts a .lumi-pairing.json bootstrap package. It exchanges the embedded token once and stores the returned device credential with Windows DPAPI. Do not commit bootstrap packages, credentials, generated installers, build output, or logs.

The companion never performs ASR in this MVP. Audio is normalized to 16 kHz mono signed 16-bit PCM, held in bounded memory, and sent to the paired Lumi host over TLS WebSockets. The OBS bridge talks only to the companion over a same-user named pipe.