Voice Coding Guide

Dictate Prompts Into
Cursor IDE on Windows

Vibe coding means dictating long, structured prompts to Cursor's AI rather than typing them. StarWhisper is a free local voice-to-text hotkey that types into Cursor's chat panel, inline edit, terminal, and any text field on Windows.

Download for Windows
Microsoft Store
  • Trusted by Windows
  • Quick 30-second setup
More
"Build a drag-drop file uploader, PNG/JPG only, 10MB max..."

Five Steps to Voice-Driven Coding

From install to dictating directly into Cursor's chat panel.

1

Install StarWhisper

Download StarWhisper from starwhisper.ai or the Microsoft Store. Run the installer, allow microphone access on first launch. The free plan covers 500 words per day, enough for several long coding prompts. Pro is $10 a month if you dictate all day.

2

Open Cursor and your project

Launch Cursor IDE and open the project folder you are working in. Pull up the chat panel with Ctrl+L, or open inline edit on the current selection with Ctrl+K. Either context accepts dictated prompts because both are normal Windows text inputs.

3

Click in the prompt input

Place your cursor in Cursor's chat input or in the inline edit popup. StarWhisper types into whichever Windows text control currently has focus, so the cursor needs to be in the right spot before you press the hotkey. The same applies to the integrated terminal if you want to dictate a shell command.

4

Hold the StarWhisper hotkey

Press and hold the global dictation hotkey. The mic indicator confirms recording is live. The default works for most setups and you can rebind it in StarWhisper Settings if it conflicts with a Cursor or VS Code shortcut you already use.

5

Speak the prompt, release, send

Dictate the full request naturally. Example: build a drag-drop file uploader, PNG and JPG only, ten megabyte max, with a progress bar and accessible aria labels. Release the hotkey, scan the transcribed text, fix any misheard identifiers, then press Enter to send the prompt to Cursor's model.

Why Developers Pick a Voice Hotkey for Cursor

Specific advantages for vibe coding and AI-assisted development.

Long prompts stay structured

Dictate the role, the context, the existing pattern to match, the constraints, the edge cases, and the requested output. All in one breath of speaking, faster than typing it out. Cursor's models work better with fuller briefs.

Handles technical vocabulary

React, Tailwind, Zustand, fastAPI, kubectl, useEffect, queryClient, dotenv, ECMAScript, Postgres, dependency injection, all come through correctly. Whisper was trained on enough developer content to recognize mainstream identifiers and patterns.

Works across every dev tool

Cursor, VS Code, Windsurf, Zed (when on Windows), JetBrains IDEs, GitHub Desktop, terminals, Notion docs, Linear tickets, GitHub PR descriptions. One hotkey, every text input on the OS.

Local by default

The audio is transcribed by Whisper running on your CPU or GPU. Prompts stay local until you decide to hit Send to Claude, GPT, or whatever model Cursor is routing to. No third-party transcription service is involved.

Free for typical use

500 words per day on the free plan covers many coding prompts. Pro is $10 per month or $80 per year for unlimited dictation, which most developers hit once voice-driven prompting becomes the default workflow.

GPU acceleration if you have one

NVIDIA GPU owners can install the CUDA pack for faster transcription on long dictations. Vulkan is the cross-vendor fallback for AMD and Intel GPUs. CPU path also works on any modern machine.

Why Vibe Coding Is Easier With Voice

Vibe coding is the recent shift where developers spend less time typing literal code and more time describing what they want the AI to write. Cursor pushed this pattern hard, and Claude Code, GitHub Copilot Workspace, and Windsurf followed. The bottleneck is no longer compilation or syntax knowledge, it is the speed at which you can describe intent clearly enough for the model to do the right thing on the first try.

That kind of description is conversational. It sounds like: I want a React component that takes a list of products and renders them as cards with hover states, the hover should reveal a buy button with the price next to it, and clicking buy should call a function I pass in as a prop. Typing that takes maybe forty seconds. Dictating it takes ten. Across a day of forty or fifty prompts, that is half an hour saved on input alone, and the prompts that arrive are usually richer because there is less friction to keep adding context.

