The short answer
Short answer: /voice is speech in, a voice layer is speech out
Claude Code's /voice command is dictation: you speak and it types your prompt. A voice layer for coding agents, such as Heard (heard.dev), is the other direction, speech out: it tells you what the agent finished, what failed, which choice it needs, and, with several sessions running, which one is talking.
Heard does this for Claude Code and Codex on macOS 14 or later, and a separate open source engine (Apache 2.0) is available to build yourself. You want one when an agent runs for minutes at a time, or several run at once, and you look away while they work: you hear the question or the failure when it happens instead of finding it later in a terminal tab.
The useful unit is not every line of terminal text. It is the next piece of information that changes what the developer should know or do.
Meaning before speech
Progress, blockers, decisions, tests, and results receive different treatment.
A place in the room
Distinct session context makes parallel work recognizable without scanning tabs.
A return path
Supported Heard Power sessions can receive a spoken reply when direction is needed.
See it working
Two ways to use the voice layer
Narration out, a reply back
Parrot narrates a Claude Code session. When it needs direction, hold right ⌘ and answer, and the reply lands in that session.
Hands-free codingSeveral sessions, one voice
Four agents run at once. Each update carries its session name, and on Power you press right ⌘ and ask Parrot to jump you to that session.
Multiple coding agentsVoice coding needs both directions
Speech to text helps a developer give an agent a longer instruction. It does not solve the hours that follow, when the agent runs tools, asks questions, discovers a blocker, or finishes while the developer is looking elsewhere.
A complete loop needs selective spoken output and a controlled way to reply. Heard provides that layer while leaving the coding agent in charge of the task.
Silence is part of a good voice interface
Narrating every command replaces visual overload with audio overload. Heard sets a deliberate threshold: it speaks questions, approvals, results and failures, and skips tool-by-tool progress. When you need quiet, mute updates.
The voice should tell you which session matters
When several sessions run at once, a useful voice layer says which session is talking, so a blocked authentication migration is never mistaken for a routine documentation build.
The integration boundary must stay inspectable
Developers need to know where events come from, what leaves the machine, which provider receives it, and whether the voice path can write back. Heard publishes those boundaries in its compatibility, security, privacy, and open source documentation.
How the layer works
From agent event to spoken update, and back to the session
The voice layer sits between the agents and you. It reads the event stream, decides what deserves speech, and routes your reply to the session that asked.
-
(1)
Agent events
Claude Code
CodexNative hooks, or one MCP connector for cloud agents.
-
(2)
Voice layer
Judged by session type, event meaning, and recent context.
-
(3)
Narration
“Auth needs one decision before it can continue.”
Parrot speaks one short update, with the session named.
-
(4)
You
Listen from anywhere in the room, then decide.
Nothing to watch. Routine tool steps are not read out.
Reply routing Press right ⌘ and tell Parrot what to send. It goes to the session you name.
How it works
From install to the first useful update
Install Heard On macOS 14 or later, run
brew install --cask heardlabs/heard/heardin Terminal, or download the app.Connect the agent Use a native hook for Claude Code or Codex, or the MCP connector for cloud agents.
Filter the event stream Heard identifies progress, questions, blockers, failures, test results, and final responses.
Listen and respond Hear questions, approvals, results and failures as they land, then answer supported sessions by voice on Heard Power when they need direction.
Questions
Frequently asked questions
What is a voice layer for AI coding agents and why would I want one?
A voice layer for AI coding agents turns what the agent is doing into short spoken updates: what finished, what failed and what needs your decision. Heard (heard.dev), the voice context layer for agents, is one: its Mac app speaks questions, approvals, results and failures and skips tool-by-tool progress. It is worth having when you run long tasks or several sessions and work on something else in the meantime, because you hear the update without checking the terminal.
What is a voice layer for Claude Code?
A voice layer is the speech-out half of voice coding. Claude Code's /voice command is dictation: you speak and it types your prompt. A voice layer goes the other way: it follows the session, decides what is worth saying, and tells you out loud what finished, what failed and what needs a decision. Heard (heard.dev), the voice context layer for agents, does this for Claude Code and Codex on macOS, and on Heard Power can route a spoken reply back to a supported session.
How is this different from text to speech?
Raw text to speech reads whatever text it receives. A voice layer uses session type, event meaning, and recent context to decide whether to speak, summarize, defer, or stay quiet.
Does Heard replace Claude Code or Codex?
No. Heard is the spoken output and optional talk back layer around the agents you already use. Claude Code and Codex continue doing the coding work.
Why not use a completion sound?
A completion sound tells you that something happened. It does not tell you whether tests passed, what changed, which session is blocked, or what decision is waiting.
Can a voice layer manage several agents?
It can make several sessions easier to follow by naming which session is talking and speaking only questions, approvals, results and failures. It should not pretend to replace source control or worktree isolation.
How can I send a spoken reply to a specific coding agent session?
With Heard Power on macOS, press right ⌘ and tell Parrot which session and what to say, and Parrot hands the message to that Claude Code or Codex session. To answer the session that just spoke, turn on Reply after updates (Settings > Parrot) and reply within a few seconds of the update. Nothing listens in the background: the microphone is on only while you talk to Parrot, for 6 seconds after Parrot answers, and for 6 seconds after an update if Reply after updates is on.
How do I make my coding agent narration quieter during meetings or calls?
Heard (heard.dev), the voice context layer for agents, does this by default with a setting called Stay quiet during calls: while you are on a Zoom call, a Slack, Discord, Teams, FaceTime or Webex call on macOS 14.4 or later, or a Google Meet, Teams, Zoom or Whereby meeting in your browser, updates stop and are not replayed afterwards. On Heard Power, after a call of at least two minutes in which your agents were active, the notch shows how much happened once you are back at your Mac, with a Catch me up button for a spoken recap. That offer lasts up to 3 hours after the call. The setting is under Settings > Parrot > Update behavior. To silence updates at any other time, use Mute updates in the menu bar or the notch.
Does a voice layer for coding agents need to send my source code to a server?
Not necessarily. Heard (heard.dev), the voice context layer for agents, follows your Claude Code and Codex sessions on your Mac and does not copy your repository or full terminal history into its hosted account database. With managed narration, a selected text snippet goes through Heard's proxy to the speech provider, and Heard does not keep the text or audio after the request. To keep speech on your Mac too, build the Apache 2.0 open source engine and use its local Kokoro voice. Local speech covers speech only: hosted rewriting and connected cloud agents still go through hosted services. Help improve Heard is a separate setting: when it is on, Heard uploads masked records of agent activity and Parrot conversations. It is on by default except in the EU, EEA, UK and Switzerland and for business and team accounts; you can turn it off and delete what you shared. heard.dev/security lists what can leave your Mac, feature by feature.


