📅 24 Mart 2026 Lokasyon: /voice Anthropic docs ↗

En İyi Uygulama

Sesli Dikte (Voice Dictation) beta

Claude Code CLI'da sesli dikte özelliği ile komutlarınızı yazarak değil, konuşarak girebilirsiniz. "Bas ve kaydet" (hold-to-record) veya "dokun ve gönder" (tap-to-record) modları arasında seçim yapabilirsiniz.

Sesli dikte, Claude Code v2.1.69 veya üzeri sürümlerde kullanılabilir. Tap modu için v2.1.116 veya üzeri gerekir. Sürümünüzü claude --version ile kontrol edebilirsiniz.

Gereksinimler (Requirements)

Sesli dikte, kaydedilen sesi Anthropic sunucularına göndererek yazıya çevirir. Ses işleme yerel olarak yapılmaz. Konuşmadan metne çevirme hizmeti yalnızca bir Claude.ai hesabıyla kimlik doğrulaması yaptığınızda kullanılabilir. Doğrudan Anthropic API anahtarı, Amazon Bedrock, Google Vertex AI veya Microsoft Foundry kullanıldığında bu özellik çalışmaz.

Not: Transkripsiyon, Claude mesajlarını veya token'larını tüketmez ve /usage içinde gösterilen limitlere dahil değildir. Veri kullanımı hakkında bilgi için Anthropic'in veri işleme politikalarına bakın.

Sesli dikte yerel mikrofon erişimi gerektirdiğinden, Claude Code on the web veya SSH oturumları gibi uzak ortamlarda çalışmaz. WSL'de sesli dikte için WSLg gerekir (Windows 11'de WSL2 ile birlikte gelir). Windows 10 veya WSL1'de, doğrudan Windows üzerinde çalıştırın.

Ses kaydı macOS, Linux ve Windows'ta yerleşik bir yerel modül kullanır. Linux'ta yerel modül yüklenemezse, Claude Code ALSA utils'ten arecord veya SoX'tan rec kullanır. Hiçbiri yoksa, /voice paket yöneticiniz için bir kurulum komutu yazdırır.

Claude Code VS Code eklentisi de aynı Claude.ai hesabı gereksinimiyle sesli dikteyi destekler. VS Code Remote oturumlarında (SSH, Dev Containers, Codespaces) kullanılamaz çünkü mikrofon yerel makinede, eklenti ise uzak sunucuda çalışır.

Sesli dikteyi etkinleştirme (Enable voice dictation)

/voice komutunu çalıştırarak dikteyi etkinleştirin. İlk etkinleştirmede Claude Code bir mikrofon kontrolü yapar. macOS'ta bu, terminaliniz için sistem mikrofon izin istemini tetikler (daha önce hiç verilmemişse).

/voice
Voice mode enabled (hold). Hold Space to record. Dictation language: en (/config to change).

/voice isteğe bağlı bir mod argümanı alır:

Komut Etki
/voice Aç/kapa, mevcut modu koru
/voice hold Hold modunda etkinleştir
/voice tap Tap modunda etkinleştir
/voice off Devre dışı bırak

Sesli dikte oturumlar arasında kalıcıdır. /voice çalıştırmak yerine doğrudan kullanıcı ayarları dosyanıza ekleyebilirsiniz:

{
  "voice": {
    "enabled": true,
    "mode": "tap"
  }
}

Sesli dikte etkinken, giriş alanı boşken alt bilgide "hold Space to speak" ipucu gösterilir. İpucu metni her iki modda da aynıdır ve özel bir durum satırı yapılandırdıysanız görünmez.

Transkripsiyon, kodlama kelime dağarcığına göre ayarlanmıştır. regex, OAuth, JSON ve localhost gibi yaygın geliştirme terimleri doğru tanınır. Mevcut proje adınız ve git dal adınız otomatik olarak tanıma ipuçları olarak eklenir.

Bas ve kaydet (Hold to record)

Hold modu, bas-konuş (push-to-talk) şeklinde çalışır: tuşa basılı tutarken kayıt yapar, bıraktığınızda durur. Varsayılan mod budur.

