2 ポイント 投稿者 GN⁺ 2026-01-17 | 1件のコメント | WhatsAppで共有
  • Handyは、完全オフラインで動作する無料のオープンソース音声テキスト変換デスクトップアプリで、プライバシー重視の設計を備えている
  • Tauri(Rust + React/TypeScript) ベースで作られており、ショートカットキーを押して話すと音声がそのままテキストフィールドに入力される構造
  • WhisperParakeet V3モデルをサポートし、GPUアクセラレーションまたはCPUベースでローカル音声認識を実行
  • Windows、macOS、Linuxのすべてで動作し、拡張性とフォークのしやすさを重視した構造で開発者の貢献を促進
  • クラウド送信なしでローカル処理されるプライバシー重視の音声入力ツールであり、アクセシビリティとカスタマイズ性が高い

概要

  • Handyは、無料・オープンソース・拡張可能な音声認識アプリケーションで、インターネット接続なしで完全オフライン動作する
  • Tauriフレームワークをベースに、RustバックエンドとReact/TypeScriptフロントエンドを組み合わせている
  • ユーザーはショートカットキーを押して話し、手を離すとWhisperまたはParakeet V3モデルが音声をテキストに変換して現在のアプリに貼り付ける
  • すべての音声データはローカルで処理されるため、個人情報漏えいのリスクがない

Handyの哲学

  • 無料: アクセシビリティツールは誰でも使えるべき
  • オープンソース: 誰でも機能を拡張し改善できる
  • プライバシー保証: 音声データはクラウドに送信されない
  • シンプルさ: 1つの目的、つまり音声をテキストに変換する機能に集中
  • 目標は「最も完璧な」アプリではなく、「最もフォークしやすい」アプリを作ること

動作方式

  • ユーザーはショートカットキーで録音を開始・停止するか、プッシュツートークモードを使える
  • Silero VADで無音区間をフィルタリングし、WhisperまたはParakeet V3モデルで音声を変換
    • Whisperモデル: Small、Medium、Turbo、Largeバージョンを提供、GPUアクセラレーション対応
    • Parakeet V3: CPU最適化、自動言語検出機能を含む
  • 変換されたテキストは、使用中のアプリケーションの入力欄に自動挿入される
  • Windows、macOS、Linuxをすべてサポート

アーキテクチャ

  • フロントエンド: React + TypeScript + Tailwind CSS
  • バックエンド: Rustベースで、オーディオ処理と機械学習推論を担当
  • 主要ライブラリ
    • whisper-rs: Whisperモデルのローカル音声認識
    • transcription-rs: ParakeetモデルのCPU認識
    • cpal: オーディオ入出力
    • vad-rs: 音声アクティビティ検出
    • rdev: グローバルショートカットとシステムイベント処理
    • rubato: オーディオリサンプリング
  • デバッグモード: Cmd+Shift+D(macOS) または Ctrl+Shift+D(Windows/Linux) でアクセス可能

既知の問題と制限事項

  • Whisperモデルのクラッシュ: 一部のWindows/Linux環境でモデルがクラッシュする問題がある
  • Waylandサポートの制限: LinuxのWayland環境では wtype または dotool のインストールが必要
  • テキスト入力ツール
    • X11: xdotool
    • Wayland: wtype または dotool
    • ツール未インストール時は enigo で代替されるが、互換性に制限がある
  • Linuxオーバーレイ無効化のデフォルト設定: フォーカス競合を防ぐため、デフォルトでオフになっている

システム要件

  • Whisperモデル向け
    • macOS: MシリーズまたはIntel Mac
    • Windows/Linux: Intel、AMD、NVIDIA GPU (Ubuntu 22.04/24.04推奨)
  • Parakeet V3モデル向け
    • CPU専用、Intel Skylake(第6世代)以降を推奨
    • 中級クラスのハードウェアでリアルタイム比約5倍の速度
    • 自動言語検出機能を含む

開発ロードマップ

  • 進行中の機能
    • デバッグログファイルの追加
    • macOSショートカット改善 (Globeキー対応、グローバルショートカット処理の書き直し)
    • 任意の分析機能: 匿名の利用データ収集、明示的な同意ベース
    • 設定システムのリファクタリングと抽象化の改善
    • Tauriコマンド構造の整理と型安全性の向上

トラブルシューティングと手動モデルインストール

  • ネットワーク制限環境では、モデルを手動でダウンロードおよびインストールできる
  • アプリデータディレクトリ内に models フォルダを作成し、モデルファイルを配置
    • Whisperモデル: .bin ファイルを直接コピー
    • Parakeetモデル: .tar.gz を展開後、指定フォルダ名を維持
  • インストール後にアプリを再起動すると、モデルを自動認識

貢献方法

  • GitHub Issueを確認後、フォークしてブランチを作成
  • 対象プラットフォームで十分にテストした後、Pull Requestを提出
  • メール(contact@handy.computer) または Discord を通じてコミュニティに参加可能
  • 目標は、シンプルでよく構造化されたコードベースを通じてコミュニティが発展させられる土台を提供すること

関連プロジェクトとライセンス

  • Handy CLI: Pythonベースのコマンドライン版
  • handy.computer: 公式ウェブサイトとデモを提供
  • MITライセンスで配布
  • Whisper(OpenAI)SileroTauri などのオープンソースプロジェクトに基づく

引用文

  • Handyは完璧だからではなく、あなたが完璧にできるから、音声認識ツール探しを終えられる」

