UStackUStack
open-typeless icon

open-typeless

open-typelessはmacOSのプッシュトゥトーク音声認識アプリ。Volcano Engineの文字起こしをストリーミングし、カーソル位置に自動挿入します。

open-typeless

open-typelessとは?

open-typelessTrellisフレームワークのショーケースとして構築されたmacOSデスクトップアプリケーションです。プッシュトゥトークのワークフローを提供し、マイクからの音声を録音、Volcano EngineのASRサービスでストリーミング音声認識を行い、現在のフォーカスされたテキストカーソルに認識テキストを挿入します。

このプロジェクトは、ウィンドウを切り替えずに任意のアプリに dictation したいユーザー向けです。また、ホットキーを押している間、現在聴取中状態とリアルタイム文字起こしを表示するフローティングのガラスモルフィズム風オーバーレイも備えています。

主な機能

  • プッシュトゥトークホットキー(押す・保持): 右Optionキーを押して保持すると録音開始、離すと録音終了と自動挿入がトリガーされます。
  • リアルタイムストリーミング文字起こし: Volcano Engine ASRを使用し、部分結果をストリーミングして認識進行に応じてオーバーレイを更新します。
  • 状態と文字起こし用のフローティングオーバーレイ: 「聴取中…」状態とフロストガラス風の文字起こしテキストを表示します。
  • ウィンドウ切り替えなしのカーソル挿入: 現在のカーソル位置に認識テキストを自動挿入し、使用中のアプリでタイピングを継続できます。
  • フォーカスを奪わない: フローティングウィンドウは現在のアプリケーションに留まりながらユーザーのワークフローを中断しません。

open-typelessの使い方

  1. 依存関係をインストール: pnpm installを実行。
  2. 環境変数を設定: .env.example.envにコピーし、Volcano Engineの認証情報を入力。
    • VOLCENGINE_APP_ID
    • VOLCENGINE_ACCESS_TOKEN
    • VOLCENGINE_RESOURCE_ID(リポジトリの例:モデル1.0用volc.bigasr.sauc、モデル2.0用volc.seedasr.sauc(推奨))
  3. アプリを起動: pnpm startを実行。
  4. 初回起動時にmacOS権限を許可:
    • マイク権限(録音用)
    • アクセシビリティ(補助機能)権限(グローバルホットキー処理とテキスト挿入用) 権限付与後、アプリをバックグラウンドで実行したままにします。
  5. Dictationする: テキストフィールドのある任意のアプリで右Optionを押して保持し、話してから離す。アプリがカーソルに認識テキストを挿入します。

ユースケース

  • 任意のエディタでメッセージ dictation: チャット、メールエディタ、ドキュメントフィールドに右Optionを保持してdictation。認識テキストが手動貼り付けなしでカーソルに表示されます。
  • リアルタイムフィードバック付きフォーム入力: 話しながらシステムの認識内容をフローティングオーバーレイで監視し、離してテキストを確定。
  • アプリ横断のクイックメモ取り: 押す・保持キーですばやく音声開始/停止し、アクティブウィンドウにフォーカスを維持。
  • ホットキー/テキスト挿入の問題トラブルシューティング: ホットキーが反応しない/テキストが挿入されない場合、アプリのアクセシビリティ権限が有効か、入力エリアにカーソルがあるかを確認。

FAQ

  • ホットキーが動作しないのはなぜ? システム環境設定 → プライバシーとセキュリティ → アクセシビリティでアプリにアクセシビリティ(補助機能)権限が付与され、許可アプリ一覧に追加されているか確認してください。

  • アプリがテキストを挿入できないのはなぜ? 対象アプリがテキスト入力に対応し、カーソルが入力エリアにあることを確認。アクセシビリティ権限が正しく付与されているかも検証してください。

  • 音声認識に起動遅延はありますか? Volcano Engineサービスへの初回接続でWebSocket接続を確立し、1–2秒かかる場合があります。以降は高速化する可能性があります。

  • ホットキーを変更できますか? リポジトリによると、現在ホットキーは右Optionキー固定。カスタマイズにはsrc/main/services/keyboard/keyboard.service.ts(具体的にはtriggerKey)を修正する必要があります。

代替手段

  • macOS組み込みdictation / 音声入力: 外部ASRプロバイダの認証設定なしでシステムレベルの音声文字起こしを好む場合に便利。統合と挿入動作がmacOS管理のためワークフローが異なります。
  • 手動コピー/ペースト付き汎用音声文字起こしツール: 文字起こしを提供するアダプタですが、通常結果を対象アプリに貼り付ける必要があり、このプロジェクトのカーソル挿入とは異なります。
  • テキスト展開・ホットキーdictationアプリ: ショートカットでテキスト挿入を支援するツール。一部はストリーミングASR+フロストオーバーレイ+プッシュトゥトークではなく編集マクロや文字起こしパイプラインに焦点。
  • 開発者向けその他の音声文字起こし統合: 独自ワークフローを構築する場合、ASR API+グローバルホットキー/クリップボード or アクセシビリティAPIを使用可能。このアプリは実装不要の即用に対し、追加実装を要します。
open-typeless | UStack