Ваше диктування не має просто зникати
Диктуєте довгу думку, вставлення зривається, текст зникає. Чому застосунки гублять слова і яку локальну, лише текстову історію зберігає Keebye.
Дев’яносто секунд саме-того-що-я-мав-на-увазі — повний опис 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 trialEarly access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.
Читати далі
Чому застосунки диктування з’їдають ваше перше слово
Натискаєте гарячу клавішу, говорите, а перше слово обрізано. Чому холодний старт ріже слова й як допомагають теплий мікрофон і 500 мс попереднього запису.
Диктування промптів паралельним агентам, доріжка за доріжкою
Два-три агенти для коду одночасно — і промпт стає вузьким місцем. Голосовий процес, щоб годувати паралельні доріжки, не покидаючи поточну.
Claude Code голосом: розробка паралельними доріжками
ШІ-агенти зробили набір тексту вузьким місцем. Практичний процес диктування промптів, рев’ю та скерувань у паралельних доріжках агентів на macOS.