StarWhisper exists because the system-wide dictation built into Windows is too narrow for this workflow, it does not handle technical vocabulary well, has no global hotkey that works inside Cursor, and the older Windows Speech Recognition is even worse on tech terms. Whisper handles them. The model has seen enough developer-adjacent text in training that names like Zustand, swr, drizzle, prisma, vitest, and tailwind transcribe correctly out of the box.

Concrete Prompt Examples That Work Well by Voice

Here are real shapes of prompts that benefit from dictation in Cursor. Each takes a few seconds to speak and would take a minute or more to type.

  • Build a drag-drop file uploader, PNG and JPG only, ten megabyte max, with a progress bar and a fallback click-to-upload button for browsers without drag support.
  • Refactor the user service to use dependency injection, the database client and the email service should be injected, and update the tests so they pass mock instances instead of patching modules.
  • Write a Postgres migration that adds a soft-delete column to the orders table, backfills it for existing rows, and includes the down migration to roll it back.
  • Generate a fastAPI endpoint that accepts a CSV upload, validates the columns, inserts rows in batches of five hundred with a transaction, and returns the row count plus any error lines.
  • Add accessible aria labels and keyboard navigation to this modal, the focus trap should release when the modal closes and return focus to the trigger button.

Each of those is the kind of long instruction Cursor's chat or inline edit handles well. Dictating gets the full thought into the input box in one pass, where typing tempts you to drop the trailing details.

Cursor Chat, Inline Edit, and Terminal: All the Same to StarWhisper

Cursor exposes a few different surfaces for prompting the AI, and they all behave the same way for dictation purposes.