Space tuşuna basılı tutarak kaydı başlatın. Claude Code, terminalinizden gelen hızlı tuş tekrarı olaylarını izleyerek basılı tutulan tuşu algılar, bu nedenle kayıt başlamadan önce kısa bir ısınma süresi vardır. Alt bilgide ısınma sırasında "keep holding…" yazısı görünür, kayıt aktif olduğunda canlı bir dalga formuna dönüşür. Isınma sırasında giren ilk birkaç tuş tekrarı karakteri, kayıt etkinleştiğinde otomatik olarak silinir. Tek bir Space dokunuşu yine boşluk yazar, çünkü basılı tutma algılaması yalnızca hızlı tekrarları tetikler.

Isınmayı atlamak için /voice tap ile tap moduna geçin veya meta+k gibi bir değiştirici kombinasyonuna yeniden bağlayın. Değiştirici kombinasyonları kaydı ilk tuş vuruşunda başlatır.

Konuşmanız, yazıya dökülürken giriş alanında görünür ve transkript sonlanana kadar soluk renkte kalır. Space tuşunu bırakarak kaydı durdurun ve metni son haline getirin. Transkript, imleç konumunuza eklenir ve imleç eklenen metnin sonunda kalır, böylece yazma ve dikteyi istediğiniz sırayla karıştırabilirsiniz.

Varsayılan olarak, tuşu bırakmak transkripti ekler ve Enter tuşuna basmanızı bekler. Ses ayarları nesnesinde "autoSubmit": true ayarını yaparak, tuşu bıraktığınızda transkript en az üç kelime uzunluğundaysa istemi otomatik gönderebilirsiniz.

Dokun ve gönder (Tap to record and send)

Tap modu, tek bir tuş vuruşuyla kaydı açar: bir kez dokunun başlatmak için, konuşun, sonra tekrar dokunun istemi göndermek için. Isınma yoktur ve tuşu basılı tutmanız gerekmez.

/voice tap ile tap modunu etkinleştirin. Giriş alanı boşken Space'e dokunun kaydı başlatmak için. Alt bilgide kayıt sırasında canlı dalga formu gösterilir. Kaydı durdurmak için Space'e tekrar dokunun. Claude Code transkripti ekler ve transkript en az üç kelime uzunluğundaysa istemi otomatik gönderir. Daha kısa transkriptler eklenir ancak gönderilmez, böylece yanlışlıkla bir dokunuşta tek bir kelime gönderilmez.

İlk dokunuş yalnızca giriş alanı boşken kaydı başlatır, böylece mesaj yazarken normal şekilde boşluk yazabilirsiniz. İkinci dokunuş, giriş içeriğinden bağımsız olarak kaydı durdurur. Kayıt ayrıca 15 saniye sessizlikten veya toplam iki dakikadan sonra otomatik durur.

Dikte dilini değiştirme (Change the dictation language)

Sesli dikte, Claude'ın yanıt dilini kontrol eden aynı dil ayarını kullanır. Bu ayar boşsa, dikte varsayılan olarak İngilizce'dir. VS Code eklentisinde, dil boşsa, dikte VS Code'un accessibility.voice.speechLanguage ayarını kullanır, o da boşsa İngilizce'ye döner.

Desteklenen dikte dilleri:

Dil Kod
Çekçe cs
Danca da
Felemenkçe nl
İngilizce en
Fransızca fr
Almanca de
Yunanca el
Hintçe hi
Endonezce id
İtalyanca it
Japonca ja
Korece ko
Norveççe no
Lehçe pl
Portekizce pt
Rusça ru
İspanyolca es
İsveççe sv
Türkçe tr
Ukraynaca uk

Dili /config içinde veya doğrudan ayarlarda belirleyin. BCP 47 dil kodunu veya dil adını kullanabilirsiniz:

{
  "language": "japanese"
}

Dil ayarınız desteklenen listede değilse, /voice etkinleştirmede sizi uyarır ve dikte için İngilizce'ye döner. Claude'ın metin yanıtları bu geri dönüşten etkilenmez.

Dikte tuşunu yeniden bağlama (Rebind the dictation key)

Dikte tuşu, Chat bağlamında voice:pushToTalk olarak bağlıdır ve varsayılan olarak Space'tir. Aynı bağlama hem hold hem de tap modlarını kontrol eder.

