CosVoice.

Десктопное приложение для локального распознавания речи с автовставкой текста и глобальной горячей клавишей

Ключевые тезисы.

01Полностью локальная обработка через Whisper.cpp: звук и расшифровка не покидают устройства — критично для конфиденциальных данных
02Глобальная горячая клавиша Option+Space — приложение мгновенно доступно из любого окна, не нужно переключаться
03Автоматическая вставка распознанного текста в активное поле через macOS Accessibility API — не нужно копировать и вставлять руками
04Четыре размера модели Whisper (tiny / base / small / medium) — пользователь сам выбирает баланс между качеством и скоростью
05Tauri + Rust бэкенд: AudioRecorder через cpal 0.15, Transcriber через whisper-rs 0.14, нативная производительность без Electron-overhead
06Поддержка русского языка из коробки — Whisper хорошо понимает русскую речь даже на маленьких моделях
07Минималистичный UI на React 19 + Vite: окно 480×360 без декораций, AlwaysOnTop, градиент с реакцией на статус

4.

размера модели

44.1.

кГц захвата аудио

480×360.

размер окна

Статус

MVP

Год

2026

Категория

Web App

Стек

React 19TypeScriptVite 7Tauri 2.10Rustwhisper-rscpalhoundWhisper.cppGGML

Теги

Desktop AppTauriRustReactWhisperSpeech-to-TextLocal AImacOSAccessibilityPrivacy

CosVoice (VoiceTranscriber) — кроссплатформенное десктопное приложение для локального распознавания речи и автоматической вставки текста в активное поле ввода. Tauri + React фронтенд с Rust-бэкендом, локальная обработка через Whisper.cpp (GGML-модели OpenAI Whisper), глобальная горячая клавиша Option+Space для быстрого вызова из любого приложения. Никаких облаков и сторонних сервисов — звук и расшифровка остаются на устройстве.

Проблема и контекст

Облачные сервисы распознавания речи (Google Speech-to-Text, Azure Speech, OpenAI Whisper API) удобны, но имеют три серьёзных ограничения для серьёзной работы: они зависят от интернета, требуют отправки аудио на чужой сервер (что критично для конфиденциальных данных и юридических документов), и стоят денег за каждую минуту. Встроенные системные решения (macOS Dictation) часто плохо работают с русским языком и не дают контроля над моделью. CosVoice использует Whisper.cpp — оптимизированный порт OpenAI Whisper на C++ с GGML-моделями — для полностью локальной обработки, с возможностью выбора размера модели (tiny / base / small / medium) под баланс качества и скорости.

Что построено

Главный экран с кнопкой записи и живым индикатором состояния (recording → processing → injecting → result), результат расшифровки с действиями (копировать, вставить, новая запись), панель настроек с выбором размера модели и автовставкой. Под капотом: AudioRecorder на cpal захватывает микрофон 44.1 кГц, складывает в WAV-буфер, Transcriber передаёт буфер в Whisper.cpp через whisper-rs, TextInjector через macOS Accessibility API вставляет распознанный текст в активное поле любого приложения. Глобальная горячая клавиша Option+Space (через tauri-plugin-global-shortcut) делает приложение мгновенно доступным.

Архитектура

Frontend — React 19.1 + TypeScript на Vite 7. Минималистичный дизайн: окно 480×360 без декораций, AlwaysOnTop, градиент indigo-purple, реагирующий на статус. Интерфейс на русском. Backend — Rust + Tauri 2.10: AudioRecorder (`audio.rs`) на cpal 0.15, Transcriber (`transcribe.rs`) на whisper-rs 0.14 с автозагрузкой моделей из HuggingFace, TextInjector (`inject.rs`) через системные API, AppState (`state.rs`) для координации компонентов. Используется hound 3.5 для работы с WAV-файлами. Tauri-плагины: global-shortcut, dialog, opener, tray-icon.

Ключевые особенности

  • Полностью локальная обработка — звук и расшифровка не покидают устройства
  • Поддержка русского языка — Whisper хорошо понимает русскую речь даже на маленьких моделях
  • Четыре размера модели (tiny / base / small / medium) — пользователь выбирает баланс качества и скорости
  • Глобальная горячая клавиша Option+Space — мгновенный доступ из любого приложения
  • Автовставка распознанного текста в активное поле через macOS Accessibility API
  • Системный трей и сворачивание окна — приложение не мешает рабочему процессу
  • Поддержка транскрипции аудиофайлов через ffmpeg (опционально)

Статус

Версия 0.1.0, ранняя alpha (Initial commit 2026-05-11). Платформа — macOS 12.0+. Активная разработка через GitHub Project #23. Доменная область чёткая, концепция работает, базовый UX готов, дальнейший roadmap — расширение поддерживаемых платформ (Linux, Windows), VAD (Voice Activity Detection) для автоостановки записи, словарь технических терминов, инкрементальная транскрипция в реальном времени.

Когда ты диктуешь в облако, ты диктуешь не только себе.
Открыть проект

Поделиться

следующая
CosTube