Cursor surface How to open Dictation behavior
Chat panel Ctrl+L Dictate full conversational prompts, multi-paragraph instructions
Inline edit Ctrl+K with code selected Dictate short surgical prompts targeting the highlighted block
Composer Ctrl+I Dictate multi-file refactor prompts and feature briefs
Integrated terminal Ctrl+` Dictate commit messages, search queries, long flags
File rename / search Any text input Dictate file names, search strings, regex descriptions

From StarWhisper's side, all of these are Windows text inputs and the dictation flow is identical for each.

Privacy: Where the Prompt and Audio Actually Go

Cursor sends your prompts to whichever model you have selected (Claude, GPT-4, GPT-5, Gemini, Cursor's own) which is the same as any other AI coding assistant. The new question dictation adds is: does the audio also get uploaded?

In StarWhisper Local Mode (the default), the answer is no. Audio is captured by the microphone, processed in memory by Whisper on your CPU or GPU, and converted to text on-device. The audio never reaches any third-party transcription service. The transcribed text is the same text Cursor would receive if you had typed it, and only then does it leave your machine through Cursor's normal API call to the underlying model.

If you are working under an NDA or with sensitive code where you cannot accept any model exposure, you would not use Cursor's AI features at all, and the same applies regardless of whether you dictate or type. For everyone else, dictation does not change the privacy posture, it just changes how the text arrived in the prompt box. See the local vs cloud Whisper FAQ for the full breakdown.

Tips for Faster, Cleaner Voice Prompts in Cursor

  • Plan the prompt structure first: role, context, task, constraints, examples, output format. Then dictate it in one pass.
  • Pronounce camelCase by saying the words. Whisper handles getCurrentUser as get current user and Cursor's model usually understands either form anyway.
  • For library names that sound like words (Next, Bun, Astro, Bun, Hono), say them clearly and review afterward. Add them to StarWhisper's custom dictionary if you use them often.
  • Paste code rather than dictating syntax. The standard pattern is dictate the request, paste the relevant file with Ctrl+V, ask Cursor for the change.
  • Use spoken transition words (first, next, also, finally) to give the model a clearer structure in your dictated request.
  • For long composer prompts that span multiple files, dictate the overall goal first, then list each file you want touched with one or two lines about why.

Beyond Cursor: Other Coding Tools That Work

The same hotkey covers every other Windows code editor and AI tool. Voice typing for coding walks through the broader pattern, but as a quick reference, dictation works in:

  • VS Code with GitHub Copilot Chat, Continue, Cody, Codeium
  • Windsurf and Zed (Windows builds) for their AI panels
  • JetBrains IDEs with AI Assistant, Junie, or third-party plugins
  • GitHub.com PR descriptions, issue comments, reviews
  • Linear, Jira, Notion docs where you write technical specs
  • Terminals (Windows Terminal, ConEmu, WSL shells) for commit messages and command construction
  • ChatGPT and Claude web interfaces for non-Cursor AI conversations

One install, one hotkey, every text field on Windows. That is why developers who start using it for Cursor end up using it for everything else within a week.

Frequently Asked Questions

Does this work with Cursor Pro?
Yes. StarWhisper does not interact with your Cursor account or model selection in any way. It dictates into the active text field, which means whether you are on Cursor's free hobby plan, Pro at $20 per month, or Business, the behavior is identical. The dictation happens on your PC before Cursor ever sees the prompt, and your Cursor tier only matters at the moment the prompt is sent to Claude, GPT, or whatever model you have selected for that conversation.
Does it work with Cursor's inline edit feature?
Yes. Press Ctrl+K to open the inline edit prompt, place the cursor in the input box that appears, then hold the StarWhisper hotkey and dictate. Inline edit is just another text input as far as Windows is concerned, so the dictation flow is identical to the chat panel. This works well for short surgical prompts like rename this variable to something more descriptive or extract this block into a helper function with proper error handling.
Can I dictate actual code, not just prompts?
You can, but in practice it is rarely the fast way. Spoken English does not map cleanly to source code syntax, and even Whisper's strong technical vocabulary cannot turn say close paren semicolon return null into perfect output every time. The productive pattern is to dictate the natural-language description of what you want the code to do, then let Cursor's AI write the actual syntax. Short variable names and single identifiers dictate fine.
How well does Whisper handle variable names and library names?
Whisper was trained on a large corpus that includes plenty of developer-adjacent content, so common identifiers like React, Tailwind, Postgres, fastAPI, useEffect, queryClient, dotenv, kubectl, and similar names transcribe correctly most of the time. CamelCase and snake_case are recognized when you pronounce them naturally. For unusual internal identifiers or made-up product names, expect to fix a few words after release. Adding the term once to the StarWhisper custom dictionary improves subsequent runs.
Does it work in Cursor's integrated terminal?
Yes. The integrated terminal in Cursor accepts dictated text the same way any other text input does. You can dictate a git commit message, a long curl command described in English, or a search query into ripgrep. Whisper handles common shell syntax like flags, dashes, and pipe characters when spoken naturally, though for complex one-liners with quotes and escapes it is usually still faster to type the punctuation parts and dictate only the longer arguments.
Does it work in VS Code too?
Yes. Cursor is a fork of VS Code and StarWhisper dictates into both with identical behavior. The chat panels for GitHub Copilot Chat, Continue, Cody, and other VS Code AI extensions all receive dictated text the same way Cursor's chat does. If you split your time between VS Code and Cursor, the single hotkey covers both editors with no configuration change between them.
What about WebStorm, IntelliJ, and other JetBrains IDEs?
All JetBrains IDEs on Windows work as dictation targets. The AI Assistant chat in IntelliJ, the prompt input in WebStorm's Junie integration, the JetBrains AI Chat tool window, and the code-with-Claude or Codeium plugins all accept dictated text. The same applies to PyCharm, GoLand, RubyMine, Rider, DataGrip, and PhpStorm. StarWhisper does not require integration with the IDE because it dictates into the OS-level text input layer.
What is the accuracy on technical terminology and code-adjacent language?
Whisper's base accuracy across general English is around 98 percent on clean audio, and the technical-vocabulary subset performs at a similar level for mainstream terms. Names of major frameworks, languages, cloud providers, libraries, and standard CS concepts come through correctly. Domain-specific jargon for niche internal systems is where errors cluster, and that is the same place a human transcriptionist would also need a glossary. Reviewing the dictated prompt before sending takes seconds and catches the few words to fix.

Start Voice-Coding in Cursor for Free

500 words/day on the free plan. No credit card. Works in Cursor, VS Code, JetBrains, and any Windows text field.

Download StarWhisper for Windows