スマホ通知(Web Push)
- ① ターミナル側の設定(mulmoterminal)
- ② スマホ側の設定(mulmoserver PWA)
- 通知だけじゃない:スマホから見る・返す
- 通知が来る条件
- どの瞬間に飛ぶか・どう選ぶか
- 来ないときは
タスクが終わったとき、または許可・質問で止まったとき、スマホに通知が届きます。 長いタスクを投げて席を立っても、手が空いたら呼び戻してもらえます。設定は「ターミナル側」と「スマホ側」の 2 か所です。

- 通知は 2 種類:ターンの完了と、入力待ち(許可プロンプト・質問)。
- 見ているペインのターンでも送られます(要対応の通知音が「見ているペインでは鳴らない」のと違い、Push は端末が手元にない前提で常に飛びます)。除外されるのは内部のバックグラウンドワーカーだけ。
- 送信はサーバー側で行い、宛先の管理は別サービス(
mulmoserver)が担当します。RemoteHost に接続している間だけ送信されます。
① ターミナル側の設定(mulmoterminal)
- ツールバーの RemoteHost(
phonelinkアイコン)を開き、Connect(Google サインイン)を クリックします。Google のサインインポップアップが開くので、スマホと同じ Google アカウントで サインインします。 - Settings → Web Push notifications の 「Notify my devices when a task finishes」 を ON にします(既定は OFF)。
⚠️ Settings にある Google account(カレンダー連携用)とは別物です。 通知に使うのは RemoteHost パネルの Connect のほうです。
これで、バックグラウンドのタスクが完了するたびにスマホへ通知が飛びます。
💡 ログインはサーバーを再起動しても維持されます(0.9.3〜。セッションをブラウザ側に保持し、 再読込・タブ復帰・ネットワーク復旧のいずれでも自動再接続します)。
② スマホ側の設定(mulmoserver PWA)
スマホ側の入口はどちらも同じ https://mulmoserver.web.app です (RemoteHost のパネルに表示される QR コードをスマホのカメラで読み取ってもOK)。 ターミナル側と同じ Google アカウントでサインインするのがポイント。 ただし iPhone と Android で手順が違います。
iPhone / iPad(iOS 16.4 以降)
iOS では、ホーム画面に追加した PWA からしか Web Push を受け取れません。 Safari のタブで開いたままでは有効化できないので、先にインストールします。
- Safari で https://mulmoserver.web.app を開きます。
- 共有ボタン →「ホーム画面に追加」で PWA としてインストールします。
- ホーム画面のアイコンから起動し、ターミナル側と同じ Google アカウントでサインインします。
- 「通知を有効にする」をタップし、通知を許可します(この端末が通知先として登録されます)。
Android
Android(Chrome)は、ブラウザで開いたまま有効化できます。
- Chrome で https://mulmoserver.web.app を開きます。
- ターミナル側と同じ Google アカウントでサインインします。
- 「通知を有効にする」をタップし、通知を許可します。
- (推奨)メニューの「ホーム画面に追加」で PWA としてインストールしておくと、 起動も通知の受け取りもより安定します。
通知だけじゃない:スマホから見る・返す
mulmoserver PWA は通知の受け口であるだけでなく、リモコンでもあります。 「通知に呼ばれる → スマホで画面を確認 → 一言返して続行」までが外出先で完結します。 セッションの dir で新しいターミナルを起動したり、よく送る文をワンタップのチップとして 登録したりもできます。
→ スマホから使う にまとめてあります。

通知が来る条件
次の4つがすべて満たされたときです。
- ✅ ターミナル側で RemoteHost 接続中
- ✅ 「Notify my devices」トグルが ON
- ✅ スマホ側で通知を有効化した端末が 1 台以上登録済み
- ✅ その瞬間があなたが選んだ種類であること — 下記
今見ているペインでも届きます(スマホは手元にないので)。内部ワーカー(隠しセッション・翻訳ワーカー)は 対象外です。
どの瞬間に飛ぶか・どう選ぶか
Push が飛ぶ瞬間は2種類あり、Settings → Web Push notifications にそれぞれのチェックボックスが あります。片方を外せばその瞬間だけ通知が止まり、もう片方は生きたままです。
| 設定 | 飛ぶタイミング | 見た目 | 頻度 |
|---|---|---|---|
| Turn finished | エージェントが返答を終え、出力が未読 | ✅ <dir> — 返答の冒頭 | ターンごとに1回 |
| Waiting for you | エージェントが質問して止まった — 許可プロンプトや確認 | ❓ <dir> — 何を聞かれているか | プロンプトごとに1回 |
「頻繁に来る」と感じるのは Waiting for you です。 エージェントが止まって聞くたびに飛ぶので、 許可を何度も求める長いタスクでは、そのたびに通知が来ます。1件ずつは正しい(実際にセッションは 止まっている)のですが、完了だけ知りたい場合はこれを外して Turn finished だけ残してください。
master トグルを OFF にすれば全部止まりますが、選んだ種類は失われません。
将来のバージョンで種類が追加されても、チェックを入れるまでは OFF のままです。アップデートで 頼んでいない通知が勝手に鳴り出すことはありません。
config.json では
チェックボックスは pushEnabled と pushKinds に書き込まれます。
{ "pushEnabled": true, "pushKinds": ["finished"] }
pushKinds: [] は「どの種類も対象外」=トグルを OFF にしたのと同じ静けさですが、選択は何も残りません。 pushKinds を書かなければ両方が対象になります(この設定ができる前に書かれた config がこれです)。
来ないときは
- RemoteHost が未接続になっていませんか? → もう一度 Connect。
- スマホ側で通知が有効化されていない/端末未登録。 → PWA で有効化。
- iPhone で有効化できない。 → Safari のタブからではなく、ホーム画面に追加したアイコンから起動して有効化してください(iOS の仕様)。
- 通知の許可をブロックしてしまった。 → ブラウザのサイト設定(アドレスバー左のアイコン →「通知」)で「許可」に変更します。
- ターミナルとスマホで別の Google アカウントになっていませんか? → 両方とも同じアカウントでサインインし直してください。
- 同じ通知が 2 回届く場合は、スマホに古い登録が残っている可能性があります(mulmoserver 側で登録し直すと解消します)。