1件のコメント

 
GN⁺ 2026-01-17
Hacker Newsのコメント
  • いろいろなSTTアプリを使ってみたが、結局 VoiceInk(ローカル、買い切り)に落ち着いた
    Parakeet V3 と組み合わせるとほぼ即時に反応し、精度も十分高い
    自分はCLIエージェントに話しかけて、「私の発話をどう理解したか教えて」と頼むルーチンをよく使っている
    こうすると認識確認にもなるし、ある種の仕様書の役割も果たす
    最近は Handy + Parakeet v3 の組み合わせも試したが、とてもよく動くので数日間はこれで使ってみる予定
    Cmd‑Shift‑D で「debug」UIを開くと、後処理(post‑processing)や空白追加のような追加オプションも見られる
    • こうしたモデルのうち1つが プログラミング特化 だといいのにと思う
      「cd ~/projects」や「git push --force」のようなコマンドを声で入力したい
  • 私は ジストニア(dystonia) があり、腕がこわばるとキーボードを打てない
    そのため SuperWhisper のようなTTSアプリにはとても助けられてきた
    Handyにも同じような体験を期待している
    ただ、次の段階に進むには、単に音声をテキストに変換するだけでなく 文脈ベースの拡張 が必要だと思う
    たとえばIDEの中でコードを話したら、実際のコードが生成されるような形だ
    結局はTTSとコンピュータ操作を組み合わせる方向になる
    • 私は ultraplan というCLIツールを作った
      ローカルのWhisperで音声を記録し、スクリーンショットやクリップボード内容などを タイムライン形式で保存 する
      その後、Claude Code のようなエージェントがこのタイムラインを読んで作業を引き継ぐ
      「marco」と言うとスクリーンショットを撮るなど、ハンズフリー操作 も可能
      望む人がいればGitHubに整理して公開できる
    • その意見には共感する。だから Handy を オープンソースとして公開 した
      小さなローカルモデル(moondream、qwen など)を使って、コンピュータの文脈を把握しようとする実験もしている
      以前、指を骨折したときにショートカットをHandyに割り当てて、簡単な文脈制御を実装してみた
    • 「音声でコーディングする」という発想は、LLM以前から多く研究されていた
      たとえば Using Voice to Code Faster than Keyboard のような2013年の事例がある
      最近の研究では この論文 もある
    • 言っていた機能はすでに実現可能だ
      STTの出力をLLMに入力すれば、意図を理解して コマンドセット を生成できる
      CLIでは音声コマンドをそのままシェルコマンドに変換するのは簡単だ
      GUIでは画面状態を把握する必要があるので少し複雑になる
      macOSの MacWhisper は書き起こしたテキストをOpenAI互換エンドポイントへ送れる
  • いくつかの 音声文字起こしアプリ を使った簡単な感想
    Superwhisper は有料だが生涯サブスクオプションがあり、機能も多い。個人開発者が保守しているので、ときどきバグがある
    Hex は最も軽量でクリーンな無料オプション
    Fluid Voice には、話している最中にリアルタイムでテキストを表示するユニークな機能がある
    Handy はピンク色のUIがかわいく、履歴ウィンドウが気に入っている。クリップボード復元設定はやや独特
    いくつものアプリを入れ替えてインストールしていたら、多少競合が起きた
    NvidiaがParakeetをオープンソース化 したおかげで、どれも非常に高速だ
    私はリアルタイム文字起こしストリーミング機能が好みだ。低品質でもまず即座に見えて、後から高品質版に置き換わる方式がよい
  • 数週間STTアプリを探していて Handy を見つけた
    たいていは有料かサブスク型だったので自分で作ろうかとも考えたが、Handy は 高速でシンプルで邪魔にならない
    しかも継続的に更新されていて本当に満足している
    後処理(post‑processing)機能も良さそうだ
  • Wispr Flow を使っているが、乗り換えるには頻繁に誤認識される単語(会社名、人名、ライブラリ名など)のための ユーザー辞書機能 が必要
    • 「Custom Words」という機能があるので、それのことを言っているのだと思う。まだきちんとは試せていない
    • 関連 PRはまもなくマージ予定 なので、先にビルドして使うこともできる
    • 一部のモデルは単語ごとの 確信度(confidence) を表示する
      手動で単語を追加するのもよいが、不確かな単語を示してくれれば補完しやすそうだ
  • 注意点がある
    デフォルトのショートカットは Ctrl+Space だが、キーを離した瞬間に文字起こしが挿入される
    このとき Ctrl がまだ押されたままだと、書き起こされたテキストが Ctrl文字として扱われる
    テスト環境は Linux x64、X11、Emacs だった
  • Parakeet v3 と一緒に Handy を使っているが、本当に素晴らしい
    Monologue、Superwhisper、Aqua も使ってみたが、Handy は ローカル実行 でサブスク料金もない
    強くおすすめする
  • OpenWhispr と比較した人がいるか気になる
    説明を見る限り似ているように見える。Handy は2025年6月に最初のリリース、OpenWhispr は1か月後に公開された
    Handy は GitHub Star が11k、OpenWhispr は730ほど
    • 両方使ったが、Handy は macOSアプリとしてそのままインストール できるのでずっと簡単だった
      当時のOpenWhisprにはParakeetモデルがなく、UIも滑らかではなかった
      Handy は ミニマルなUI のおかげで直感的に使える
      高度な機能は足りないが、2か月使っていて他のSTTアプリを探すつもりはない
  • 私の MacBook M1 Air では Handy が非常に速く、macOS標準のSTTより正確だ
    設定も適度にシンプルで使いやすい
    「discharging the model」オプションが何なのか気になったが、RAMやCPUには影響しないように見える
    • モデルを RAMに常駐 させて高速にアクセスできるようにする機能だ
      アンロードするとメモリから外れるので、起動速度が遅くなる
  • Parakeet V3モデル は本当に素晴らしい