¿? Clueless-ly
Only available for Mac at the moment Only available for Mac at the moment Only available for Mac at the moment Only available for Mac at the moment Only available for Mac at the moment Only available for Mac at the moment
¿ ?

Clueless-ly

A private, always-on-top, open source AI assistant overlay.
*Shamelessly inspired by Cluely. Don't come at me.

What it does

Clueless-ly sits above your other windows. It listens to a conversation, your microphone and your computer's system audio, looks at your screen when you ask, and answers in context, all in a window the OS keeps out of ordinary screen recordings and shares.

Realtime transcription

Streams both sides of a conversation, your mic and system audio, into a live transcript.

On-demand screen context

Ask it about what's on screen; it captures context only when you request it.

Excluded from screen sharing

The overlay uses NSWindowSharingNone so it doesn't show up in ordinary capture or shares.

Purpose-built modes

Coding, interview, technical-interview, and speech modes, each tuned for the task.

Push-to-talk

Separate mic control so you decide exactly when you're being listened to.

Bring your own key

Uses the OpenAI API with a key you control. Stored securely via the macOS Keychain.

Get started

* Only available for Mac. Windows builds have not been tested, so downloading one right now is risky.

1

Clone and run

The launcher installs dependencies, creates your .env, and starts the app.

bash
git clone https://github.com/aaryanved/Clueless-ly.git
cd Clueless-ly
git checkout mac
./launch.sh
2

Add your OpenAI key

Clueless-ly uses the OpenAI API for answers, transcription, and realtime audio. Grab a key from OpenAI's dashboard and drop it into .env:

.env
OPENAI_API_KEY=sk-your-key-here
3

Don't want to use OpenAI?

Clueless-ly is built on OpenAI's SDK. If you'd rather use an OpenAI-compatible endpoint, OpenRouter, Groq, Together AI, or a local model through Ollama, you can usually just point the SDK's base URL at it and swap in that provider's key. Anthropic's Claude and Meta's Llama use a different API shape, so those need a small code change instead of a config tweak.

4

Let an AI coding assistant do the swap

That's exactly the kind of small, mechanical change a coding assistant is good at. Open the repo in Claude Code, Cursor, or whatever you use, and hand it something like this:

prompt
This app calls the OpenAI SDK for chat, transcription, and realtime audio
(see src/main). Swap it to call [Anthropic's Claude API / Meta's Llama],
keep the same .env-based key pattern, and preserve the existing function
signatures so the rest of the app doesn't need to change.

Swap the bracketed part for whichever provider you want, and let it handle the rest.

Full instructions live in the macOS README.