← Back to musings

How I Claude: Talk to Claude Code

Calligraphy on parchment paper reading 'How I talk to Claude Code' with a dip pen and ink bottle.

I talk to Claude Code. I don’t type.

Voice in, voice out. Claude runs in the background and tells me what it’s doing while I work on other things.

For input, I use superwhisper (macOS Voice Control works too, just not as well). For output, I built a small skill that makes Claude speak. Together, it turns Claude Code into a conversation.

I’ll say “Claude, what are my tasks for today?” then switch to Slack and keep going.

When Claude needs permission, I hear:

“I need permission to read your Daily Note.”

I approve.

When it’s done, I hear:

“”Katrina, you have no tasks today! Just kidding. You have 97,873.”

I don’t watch the terminal anymore.

The skill that makes this work: /setup-claudio

What it does

Claudio makes Claude speak in three situations.

Response summaries

Claude ends every response with a short spoken summary:

“Katrina, I rebased your branch from trunk. What do you want to do next?”

I always know what just happened.

Permission requests

When Claude needs approval, it announces exactly what it’s asking for:

“I need permission to run: git status”
“I need permission to edit: index.tsx”
“I need permission to delete: Mac HD”

Approvals become muscle memory. I don’t context switch.

Notifications

Audio cues when:

  • Claude has a question
  • A task finishes

I don’t watch. I don’t babysit.

Voice input

Two options that work:

  • macOS Voice Control – free, built-in, a bit of a hit and miss for me
  • Superwhisper – paid, very accurate transcriptions

Either way, the pattern is the same: I speak, Claude works, Claude speaks back.

Installation

Prerequisites

  • macOS (uses the built-in say command)
  • Claude Code
  • brew install jq – for configuration
  • Optional: premium system voices (System Settings > Accessibility > Spoken Content > System Voice > Manage Voices)

Setup

In Claude Code:

/plugin marketplace add kat3samsin/claude-code-plugins
/plugin install claudio@kat3samsin-claude-code-plugins

Then run:

/claudio:setup-claudio

Or if the plugin is enabled, the shorter form works:

/setup-claudio

Configuration

Setup asks three things:

  1. Your name – Claude uses it in spoken summaries
  2. Communication style
  • Full – detailed responses
  • Concise – minimal audio
  • Conversational – natural, friendly (my default)
  1. Voice – Zoe (Premium), Samantha, or Daniel

Customization

Change the voice

say -v '?'

say -v "Samantha" "Hello"
say -v "Daniel" "Hello"
say -v "Zoe (Premium)" "Hello"

Premium voices sound noticeably better.

Adjust speech rate

The -r flag controls speed:

  • 150 – slower
  • 175 – default
  • 200 – fast updates

How it works (briefly)

Output styles – Claudio adds a custom output style so Claude ends responses with a say command.

Permission hook – A small bash script parses Claude’s permission JSON and announces what’s being requested.

Hooks – The plugin registers hooks for permission requests, notifications, and task completion.

If you want the full implementation details, they’re in the README.

Limitations

  • macOS only (relies on say)
  • Premium voices must be downloaded separately

Source

GitHub: kat3samsin/claude-code-plugins


If you try this, I’m curious what voice you end up using.

/comments

No comments yet. Be the first to share your thoughts!

Want to join the conversation?

Leave a comment →