Agent Toast — Claude CodeのイベントをWindows通知に
(github.com/hopoduck)Claude Codeで長時間の作業を走らせたまま別の作業をしていると、完了したかどうかを何度もターミナルで確認してしまいます。その不便さを解消するために作ったオープンソースのWindowsアプリを公開します。
GitHub: https://github.com/hopoduck/agent-toast
どんなアプリですか?
Claude Code(またはCodex CLI)のHookシステムを利用し、作業完了・権限リクエスト・入力待ちのようなイベントが発生すると、Windowsのトースト通知を表示します。
スマート通知 — 通知を一度クリックするだけで該当のターミナルウィンドウがすぐにアクティブになり、ターミナルに戻ると通知は自動で消えます。すでにターミナルにフォーカスがある場合は通知自体を表示しないため、作業の流れを妨げません。
主な機能
- スマート通知: 通知クリック → ターミナルを即座にアクティブ化、ターミナル復帰時に通知を自動消去、すでにフォーカス中なら通知を省略
- 15種類のHookイベント: Stop, PermissionRequest, SessionStart/End, SubagentStart/Stop, Notification, PreToolUse/PostToolUse, PreCompact など
- マルチモニター & 4隅配置: DPIスケーリング対応
- Codex CLI対応: OpenAI Codex CLIのイベントも通知として受信
- アプリ内自動アップデート: GitHub Releasesベース
- 日本語 / 英語対応
インストール
Releasesページから、インストーラー(Agent.Toast_*_x64-setup.exe)またはポータブル実行ファイル(agent-toast.exe)を直接ダウンロードできます。
使い方
- アプリ起動後、設定画面で使いたいHookイベントを有効にして保存
~/.claude/settings.jsonにHookが自動登録される- Claude Codeのターミナルで
/hooksを入力して更新すれば適用完了
技術スタック
Rust + Tauri v2 + Vue 3 + TypeScript(MITライセンス)
動作の仕組み
- Named Pipeで単一インスタンスを管理 — 初回起動時にアプリを立ち上げ、以後のCLI呼び出しはパイプへJSONを送信してすぐ終了
- Win32 APIでフォーカスの変化をリアルタイムに検知し、通知の自動消去を処理
- プロセスツリー探索により
--pidからのターミナルウィンドウ検出精度を改善
Claude Codeなどのエージェント利用者の役に立てばうれしいです。フィードバックはGitHub Issuesへ気軽にお寄せください!
2件のコメント
HooksでWarcraft IIIのサウンドをマッピングしてあります。
"Jobs done"
Jobs done、面白いですね(笑)。もし Agent Toast も一緒に使うと、通知をクリックしてターミナルへ即座に切り替えられますし、すでにターミナルを見ているときは通知を出さないようにもしてくれるので、Warcraft のサウンドと組み合わせるとさらに便利だと思います! サウンドのカスタマイズも追加されると良さそうですね。