Ваше диктування не має просто зникати

Диктуєте довгу думку, вставлення зривається, текст зникає. Чому застосунки гублять слова і яку локальну, лише текстову історію зберігає Keebye.

Teodor Deleanu10 липня 2026 р.Читання: 6 хв

Дев’яносто секунд саме-того-що-я-мав-на-увазі — повний опис PR, обережна відповідь клієнтові — а тоді якась дрібниця йде не так у момент вставлення. Цільове вікно не мало фокуса. Вставлення не спрацювало. Застосунок гикнув. І тексту просто немає. Не збережено десь. Не лежить у буфері. Немає. Такий режим збою має будь-який конвеєр диктування, що трактує вставлення як єдину копію транскрипта.

Далі настає специфічна, непропорційна злість — і, гадаю, вона виправдана. Річ не у втрачених секундах. Річ у тім, що ви зробили роботу: склали думку, добре її сказали, машина навіть правильно її транскрибувала — а інструмент знищив результат через проблему з доставкою. Другий дубль ніколи не такий хороший, як перший. Кожен, хто передиктовував абзац із пам’яті, знає, що ви його не відтворюєте; ви виробляєте його пласкішого родича.

Я й сам втрачав диктування в такий спосіб, в інших інструментах, до появи Keebye. Це одна з тих маленьких аварійних ситуацій, навколо яких будувався застосунок.

Чому надиктований текст просто зникає?

Це не вада одного постачальника. Це проєктне рішення рівня категорії, і варто зрозуміти, чому категорія його ухвалила.

Застосунок диктування — це труба, а не редактор. З одного кінця заходить мовлення; з іншого виходить текст — у чуже вікно: термінал, поле Slack, документ Google. Власного документа немає, і саме це робить такі інструменти невидимими та швидкими. Але це означає, що транскрипт часто існує рівно одну мить: вставлення. А вставлення — найкрихкіший крок в усьому конвеєрі. Воно залежить від того, яке вікно має фокус у мілісекунду доставки, від того, чи не гониться за буфером обміну інший застосунок, від настрою дозволів Універсального доступу, від того, чи цільовий застосунок узагалі приймає синтетичне введення. Коли будь-що з цього провалюється, за чистою трубою немає нічого. Вода на підлозі.

Є й принципова причина, чому інструменти соромилися тримати копії: журнал усього, що ви надиктували, чутливий. Ваші диктування — це ваші повідомлення, ваші промпти, ваші напівсформовані рішення. Постачальник, який їх зберігає — особливо будь-де поблизу хмари, — створив собі відповідальність, а простий спосіб її уникнути — не зберігати нічого. Користувачі успадковують цю обережність як ефемерність: найбезпечніше диктування, з погляду постачальника, — те, якого ніколи не існувало.

Я розумію цю логіку. Просто вважаю, що вона оптимізує не ту сторону. Режим збою локальної історії — це файл на вашому власному диску. Режим збою нульового зберігання — це ваша робота, що випаровується, бо вікно втратило фокус.

Що Keebye зберігає і де

Тож Keebye тримає історію, типово ввімкнену, і ось що саме це означає — не більше й не менше.

З увімкненою історією кожне завершене диктування записується в локальну базу SQLite на вашому Mac (rusqlite, режим WAL — для тих, кому цікаво внутрішнє облаштування). Файл живе в теці підтримки застосунку — com.keebye.app/keebye.db — і ніколи не покидає машину. Немає ані синхронізації, ані вивантаження, ані облікового запису, до якого воно прив’язане. Це файл, на вашому диску, у вашій власності.

Відновлення спроєктовано навколо двох способів, якими ви справді втрачаєте текст. Поширений випадок — вставлення щойно провалилося, секунду тому — має найшвидший шлях: у меню в рядку меню є пункт Copy Last Dictation. Клікніть — і ваше найсвіжіше диктування в буфері обміну; вставте його туди, куди воно мало потрапити, і рухайтеся далі. Рідкісніший випадок — «я щось надиктував у вівторок, і мені треба це повернути» — іде через Dictation History…, вікно з повним списком: із пошуком, з видаленням окремих записів і з очищенням усього, коли ви хочете стерти дошку.

