Voice first electronics
Ask out loud.Stay in the build.
Clitronic started as a voice-first electronics assistant: press to talk, ask the hardware question, get focused help.
Then I rebuilt the engine so I could experiment with realtime conversation without the whole thing falling apart.
The redesigned engine
Voice is onlythe input.
The engine owns the answer.
Separation of concerns
Realtime listens.It does not answer.
Realtime owns microphone transport, VAD and transcription only. It listens closely, but it never invents a second assistant answer.
“Compare an Arduino Uno with a Raspberry Pi Pico.”
Change how Clitronic hears me without changing how it thinks.
Atomic presentation
One answer.Every surface.
One validated structured response commits the card, history, captions and exact speech. If the contract fails, nothing leaks through.
type: comparison
component: comparisonCard
speech: exact projectionOne meaning, wherever the answer lands.
Turn ownership
Interruptwithout ghosts.
Every asynchronous result has an owner. Barge in and the old request and speech are cancelled before the new turn can land.
Speak over Clitronic and the old turn loses permission to land.
The experiment surface
Swap the parts.Keep the contract.
This separation is the fun part. I can swap the listener, renderer, speech or image resolver without changing the semantic spine.
Realtime input
Swap microphone transport, VAD or transcription.
The semantic answer still belongs to one validated request.
Built toexperiment live.
A proper bench for realtime voice.