eloQ
Own project · Real-time AI

A real-time copilot for meetings and interviews.

A desktop app that transcribes both sides of the conversation, notices when a question arrives and suggests an answer. All in a transparent window, on top of the call, so you answer while looking at the person.

v2.22.3 · Windows 10/11 x64 and macOS Apple Silicon

Both sides transcribed on the left, detected question and suggested answer on the right.
automated tests passing
1.773
commits in the project
502
LLM providers, local and cloud
8
platforms with an installer
2
Teaser

Meet eloQ

It listens, understands and whispers the answer while you keep looking at the person. Turn the sound on.

For non-technical readers

eloQ explained in a map

eloQ from start to finish, drawn as a mind map and explained one branch at a time: from what it does to the differences between Windows and Mac.

The map, narrated from start to finish

The same mind map, block by block, in the same order: I read each branch while the camera moves through the map.

Narration in Portuguese. The file is only downloaded when you press play.

Access by code

Restricted-access mind map

The interactive map has restricted access. The video above walks through the same map from start to finish. To explore it at your own pace, get in touch.

What you see once unlocked

  • An in-order walkthrough, one step at a time, in Portuguese and English
  • From what it hears to the answer on screen, and what is kept afterwards
  • Windows, Mac and what is still missing
  • Zoom, full screen and navigation by section
Get in touch
9
sections
2
languages
The differentiator

A window between you and the camera

The overlay sits on top of the call, frameless and always on top, with a transparent background. You keep looking at the person, not at text in a corner, and opacity controls how much of the call shows through behind it.

Dragging the window opacity, from opaque to transparent: the interviewer shows through behind the answer.
Comfortable to read the transcript and the answer.Opaque
Comfortable to read the transcript and the answer.
You see the person through the window, without looking away.Transparent
You see the person through the window, without looking away.

The call in the background is an illustration. The eloQ window is real, with Portuguese content.

Transparent and always on top

A frameless window, pinned above the meeting. You can glance at the answer without leaving the camera.

Opacity from 15% to 100%

A slider controls how much the window fades. More opaque to read, more transparent to keep eye contact.

Invisible to screen capture

On Windows, stealth mode excludes the window from screenshots, recordings and screen sharing, via SetWindowDisplayAffinity.

Record and listen later

The meeting can be recorded to a file and played back later, with a waveform, playback speed and the transcript synced to the audio.

02

From audio to the answer on screen

Six steps between someone speaking and the suggestion showing up on screen.

  1. 1

    Two-channel capture

    The microphone becomes YOU and system audio becomes THE OTHER PERSON. On Windows capture uses WASAPI loopback; on macOS, ScreenCaptureKit.

    Hands overtwo audio streams
  2. 2

    Per-channel transcription

    Each channel can use a different provider, local or cloud. Deepgram Flux delivers end-of-turn events, and the connection is re-established on its own if it drops.

    Hands overtext + turn boundaries
  3. 3

    Turns and question detection

    Utterances are grouped into turns and the question is recognized by rules in Portuguese and English, with no AI. The copilot waits for the question to settle and generates at most one automatic answer per turn.

    Hands oversettled question
  4. 4

    Context with a guard against invention

    The prompt is built with a token budget from the transcript and the meeting documents. A guard blocks the call when the question refers to something never established in the conversation.

    Hands overgrounded prompt
  5. 5

    LLM with queue and failover

    A priority queue lets "Answer now" jump ahead of automatic answers. If a provider fails or hits its limit, the request moves to the next one, with an honest notice on screen.

    Hands overstreaming answer
  6. 6

    Overlay and Focus window

    The answer streams into the overlay and can be shortened, adapted or translated. The Focus window is native in Slint on Windows and in React on macOS.

03

What is inside

Live interview copilot

Turns derived from the transcript, answer opportunity in PT-BR and EN, revalidation at dispatch time and per-turn consumption, so the same question is never answered twice.

Answers that do not make things up

Referent guard, a rule against inventing candidate experience and answers anchored in the transcript. The "Context used" panel shows where each answer came from.

Deepgram Flux with reconnection