Термін зберігання — 30 днів, застосовується автоматично. Прибирання запускається під час відкриття бази й ще раз після кожного вставлення, тож вікно справді становить 30 днів, а не «приблизно 30 днів, коли в нас дійдуть руки». А якщо ви хочете стару ефемерну поведінку — а декому варто, і я скажу кому, — історія є налаштуванням (history_enabled), і вимкнення означає, що не записується взагалі нічого.

Лише текст. Ніколи звук.

Найбільше мені важить те, чим історія не є. Вона лише текстова. У схемі історії Keebye немає колонки для звуку — не «налаштування зберігання звуку, типово вимкнене», а немає колонки. Самі записи ніколи не зберігаються. Це структурно, за задумом: транскрипт «відповісти Андрієві, що міграція зсувається на тиждень» уже досить чутливий; звук вашого голосу, що це промовляє, з відміткою часу — артефакт іншого порядку, і я не хотів, щоб застосунок був здатний його накопичувати.

Ще один нюанс, що важить більше за свою довжину: якщо ви диктуєте в захищене поле — введення типу пароля, — історія цього не записує. Єдине місце, де хибним є навіть текстовий слід, — це єдине місце, де ми його не тримаємо.

Це та сама постава, що й у решті застосунку — перетворення мовлення на текст працює на пристрої, про що ми писали в контексті диктування власною мовою, — але саме на історії ця постава проходить випробування, бо історія — єдине місце, де Keebye узагалі зберігає ваші слова. Локальна, лише текстова, самовидальна — така форма здалася такою, що заслуговує бути ввімкненою типово.

Чесні обмеження

Розділ чесності, як завжди.

Ви не можете переслухати. Лише текст ріже в обидва боки. Якщо транскрипція була хибною — модель недочула ім’я, покалічила число, — історія вірно зберігає хибний текст, а звук, який міг би вирішити суперечку, зник за задумом. Для більшості випадків відновлення це не має значення: збоєм було вставлення, а не транскрипт. Але якщо вам хотілося історії диктувань як архіву голосових нотаток, це не воно — навмисно.

Тридцять днів — це тридцять днів. Історія — рятувальна сітка, а не архів. Якщо диктування важить довше за місяць, його домівка — той документ, у який ви його надиктували, а не база застосунку. Прибирання не питає.

Лише локально означає лише локально. Ваша історія не ходить за вами між машинами. Диктування, зроблене на настільному Mac, не відновиш із ноутбука. Я подаю це як функцію приватності, і воно нею є — ніщо не синхронізується, бо ніщо не передається, — але я не вдаватиму, що це водночас не обмеження. Це і те, і те. Вам варто знати, чим саме воно є для вас, перш ніж на нього покладатися.

І граничний випадок: якщо ви той, чия модель загроз каже жодного сліду, вимкніть історію. Це одне налаштування, і застосунок цілком його поважає. Увімкнено типово — правильне рішення для більшості користувачів, які радше повернуть собі абзац із минулого вівторка; воно не має бути пасткою для решти.

Робота не повинна мати єдиної точки відмови

Глибша причина існування цієї функції: я веду свій день як паралельні доріжки — агенти будують в одних вікнах, люди чекають в інших, — а голос є каналом, який годує їх усіх. Цей робочий процес — уся передумова керування Claude Code голосом. Канал, який час від часу знищує власний вантаж, — не той канал, на якому будують робочий день. Розробники очікують шляхів відновлення — скасування, журнали, reflog, кошик, — а проте багато потоків диктування не пропонують еквівалента, коли вставлення провалюється.

Якщо ви зважуєте інструменти в цій категорії, наші порівняння чесні й щодо того, у чому сильні інші: Keebye vs Superwhisper і Keebye vs Wispr Flow. А в зниклого тексту є споріднена скарга — перше слово вашого диктування, з’їдене до того, як прокинувся мікрофон, — про неї ми написали в чому застосунки диктування з’їдають ваше перше слово.

Keebye перебуває в ранньому доступі для macOS. Почніть безкоштовний пробний період нижче, надиктуйте абзац, навмисно промахніться повз цільове вікно, а тоді скористайтеся Copy Last Dictation, щоб відновити текст. Хибний фокус усе одно коштує кроку відновлення; він більше не мусить коштувати думки.

Зробіть наступне довге диктування відновлюваним

Почніть безкоштовний пробний період і перевірте Copy Last Dictation, перш ніж довірити голосу довгий опис PR.

Start free trial

Early access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.

Читати далі