~/.claude/keybindings.json dosyasında yeniden bağlayın:

{
  "bindings": [
    {
      "context": "Chat",
      "bindings": {
        "meta+k": "voice:pushToTalk",
        "space": null
      }
    }
  ]
}

"space": null ayarı varsayılan bağlamayı kaldırır. Her iki tuşu da aktif tutmak istiyorsanız bunu eklemeyin.

Hold modunda, v gibi çıplak bir harf tuşu bağlamaktan kaçının çünkü basılı tutma algılaması tuş tekrarına dayanır ve harf ısınma sırasında isteme yazılır. Space veya meta+k gibi bir değiştirici kombinasyonu kullanın; bu, ısınma olmadan ilk tuş vuruşunda kaydı başlatır.

Tap modunda ısınma yoktur, bu nedenle çoğu tuş çalışır. Bazı tuşlar terminal uygulamalarına iletilmez ve hiç bağlanamaz. Örneğin, Caps Lock bağlamaya çalışırsanız hata gösterir. Tam tuş bağlama sözdizimi ve ayrılmış kısayollar listesi için klavye kısayollarını özelleştirme sayfasına bakın.

Sorun giderme (Troubleshooting)

Sesli dikte etkinleşmediğinde veya kayıt yapmadığında karşılaşılan yaygın sorunlar:

Voice mode requires a Claude.ai account: API anahtarı veya üçüncü taraf sağlayıcı ile kimlik doğrulaması yapıyorsunuz. Claude.ai hesabıyla giriş yapmak için /login çalıştırın.

Microphone access is denied: Sistem ayarlarında terminalinize mikrofon izni verin. macOS'ta: Sistem Ayarları → Gizlilik ve Güvenlik → Mikrofon'a gidin ve terminal uygulamanızı etkinleştirin, ardından /voice'u tekrar çalıştırın. Windows'ta: Ayarlar → Gizlilik ve güvenlik → Mikrofon'a gidin ve masaüstü uygulamaları için mikrofon erişimini açın, ardından /voice'u tekrar çalıştırın. Terminaliniz macOS ayarlarında listelenmiyorsa, "Terminal not listed in macOS Microphone settings" bölümüne bakın.

No audio recording tool found on Linux: Yerel ses modülü yüklenemedi ve yedek araç kurulu değil. Hata mesajında gösterilen komutla SoX'u kurun, örneğin sudo apt-get install sox.

Voice input is failing repeatedly and has been paused: Sesli dikte art arda birkaç başlatma hatası aldı ve bir başarılı olana kadar yeni oturumları durdurdu. Bu genellikle ana bilgisayardaki mikrofon veya ses yığınının ses yakalayamadığı anlamına gelir (örneğin, başsız sunucu, ses geçişi olmayan uzak kabuk veya reddedilmiş mikrofon izni). Çalışan bir giriş cihazı doğrulayın, yukarıdaki girişlerden temel nedeni düzeltin, ardından dikteyi tekrar tetikleyin.

Nothing happens when holding Space in hold mode: Basılı tutarken giriş istemini izleyin. Boşluklar birikiyorsa, sesli dikte kapalıdır; /voice hold ile etkinleştirin. Yalnızca bir veya iki boşluk görünüp sonra hiçbir şey olmuyorsa, sesli dikte açıktır ancak basılı tutma algılaması tetiklenmiyor. Basılı tutma algılaması, terminalinizin tuş tekrarı olayları göndermesini gerektirir, bu nedenle işletim sistemi düzeyinde tuş tekrarı devre dışıysa basılı tutulan tuşu algılayamaz. Tuş tekrarı gereksinimini atlamak için /voice tap ile tap moduna geçin.

Tapping Space types a space instead of recording in tap mode: İlk dokunuş yalnızca giriş istemi boşken kaydı başlatır. Önce girişi temizleyin veya /voice tap çalıştırarak tap modunda olduğunuzu kontrol edin.

No audio detected from microphone: Kayıt başladı ancak sessizlik yakalandı. Doğru giriş cihazının sistem varsayılanı olarak ayarlandığını ve giriş seviyesinin sessizde veya sıfıra yakın olmadığını doğrulayın. Windows'ta: Ayarlar → Sistem → Ses → Giriş'i açın ve mikrofonunuzu seçin. macOS'ta: Sistem Ayarları → Ses → Giriş'i açın.