Streaming with turn events, a ledger of speech boundaries and transcription fallback when the connection drops mid-meeting.

Windows and macOS

On Windows, WASAPI and Credential Manager, with installer and automatic updates. On macOS, ScreenCaptureKit, Keychain and a .pkg installer for Apple Silicon.

Native Focus window

A lean surface to follow the answer during the conversation, in Slint with software rendering on Windows. The logic stays in the app; the window only displays and forwards actions.

Per-meeting documents

Resume, job description and notes become context for that meeting only, isolated from the others.

Licensing and release

Demo mode and full version, activation by a code sent by email and a device limit, with a server on Cloudflare Workers. CI release pipeline with signed automatic updates on Windows.

Recording and playback

Recording of the meeting audio to a file and a player with a waveform, speed control and a synced transcript, to review later. Exports to WAV.

Real-time translation

Transcript and answers can be translated during the meeting, with a choice among several translation providers.

Action items, bookmarks and topics

The app extracts tasks from the conversation, lets you pin key moments and splits the meeting into topics for a quick review.

Automated tests

There are 223 files and 1,773 TypeScript tests, plus Rust tests, covering turns, queue, guards, i18n and updater configuration.

04

The app

eloQ screens. The interview conversation is a fictional example.

Live interview — Both sides transcribed on the left, detected question and suggested answer on the right.
Both sides transcribed on the left, detected question and suggested answer on the right.
05

Privacy: you choose

eloQ uses your own API keys and has no server of its own for audio or text. You choose, channel by channel, between running everything on your computer or using a cloud service. With the cloud, the privacy policy and retention of your account with that provider apply.

Everything local
Whisper.cpp, Sherpa-ONNX, ORT, Parakeet, Ollama, LM Studio and OPUS-MT
Audio and text never leave the computer
Cloud transcription (optional)
Deepgram, Groq Whisper, Azure Speech, Whisper API
The audio is sent to the provider to be transcribed
Cloud answers (optional)
OpenAI, Anthropic, Gemini, Groq, OpenRouter
The conversation and documents for that question are sent to the provider to write the answer
Keys, history and recordings
Credential Manager or Keychain, SQLite database
Stay only on your machine
License
Email and a hashed installation id
Goes to the license server. Audio, transcript and prompts never do
06

Decisions and trade-offs

Detection by rules, not by AI

Deciding whether something is a question runs on deterministic rules. It is predictable, costs no call and can be tested case by case.

One automatic answer per turn

Only the turn boundary coming from the provider counts as reliable. That avoids answering half a sentence or answering twice.

Block before calling

When the question depends on something the conversation never established, the app does not call the model. Silence is better than suggesting an invention.

Logic in one place

Execution lives in the React and Tauri app. The native Focus window only displays state and forwards actions, which avoids two diverging implementations.

Development with AI agents

The commits were made with Cursor and Claude as a pair, with an agent review flow documented in the repository. Architecture decisions, review and what goes into each release are mine.

07

Current state, no polish

Delivered

  • Four public versions, from v2.22.0 to v2.22.3, with installers for Windows and macOS
  • Signed automatic update, validated end to end on Windows
  • 1,773 TypeScript tests passing, plus the Rust suite
  • Full interface in Brazilian Portuguese and English
  • Free Demo mode with limits and a full version by license

Known limits

  • macOS without Apple signing and without automatic updates
  • A yes/no question with no question word or "?" does not trigger an automatic answer
  • No Linux or Intel Mac build
  • Private code; only the installers are public

Stack

Tauri 2RustReactTypeScriptZustandTailwind CSSSlintSQLiteVitestCloudflare WorkersGitHub Actions
In 1 minute

See eloQ working in 1 minute

A question you did not expect, the suggestion on screen and what is behind it, from audio to privacy. Turn the sound on: the video has music and effects.

Video in Portuguese. The conversation is a fictional example. The file is only downloaded when you press play.

Want to try eloQ in a real conversation?

Download the installer and start in demo mode, which is free. The full version is by license. Questions, or interested in using it with your team: get in touch.

Provider names and trademarks belong to their owners and do not imply partnership.