테마
CLI Voice 모드
목표
Kiro CLI에서 음성으로 프롬프트를 입력하고, 모델·언어·자동 전송을 설정하고, 마이크 없는 클라우드 데스크톱에서도 쓰는 방법을 익힙니다.
개념
Voice 모드는 말한 내용을 OpenAI Whisper(whisper.cpp 기반)로 로컬에서 받아 적고, 기본값으로 바로 어시스턴트에 전송합니다.
- 기본값은 내 컴퓨터 안에서만 처리합니다. 오디오가 밖으로 나가지 않고 클라우드 API 키도 필요 없습니다.
- 마이크(또는 클라우드 데스크톱용 원격 음성 서버)와
voice기능이 포함된kiro-cli빌드가 필요합니다. - 음성-텍스트 입력 전용입니다. Kiro Crew의 음성 기능(대시보드에서 음성 입력과 음성 출력 지원)과는 별개입니다.
사용 방법
| 방법 | 동작 |
|---|---|
/voice | 현재 채팅에서 녹음을 한 번 시작합니다. |
Space 길게 누르기 | 프롬프트에서 1.5초 누르면 녹음이 시작되고, 떼면 멈추고 받아 적습니다. |
- 녹음 중에는 표시기가 음량을 실시간으로 보여 주고, 말하는 동안 부분 텍스트가 입력란에 나타납니다.
Enter를 누르거나 일정 시간 조용하면 자동으로 멈춥니다.- 받아 적은 텍스트는 기본적으로 자동 전송됩니다.
voice.autoSubmit을false로 두면 입력란에 넣어 두고 확인 후 보냅니다.
How do I까지 타이핑한 뒤 Space를 누른 채 나머지를 말하면 두 내용이 이어진 프롬프트가 전송됩니다.
처음 실행할 때
/voice를 실행하면 모델이 없음을 감지합니다.- 모델 이름, 크기(기본
base모델 약 148MB), 라이선스(MIT)를 보여 주는 창이 뜹니다.y를 누르면 내려받습니다. - 모델은
~/.cache/kiro/models/에 저장되고, 이후에는 바로 녹음이 시작됩니다.
모델을 받기 전에 Space로 시작하면 /voice로 설정하라는 안내가 나옵니다. 헤드리스나 파이프 실행에서는 대화형 창이 없으므로 CLI 명령에 --confirm-download를 붙여 내려받기를 승인합니다.
모델과 설정
| 모델 | 크기 | 속도 | 정확도 |
|---|---|---|---|
base (기본) | 약 148MB | 빠름 | 좋음 |
small | 약 466MB | 느림 | 더 좋음 |
설정은 kiro-cli settings로 바꿉니다. 모두 선택 사항입니다.
| 설정 | 기본값 | 설명 |
|---|---|---|
voice.modelSize | base | base 또는 small |
voice.language | en | 받아쓰기 언어, auto는 자동 감지 |
voice.silenceTimeout | 5 | 자동 정지까지의 무음 시간(초) |
voice.maxSessionTime | 300 | 최대 녹음 길이(초) |
voice.autoSubmit | true | 받아 적은 텍스트 자동 전송 |
voice.serverUrl | 없음 | 클라우드 데스크톱용 원격 음성 서버 URL |
bash
# 정확도 우선
kiro-cli settings set voice.modelSize small
kiro-cli settings set voice.silenceTimeout 8
# 보내기 전에 확인
kiro-cli settings set voice.autoSubmit false
# 현재 voice 설정 보기
kiro-cli settings list | grep voice인식 정확도를 위해 Silero VAD로 말소리와 키보드·팬 소음을 구분하고, 최근 대화 내용을 Whisper 초기 프롬프트에 넘겨 코드 식별자나 프로젝트 용어를 더 잘 받아 적습니다.
클라우드 데스크톱에서 쓰기
마이크가 없는 클라우드 데스크톱에서는 내 로컬 컴퓨터에서 도는 작은 음성 서버로 오디오를 보냅니다. 로컬 마이크가 감지되지 않으면 원격 서버로 자동 전환합니다.
bash
# 마이크가 있는 로컬 컴퓨터
kiro-cli voice-serve
# 클라우드 데스크톱에 SSH 접속하며 역방향 터널 열기
ssh -R 19876:localhost:19876 cloud-desktop
# 클라우드 데스크톱에서 Kiro 시작 전에 설정
export KIRO_VOICE_SERVER_URL=http://127.0.0.1:19876
kiro-cli로컬 컴퓨터에서 kiro-cli voice-cloud-setup을 실행하면 SSH 연결 확인, voice-serve 시작, 역방향 터널까지 한 번에 합니다(옵션: --port, --remote-bin, -i). 클라우드 데스크톱 쪽 KIRO_VOICE_SERVER_URL은 여전히 직접 설정해야 하며, 계속 쓰려면 셸 프로필에 넣습니다. 한 세션만 원격으로 강제하려면 /voice --model remote를 씁니다.
보안
- 로컬 Whisper를 쓰면 오디오는 내 컴퓨터에서 녹음, 변환, 폐기되며 어떤 서버로도 가지 않습니다.
- 원격 서버 옵션은 설정한 URL(보통 SSH 터널 너머 내 노트북)로만 오디오를 보냅니다.
- 모델 파일은 내려받은 뒤와 매번 쓰기 전에 고정된 SHA-256으로 검증하며, 맞지 않으면 지우고 공식 CDN에서 다시 받습니다.
- Unix에서는 모델 디렉터리를 소유자만 접근하도록(
0700) 제한합니다.
제약
- 실제 마이크나 원격 음성 서버가 필요합니다.
- 로컬 변환은 CPU를 씁니다. GPU 가속은 아직 없습니다.
- 기본은 영어에 최적화되어 있고 다국어 지원은 제한적입니다.
- 호출어(wake word)로 시작하는 기능은 없습니다.
문제 해결
| 증상 | 조치 |
|---|---|
| "No microphone detected" | 마이크 권한을 주거나 원격 음성 서버를 설정 |
| 녹음이 너무 빨리 멈춤 | voice.silenceTimeout을 늘림(예: 10) |
| 인식이 부정확함 | small 모델로 바꾸고 소음을 줄임 |
| "Voice binary not found" | kiro-cli를 다시 설치하거나 KIRO_CHAT_CLI_BIN이 voice 기능 포함 빌드를 가리키는지 확인 |
더 알아보기
- CLI로 앱 만들기: CLI 세션 슬래시 명령
- CLI 전체화면 모드
출처: Voice mode (2026-10-26 확인)