DEV Community

Marium Zehra
Marium Zehra

Posted on

We built SKI so Claude Code, Codex, and Cursor could actually answer you back - not just take dictation

We spend most of our day talking to AI coding agents through a keyboard, which is a strange way to interact with something that's supposed to be a collaborator. You think in sentences, then you type them out, slower than you thought them, and then you wait, and "waiting" turns into tabbing away and forgetting to check back until the agent's been sitting there finished for ten minutes. That's the problem we built SKI to fix. Not "voice input for your IDE", we didn't think that alone was worth shipping. What we wanted was a coding agent that works the way a pair-programming partner does: you say something, it does the work, and it tells you out loud when it's done or when it needs a decision. So we built both halves of that loop.

What SKI actually is

SKI is a free desktop app (Mac and Windows) that gives Claude Code, Codex, Cursor, Gemini CLI, Windsurf, and about a dozen other agents a voice, in both directions. You talk instead of typing, and the agent answers you out loud instead of just printing text. Everything in that voice loop, speech-totext and text-to-speech, runs entirely on your machine. We're not trying to compete with the agents themselves. SKI is the voice channel, not the model. Whatever you say still goes to Claude Code's or Codex's own reasoning, exactly like it would if you'd typed it.

The part we actually care about: it answers

Dictation tools have existed for coding for a while, you speak, text appears, you're still the one routing it. That's words-in. We wanted words-in and words-out, so the agent could initiate: "Auth's done, twelve tests pass, want me to commit?", and you answer by voice from wherever you are, without walking back to the terminal. That's the whole differentiator in one sentence: SKI is the one where the conversation goes both ways and the agent can call you. Anand, one of our founders, put it this way: "Thinking is fast. Typing is not. We kept saying threesentence prompts out loud and then typing them anyway, so we built the thing that just listens and answers."

How it works, mechanically

  1. Download it from heyski.io - a build for Mac (Apple Silicon, macOS 14.4+) and one for Windows (x64).

  2. Onboarding walks you through a widget style (a notch bar under the MacBook camera housing, or a floating pill), a speech model, and installs SKI's skill into your coding agents, one click, and it's what lets an agent understand voice in and out.

  3. Connect a project by opening your normal session, Claude Code, Codex, Cursor, whatever, in your project folder and typing ski once. The agent connects itself; you'll see the project name and a green dot on the widget.

  4. Talk. Hold the fn/Globe key (or click the widget), say what you want, let go. SKI transcribes it locally and hands it to the agent just like typed text. When the agent's done, it answers out loud.

  5. Mute with fn/Globe, Space after clicking the widget, a hotkey, or the widget's own mute button,, and it actually releases the mic at the OS level, so the orange indicator on macOS turns off, which a surprising number of voice apps don't bother doing.

If you run more than one project at once, each one can use a different agent and a different voice, so you know which project is talking to you without looking up

Other things we shipped alongside the core loop

• Local meeting recorder - mic + system audio from any meeting app, speaker-tagged transcript, and your agent writes the summary and action items. Free and unlimited, ondevice, no bot joining the call.

• Send your agent into the call - via AgentCall (our other product), the agent can join Zoom/Meet/Teams as a speaking participant or a silent notetaker. This is the one piece that isn't free, running a bot in a live cloud call costs real infrastructure, so meeting participation has a free usage allowance and metered credits beyond that. The on-device app itself stays free either way.

• Screenshot-to-agent - a hotkey grabs the screen and rides along with your next spoken request.

• Full-duplex barge-in - you can interrupt SKI mid-sentence on open speakers and it'll still hear you.

• Approve-before-send - optional per project, if you'd rather review the transcript before the agent sees it.

Why "on-device" isn't a footnote for us

John, our other co-founder, was blunt about this internally before we'd even scoped the UI: "The rule was simple, nothing you say leaves your machine. A voice tool that shipped your prompts to someone's server wasn't something we'd use ourselves." So speech-to-text and text-to-speech both run locally, nothing about your voice or your code gets uploaded, and it works offline. The things that do touch the network are the ones you'd expect: signing in, checking for updates, AgentCall's meeting bot when you use it, and optional anonymous analytics (feature counts only, opt-out in onboarding), never audio, code, or transcript content.

What we'd tell you honestly, before you try it

• It's built for the agent loop, not general dictation, it won't type into arbitrary apps.
• English only right now; more languages are planned, not shipped.
• Mac support is Apple Silicon only (macOS 14.4+); no Intel Macs.
• No Linux build yet, it's planned, we're just not going to promise you a date.
• Spoken replies in an open-plan office without headphones is exactly as awkward as it sounds. That's just true.
• The app is free but closed source. The binaries are published on GitHub for distribution, which isn't the same thing.

We'd rather say all of that up front than have you discover it the hard way.

Where things stand

We launched on Product Hunt on July 30 and ended up #1 Product of the Day. The core voice loop, talking to your agent and hearing it answer, is free for life, no card, no word or time caps. If you're already living in Claude Code, Codex, or Cursor every day, we'd genuinely like you to try the loop and tell us what breaks, or what you wish it did next.

Links: Ski, Product Hunt

Top comments (1)

Collapse
 
anand_balakrishnan_d1ed6c profile image
Anand Balakrishnan

I use this daily, its a simple as talking to a real person