Skip to content
Halopen

developers

Voice typing patterns for Claude Code on Mac

Claude Code prompt exercises for migrations, refactors and reviews. Adapt the examples, check exact identifiers and verify each completed request.

Halopen · · 6 min read

Build a reviewable request by naming the target, the change, the constraint and the check. These patterns cover migrations, refactors and explanations in Claude Code. Start with the specific task you have, then adapt the prompt before dictating it.

These are illustrative practice drafts adapted from this guide’s earlier examples. They are not verified recordings or measured product results. No timing, recognition accuracy or agent success is established by the examples.

Try Halopen on your Mac · Current trial duration and paid plans

Prepare the input field

Choose the actual field you use in Claude Code, Cursor, VS Code or your terminal. Follow Halopen’s download and permission steps, click into a harmless draft, hold your configured hotkey, speak and release. Check insertion separately in each field. Native voice input may already cover your task; use the linked workflow guide to compare approaches.

What to check before using a draft

Check migration direction and rollback assumptions, access-control scope, exact identifiers and the test that should support the change. Ask to inspect a proposed diff before running a modification.

Practice 1: Seven prompts that show up every morning

“Add a customers table to the meria schema with id as a uuid primary key, email as a citext unique not null, full name as text, created_at and updated_at as timestamptz with now() defaults. Add row-level security with a policy that lets a user select and update only the row whose auth.uid matches the customer id. Add an updated_at trigger that uses the existing meria.touch_updated_at function. Put the migration in supabase/migrations and name it 2026_05_07_customers.sql. Don’t add an index on email yet — citext unique already gives me one.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 2: Seven prompts that show up every morning

“Open Sources slash Halopen slash RecordingPill dot swift. Find the WaveformNSView class. Switch the hard-coded gradient stop colors to the brand tokens from the new BrandColors enum. Don’t change the bar count, the bar spacing, or the animation timing. Keep the public init signature unchanged so AppKit instantiation still works.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 3: Seven prompts that show up every morning

“Cannot find ‘BrandColors’ in scope — Sources/Halopen/RecordingPill.swift, line 142. This started after the last commit added BrandColors as a Swift enum in BrandColors.swift. The file is in the same target. The compiler should see it. I’ve already checked the target membership in project.yml and it’s correct. I think the issue is that BrandColors is declared inside a namespace I missed. Find the actual scope of BrandColors and tell me whether the call site needs the namespace prefix or whether the enum needs to be moved up. Don’t move BrandColors out of its current file.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 4: Seven prompts that show up every morning

“Write a test in HalopenSharedTests slash HotkeyConflictTests dot swift. The test creates a HotkeyManager, registers fn as the dictation hotkey, then calls detectConflict with a list that includes Cmd-fn-A as a system shortcut. The test asserts that detectConflict returns a Conflict struct with the conflicting shortcut name and a suggested alternative. Then write the HotkeyManager dot detectConflict method that makes the test pass. Don’t change the existing register or unregister methods. The Conflict struct can be a new type in the same file.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 5: Seven prompts that show up every morning

“Move the AVAudioEngine setup out of Recorder dot swift and into a new AudioSession actor in Sources slash HalopenShared slash AudioSession dot swift. The actor owns the engine, the input node, and the tap. Recorder calls into AudioSession. Update Sources slash HalopenShared slash RecorderProtocol dot swift only if the public surface needs to expose the actor — otherwise leave it. Add a unit test in HalopenSharedTests slash AudioSessionTests dot swift that creates the actor in isolation, calls start and stop, and asserts the tap is removed on stop. Don’t touch the live-partial transcription path — that stays in Recorder.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 6: Seven prompts that show up every morning

“Add a referral_code column to meria dot customers as text, nullable, default null. Backfill is not required; existing rows get null. Write the migration as a forward statement, then a separate down statement that drops the column. Add a verification query at the bottom that selects count star from meria dot customers where referral_code is not null — should return zero on a fresh apply. Put the migration in supabase slash migrations slash 2026_05_07_referral_code dot sql. Don’t add a unique constraint on referral_code yet — that’s a separate migration after backfill.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

Practice 7: Seven prompts that show up every morning

“Run git diff and read every staged and unstaged change. Find five ways this diff could break in production. Return them as a numbered list, each with the file, the line, the failure mode, and the smallest fix. Don’t apply any edits — just report. Be adversarial. Assume the diff is broken until proven otherwise.”

Review the exact names and constraints after dictation. Adapt the request to your own task; the example is not a record of an agent completing it.

If the result needs correction

Inspect the completed text at the intended cursor. Live preview is provisional; it does not prove successful final recognition or insertion. Correct punctuation, exact tokens and missing constraints before submission. If the intended field received nothing, check focus, permissions and the app’s error or recovery surface before repeating the request.

For a performance comparison, include the time to dictate, correct and review the same useful draft. Do not infer saved time or better output from the length of an example. Keep the method that suits your actual workflow.

Processing and context

Cloud recognition sends audio and available biasing hints to the transcription service. With vocabulary biasing enabled, hints can include dictionary entries, a foreground-app label and a routing hint. The separate optional context switch also permits selected text, clipboard text and text immediately before the cursor. Read Halopen’s privacy details before working around confidential material.

On-device speech recognition runs locally on supported hardware after a model download. Account, updates, enabled diagnostics and your destination app have separate behavior. The local history and supported-event log are not a complete network monitor.

Read the related workflow guide · Download Halopen to evaluate your setup

Pass it on

Try Halopen

Hold the function key. Speak.

Halopen is free for 14 days, no credit card. Pro is $19/mo or $179/yr — unlimited.

Questions

Answered here.

Are these recorded Halopen results?
No. These are illustrative practice drafts. They do not establish recognition accuracy, insertion compatibility, completion time or agent success.
What should I check after dictating?
Check migration direction and rollback assumptions, access-control scope, exact identifiers and the test that should support the change. Ask to inspect a proposed diff before running a modification.
Where can I find current trial and price information?
The pricing page has the current trial duration, paid plans and refund terms. The download page explains Mac requirements and setup.

Power-user cheat sheet

Take Halopen with you.

One short email, then the Halopen power-user cheat sheet — hotkeys, best-fit apps, custom vocabulary tips, voice patterns for prompt engineering. No spam. Unsubscribe in one click.