音声入力が、ただ消えてしまってはいけない
長い考えを音声入力したのに、挿入が失敗して、テキストがそのまま消える。音声入力アプリが言葉を失う理由と、Keebye が保持するローカルでテキストのみの履歴。
思ったとおりに言えた 90 秒 — PR の説明ひとつぶん、クライアントへの慎重な返信ひとつぶん — そして挿入の瞬間に、何か小さなことがうまくいかない。対象のウィンドウにフォーカスがなかった。ペーストが通らなかった。アプリがしゃっくりをした。そしてテキストはただ 消えます。どこかに保存されているのでもなく、バッファに残っているのでもなく、消えます。文字起こしの唯一の写しが挿入だと考えている音声入力のパイプラインは、どれもこの失敗モードを持っています。
そのあとに来るのは、具体的で、不釣り合いなほどの怒りです。そしてそれは正当だと思います。失われた秒数が問題なのではありません。問題は、自分は仕事をしたということです。考えをまとめ、うまく言い、機械は正しく文字起こしまでした。そのうえで、道具が配達の問題を理由に結果を破壊した。2 回目のテイクが 1 回目より良かったことは一度もありません。段落を記憶から音声入力し直したことのある人なら、それを再現できないことを知っています。作れるのは、平板な従兄弟です。
私自身、Keebye が存在する前に、他のツールでこうやって音声入力を失ってきました。このアプリが取り囲むように作られた、小さな非常事態のひとつです。
なぜ音声入力したテキストは、ただ消えるのか
これは特定のベンダーのバグではありません。カテゴリレベルの設計上の判断であり、なぜこのカテゴリがそれを選んだのかを理解する価値があります。
音声入力アプリはパイプであって、エディタではありません。片方の端から発話が入り、もう片方の端からテキストが、他人のウィンドウへ出ていきます — ターミナル、Slack の入力欄、Google ドキュメント。自分のドキュメントを持たないこと、それこそがこの種のツールを目に見えず、速いものにしています。けれどもそれは、文字起こしがしばしばたったひとつの瞬間 — 挿入 — にだけ存在することを意味します。そして挿入は、パイプライン全体で最も脆い一歩です。配達のミリ秒にどのウィンドウがフォーカスを持っているかに依存し、クリップボードが別のアプリと競合しないことに依存し、アクセシビリティの権限の機嫌に依存し、対象のアプリケーションがそもそも合成された入力を受け入れることに依存します。そのどれかが失敗したとき、純粋なパイプの背後には何もありません。水は床の上です。
ツールが写しを持つことに及び腰だった、筋の通った理由もあります。音声入力したものすべてのログは、機微だからです。あなたの音声入力は、あなたのメッセージであり、プロンプトであり、まだ形になっていない判断です。それを保存するベンダーは — とくにクラウドの近くのどこかであれば — 責任を生み出したことになり、その責任を避ける簡単な方法は、何も持たないことです。ユーザーはその慎重さを、消えてなくなる性質として受け継ぎます。ベンダーの視点から最も安全な音声入力とは、存在しなかった音声入力です。
その論理は理解できます。ただ、間違った側に最適化していると思うのです。ローカルの履歴を持つことの失敗モードは、自分のディスク上のファイル 1 個です。何も持たないことの失敗モードは、ウィンドウがフォーカスを失ったせいで自分の仕事が蒸発することです。
Keebye が何を、どこに保持するのか
そこで Keebye は履歴を保持します。デフォルトで有効で、その意味するところを正確に書きます。それ以上でも、以下でもありません。
履歴を有効にすると、完了した音声入力はすべて、Mac 上のローカルな SQLite データベースに書き込まれます(配管が気になる人のために言えば、rusqlite、WAL モードです)。ファイルはアプリケーションサポートのディレクトリ — com.keebye.app/keebye.db — にあり、マシンを出ることはありません。同期もアップロードもなく、紐づくアカウントもありません。自分のディスク上の、自分が持ち主のファイルです。
復旧は、実際にテキストを失うふた通りの状況を軸に設計されています。よくある方 — 1 秒前に挿入が失敗しただけ — には最も速い経路があります。トレイのメニューに Copy Last Dictation という項目があります。クリックすれば直近の音声入力がクリップボードに入るので、本来入るはずだった場所にペーストして、先に進めます。まれな方 —「火曜日に音声入力したものを取り戻したい」— は Dictation History… を通ります。全件のリストを表示するウィンドウで、検索でき、エントリごとの削除と、全部まっさらにしたいときのための一括消去があります。
保持期間は 30 日で、自動的に適用されます。プルーニングはデータベースを開いたときと、挿入のたびに走るので、この期間は本当に 30 日であって、「だいたい 30 日、手が空いたときに」ではありません。そして、昔ながらの消えてなくなる挙動が欲しいなら — そうすべき人もいますし、それが誰かはこのあと書きます — 履歴は設定(history_enabled)であり、オフにすればいっさい書き込まれません。
テキストだけ。音声は決して。
私が一番気にしているのは、この履歴が何で ない かです。テキストだけです。Keebye の履歴のスキーマには音声のカラムがありません — 音声保持の設定がデフォルトでオフになっているのではなく、カラムがないのです。録音そのものは、決して保存されません。これは設計上の構造です。「マイグレーションが 1 週間遅れると Andrei に返信して」という文字起こしでも十分に機微ですが、それを言っている自分の声が、時刻つきで残るというのは別の次元の産物であり、アプリがそれを溜め込めるようにはしたくありませんでした。
文字数以上に効いてくる、もうひとつの細部があります。セキュアな入力欄 — パスワード形式の入力 — に音声入力した場合、履歴には記録されません。テキストの痕跡ですら間違いになる唯一の場所が、私たちが痕跡を残さない唯一の場所です。
これはアプリの他の部分と同じ姿勢です — 音声認識はオンデバイスで動きます。自分の言語で音声入力するという文脈で書いたとおりです — けれども、その姿勢が試されるのは履歴です。履歴は、Keebye があなたの言葉を永続化する唯一の場所だからです。ローカルで、テキストのみで、自分から消えていく。それが、デフォルトで有効にするに値する形だと感じられました。
正直な限界
いつもどおり、正直さの節です。
聞き直すことはできません。 テキストのみは両刃です。文字起こしが間違っていたら — モデルが名前を聞き違えた、数字を崩した — 履歴はその間違ったテキストを忠実に保ち、決着をつけられたはずの音声は設計上すでにありません。復旧のケースのほとんどではこれは問題になりません。失敗したのは挿入であって、文字起こしではないからです。けれども音声入力の履歴をボイスメモの保管庫として期待していたなら、これは意図的にそれではありません。
30 日は 30 日です。 履歴はセーフティネットであって、アーカイブではありません。1 か月を越えて大事な音声入力があるなら、その住処はアプリのデータベースではなく、それを音声入力した先のドキュメントです。プルーニングは尋ねてくれません。
ローカルのみは、ローカルのみです。 履歴はマシンをまたいでついてきません。デスクトップで音声入力したものを、ノートパソコンから復旧することはできません。私はこれをプライバシーの機能として提示していますし、実際そうです — 何も送信されないから、何も同期されない — けれども、それが同時に制約でもないふりはしません。両方です。頼りにする前に、自分にとってどちらなのかを分かっておくべきです。
そして境界のケース。脅威モデルが 痕跡はいっさい残さない と言う人なら、履歴をオフにしてください。設定ひとつで、アプリはそれを完全に尊重します。デフォルトで有効は、先週の火曜日の段落を取り戻せる方がいいという大多数のユーザーにとって正しい判断ですが、残りの人にとって罠であってはいけません。
仕事に、単一障害点があってはいけない
この機能が存在する、もっと深い理由。私は一日を並列レーンとして回しています — あるウィンドウではエージェントがビルドし、別のウィンドウでは人間が待っている — そして声は、そのすべてに供給するチャンネルです。そのワークフローは Claude Code を声で動かすの前提そのものです。ときどき自分の積み荷を破壊するチャンネルは、一日の仕事を組み立てる相手ではありません。開発者は復旧の経路を期待します — undo、ログ、reflog、ゴミ箱 — それなのに、多くの音声入力のフローは、挿入が失敗したときに同等のものを何も差し出しません。
このカテゴリでツールを比べているなら、私たちの比較は他社の優れているところについても正直です。Keebye vs Superwhisper と Keebye vs Wispr Flow です。そして消えるテキストには兄弟のような苦情があります — マイクが目を覚ます前に音声入力の最初のひと言が食べられる問題で、それについてはなぜ音声入力アプリは最初のひと言を食べてしまうのかに書きました。
Keebye は macOS 向けに早期アクセス中です。下から無料トライアルを始めて、1 段落を音声入力し、わざと対象のウィンドウを外して、それから Copy Last Dictation でテキストを取り戻してください。フォーカスを外せば、やはり復旧のひと手間はかかります。ただ、それが考えそのものを失うコストである必要は、もうありません。
次の長い音声入力を、取り戻せるようにする
無料トライアルを始めて、長い PR の説明を声に託す前に Copy Last Dictation を試してください。
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 ミリ秒のプリロールがそれをどう直すのか。
並列エージェントにプロンプトを音声入力する、レーンごとに
コーディングエージェントを 2 つ 3 つ同時に走らせると、プロンプトそのものがボトルネックになります。いま見ているレーンを離れずに、並列レーンへ指示を届ける音声ワークフロー。
Claude Code を声で動かす:並列レーンのビルド
AI コーディングエージェントは、タイピングをボトルネックに変えました。macOS 上で、並列に走るエージェントのレーンにプロンプト、レビュー、軌道修正を音声入力するための実践的なワークフロー。