No speech detected: Ses transkripsiyon hizmetine ulaştı ancak hiçbir kelime tanınmadı. Mikrofona daha yakın konuşun, arka plan gürültüsünü azaltın ve dikte dilinin konuştuğunuz dille eşleştiğini doğrulayın.

Transcription is garbled or in the wrong language: Dikte varsayılan olarak İngilizce'dir. Başka bir dilde dikte ediyorsanız, önce /config içinde ayarlayın. "Change the dictation language" bölümüne bakın.

macOS Mikrofon Ayarlarında Terminal Listelenmiyor (Terminal not listed in macOS Microphone settings)

Terminal uygulamanız Sistem Ayarları → Gizlilik ve Güvenlik → Mikrofon altında görünmüyorsa, etkinleştirebileceğiniz bir anahtar yoktur. Terminaliniz için izin durumunu sıfırlayın, böylece bir sonraki /voice çalıştırması yeni bir macOS izin istemi tetikler.

  1. Terminalinizin mikrofon iznini sıfırlayın: tccutil reset Microphone <bundle-id> komutunu çalıştırın, <bundle-id> yerine terminalinizin tanımlayıcısını koyun: yerleşik Terminal için com.apple.Terminal, iTerm2 için com.googlecode.iterm2. Diğer terminaller için tanımlayıcıyı osascript -e 'id of app "AppName"' ile bulun. tccutil reset Microphone komutunu paket kimliği olmadan da çalıştırabilirsiniz, ancak bu, Zoom veya Slack gibi Mac'inizdeki her uygulamanın mikrofon erişimini iptal eder. Her uygulamanın bir sonraki kullanımda yeniden izin istemesi gerekir, bu nedenle aktif bir görüşme sırasında çalıştırmayın.

  2. Terminalinizi kapatıp yeniden başlatın: macOS, halihazırda çalışan bir işlemi yeniden istemez. Terminal uygulamasını Cmd+Q ile kapatın (pencerelerini kapatmak yeterli değil), ardından tekrar açın.

  3. Yeni bir istem tetikleyin: Claude Code'u başlatın ve /voice çalıştırın. macOS mikrofon erişimi için sorar; izin verin.

Ayrıca bakınız (See also)

Örnek kullanım senaryosu

Bir geliştirici, büyük bir kod tabanında çalışırken sürekli yazmak yerine sesli dikte kullanmak ister. İş akışı şöyle olabilir:

  1. Sesli dikteyi etkinleştirme: Terminalde /voice tap komutunu çalıştırır. İlk çalıştırmada macOS mikrofon izni ister; "İzin Ver" seçeneğine tıklar.

  2. Dil ayarını yapma: Türkçe dikte yapmak için /config içinde "language": "tr" ayarını yapar veya doğrudan settings.json dosyasına ekler.

  3. Kodu sesle yazma: Giriş alanı boşken Space tuşuna dokunur ve "refactor the auth middleware to use the new token validation helper" der. Tekrar Space'e dokunur. Transkript otomatik olarak giriş alanına eklenir ve gönderilir.

  4. Karma giriş (ses + yazı): Önce "add error handling for" der, Space'e dokunur, ardından klavyeyle null pointer exception yazar, sonra tekrar Space'e dokunup "in the login function" der. Tüm metin tek bir istemde birleşir.

  5. Kod terimlerini dikte etme: "Create a new regex pattern to validate OAuth tokens and parse JSON from the localhost API response" der. Tüm teknik terimler doğru tanınır.

  6. Otomatik gönderme: settings.json dosyasına "voice": { "enabled": true, "mode": "tap", "autoSubmit": true } ekler. Artık her dikte sonrası Enter'a basması gerekmez; üç kelimeden uzun transkriptler otomatik gönderilir.

  7. Sorun giderme: Bir gün dikte çalışmaz. /voice komutunu çalıştırır ve "Voice mode requires a Claude.ai account" hatasını görür. /login ile Claude.ai hesabına giriş yapar ve dikte tekrar çalışır.