heavenchenggong/fn-ime-voice-switch

Claude Code用スキル:macOSでFnキーを押すとデフォルトIMEから豆包音声入力に切り替え、離すと元に戻すHammerspoon自動化。

fn-ime-voice-switch とは?

このスキルは、Claude CodeエージェントがmacOS上でFnキーを利用して、入力メソッド(IME)を動的に切り替えるための自動化を提供します。ユーザーがFnキーを押している間は豆包(Doubao)の音声入力モードに即座に切り替わり、キーを離すと自動的にデフォルトのIMEに戻るため、音声入力と通常のキーボード入力をシームレスに使い分けられます。macOSのHammerspoonアプリケーションを介してキーイベントを監視・処理し、OSネイティブのキーバインディングに依存せずに動作するため、システム設定を変更せずに安全に導入できます。主にClaude Code環境での利用を想定していますが、Hammerspoonが動作する任意のmacOS環境にも応用可能で、開発者やパワーユーザーが音声入力機能をワンキーで活用するのに最適です。

対応✓Claude Code~Codex CLI~Cursor
npx skills add heavenchenggong/fn-ime-voice-switch

Installed? Explore more 生産性&コラボレーション skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

fn-ime-voice-switch は何をしますか?

Claude Code用スキル:macOSでFnキーを押すとデフォルトIMEから豆包音声入力に切り替え、離すと元に戻すHammerspoon自動化。

概要

このスキルはHammerspoonを使って、Fnキーを押している間だけアクティブな入力メソッド(IME)を切り替えます。デフォルトIME(例:英字)と豆包音声入力モード(例:中文音声)を素早く行き来できます。

  • Fnキーを押す → 豆包音声入力に切り替え
  • Fnキーを離す → 元のIMEに戻す

必要条件

  • macOS(Hammerspoon対応バージョン)
  • Hammerspoon がインストール済み
  • 豆包(Doubao)音声入力がシステムのIMEとして認識されていること

インストール

  1. ~/.hammerspoon/init.lua(Hammerspoon設定ファイル)に以下の設定を追加します。
-- FnキーでIMEを切り替え(デフォルトIME ↔ 豆包音声入力)
local defaultIME = "com.apple.keylayout.US"  -- デフォルトIME(例:英字)
local doubaoIME  = "com.example.doubao.voice" -- 豆包IME識別子

local fnDown = false

hs.hotkey.bind({}, "f18", function()
    fnDown = true
    hs.keycodes.currentSourceID(doubaoIME)
end, function()
    fnDown = false
    hs.keycodes.currentSourceID(defaultIME)
end)
  1. 豆包音声入力のIME識別子は実際の値を調べて置き換えてください。

    # インストール済みIME一覧を取得
    /usr/bin/plutil -p ~/Library/Preferences/com.apple.HIToolbox.plist \
      | grep "KeyboardLayout Name"
    
  2. Hammerspoonの設定を再読み込みします(メニューバーアイコンをクリック → 「Reload Config」)。

使い方

設定後は、Fnキーを押すだけで自動的にIMEが切り替わります。

  • Fnキーを押し続ける → 豆包音声入力アクティブ
  • Fnキーを離す → デフォルトIMEに戻る

注意事項

  • この設定はHammerspoonに依存するため、Hammerspoonが起動していないと機能しません。
  • Fnキーのイベントは一部のmacOSバージョンで異なる場合があります。必要に応じてキーコードを調整してください。
  • Claude Code内でこのスキルを呼び出すには、適切なエージェント設定が必要です。

ライセンス

MIT

関連スキル