Loading image...Kiro

Product

  • About Kiro
  • IDE
  • CLI
  • Web
  • Mobile
  • Crew
  • Pricing
  • Downloads

For

  • Enterprise
  • Startups
  • Students

Community

  • Overview
  • Ambassadors
  • Discord
  • Events
  • Powers
  • Shop
  • Showcase

Resources

  • Docs
  • Blog
  • Changelog
  • FAQs
  • Report a bug
  • Suggest an idea
  • Billing support

Social

Site TermsLicenseResponsible AI PolicyLegalPrivacy PolicyCookie Preferences
Loading image...Kiro
  • Enterprise
  • Pricing
  • Docs
SIGN INDOWNLOADS
Loading image...Kiro

Get Started

InstallationAuthenticationYour first project

Models

OverviewAvailable modelsReasoning effort

Features

How Kiro works
Specs
Steering
Hooks
MCP
Permissions
Custom agents
Agent Skills
Powers
CompactionKiroignoreCheckpoints and rewind
Built-in tools
Configuration scopes

IDE 1.x

What's new in 1.0
Setup & First Run
Editor
Chat
Experimental
Troubleshooting0.x reference

CLI

What's new in 3.0
Setup & First Run
Terminal UI
Chat
Headless modeACPAuto complete
Experimental
2.x reference

Crew

Quick startInstallationRunning 24/7
Chat
Sessions
Message controls
Prompt optimizer
Voice
Rich output & widgets
Agent Capabilities
Features
Interfaces
Apps
ConfigurationSecurityTroubleshooting

Web - Preview

Setup & First RunIdentity Center
Connect your repositories
Working with the agent
Autonomous modeAutomations
Sandbox

Mobile - Preview

Overview

Commands and Reference

CLI commandsSlash commandsBuilt-in toolsExit codesSettingsIDE keyboard shortcuts

Billing

OverviewManaging your subscriptionUpgrading your planDowngrading your planCancelling your planPurchasing add-on creditsManaging your paymentsManaging usage notificationsManaging your taxesContacting billing supportDeleting your accountRelated questions

Enterprise

ConceptsOnboarding quickstart
Connecting your identity provider
Subscribe your teamManage subscriptions
Governance
Monitor and track
SettingsManaged updatesBillingIAMSupported regions

Privacy and Security

OverviewData protectionCode referencesCompliance validationInfrastructure securityIAM permissionsFirewalls, proxies, and data perimetersVPC endpoints (AWS PrivateLink)

Guides

Overview
Language support
Learn by playing

Migration

Migrating from Q DeveloperMigrating from VSCodeUpgrading from Q CLI
  1. Docs
  2. Crew
  3. Chat
  4. Voice

Voice


Voice is a first-class input and output mode in Crew. The default provider — Piper — runs locally, so nothing leaves your machine. Cloud STT via AWS Transcribe is an optional extra.

Two modes: input and output

  • Speech-to-text (STT) — press the mic button and start talking; live partials stream into the chat input
  • Text-to-speech (TTS) — replies are spoken aloud through your speakers, streamed word-by-word as the agent generates

Both are on-demand. Voice input never fires until you press the mic; voice output never plays unless you enable it per-session or globally.

Voice input (STT)

Streaming transcription

Hold or click the mic button in the dashboard chat input.

  • Live partials appear in the textarea as you speak
  • Silence for ~1.5s auto-finalizes
  • Click the button again to stop early

Behind the scenes, this streams audio to /api/stt (WebSocket), which pipes it to your chosen provider and returns transcription events in real time.

Choose a provider

Configure the STT provider in ~/.kiro/crew/config.json:

json
{ "voice": { "stt_provider": "whisper" } }
ProviderRuns whereNotes
whisper (default)LocalUses local Whisper if available; falls back to the browser's built-in STT
aws_transcribeCloudRequires the voice install extra + AWS credentials
browserLocal (browser)Uses the browser's Web Speech API — quality varies by browser

Install the cloud STT extra:

bash
pip install "kirocrew[voice]"

Voice memos

Attach a voice memo as a file with @filename — the audio is transcribed automatically and inlined into the message. Useful when you want to leave a voice note in an existing message without triggering the live mic.

Voice output (TTS)

Piper — the default

Piper is a fast, local neural TTS engine. It runs entirely on your machine (no internet needed) and streams audio word-by-word as the agent generates its reply.

  • Enable TTS from the chat tab header (🔊 icon)
  • The reply is spoken as it streams — you hear the first sentence before the model finishes the last
  • Toggle off with the same button

Piper voice files are downloaded on first use, then cached locally.

Configuration

json
{ "voice": { "tts_provider": "piper", "tts_voice": "en_US-amy-medium", "tts_speed": 1.0 } }
KeyDefaultPurpose
voice.tts_providerpiperTTS engine (only piper today)
voice.tts_voiceen_US-amy-mediumPiper voice file to use
voice.tts_speed1.0Playback speed (0.5–2.0)

Available voices: any Piper voice file. Drop a .onnx file into ~/.kiro/crew/voices/ and reference it by filename.

When voice output pauses

TTS is designed to fade into the background:

  • Code blocks are skipped (they'd be unlistenable)
  • Tool call blocks are skipped
  • Long URLs are read as "URL" instead of character-by-character
  • Markdown headings are read with a slight pitch shift

You can override any of these from the voice settings panel.

Interrupt

Voice output can be interrupted the same way as a chat turn:

  • Click ⏹ Stop to cancel both the streaming reply and the TTS
  • The !stop command in Slack does the same for cross-surface use

The interrupt is bidirectional: stopping the reply also stops the TTS mid-word.

Cross-surface use

Voice input is dashboard-only for now. Slack voice memos work through Slack's voice-note feature. There's no voice mode in the CLI.

Voice output works everywhere the dashboard is open — including remote hosts accessed over an SSH tunnel or mobile tunnel. The audio stream is delivered as chunked WebSocket messages, so latency depends on your network.

Privacy notes

  • Piper TTS — fully local; no audio leaves the machine
  • Whisper STT — local when installed; falls back to browser STT (which may use a browser provider's cloud service)
  • AWS Transcribe — audio is streamed to AWS; opt in only with the voice extra installed and credentials configured

Piper is the default because it's the only provider that never leaves the machine.

Troubleshooting

ProblemFix
Mic button does nothingGrant the browser microphone permission for the dashboard origin
TTS is silentCheck the dashboard tab's audio permission; confirm system output isn't muted
Piper voice missingThe first use downloads the voice file; check ~/.kiro/crew/voices/ and network connectivity
Transcription is inaccurateTry a quieter room, switch to aws_transcribe if you need cloud-grade accuracy
STT stops mid-sentenceSilence detection is aggressive — click and hold instead of click-to-talk
Page updated: August 4, 2026
Prompt optimizer
Rich output & widgets