スマホ・ブラウザ通知(Web Push)¶
StockClaw は、スマホとサインインしたあらゆるブラウザに対してシステムレベルの通知を送信できます——タブを開いていなくても届きます。内容は Telegram ダイジェストと同じで、届くタイミングも同じです。通知をクリックするとダッシュボードが開き、1 件のシグナルについての通知ならそのシグナルへ直接移動します。
Telegram は不要です。プッシュは単独で使えます。Telegram を連携していない場合は、以下のデフォルトが適用されます。
受け取る内容¶
スマホ・ブラウザ通知は Telegram ダイジェストとまったく同じです。設定 → アラートのレベルと頻度 の内容が両方に適用されます:
- レベル。 デフォルトは FLASH と ALERT。NOTE と FYI はオンにした場合のみ。
- 頻度。 シグナルは プッシュ頻度 に合わせてまとめて送られます(最短 30 分ごと、最長 1 日 1 回)。FLASH も同じで、即時ではなく次のダイジェストと一緒に届きます。
- サイレント時間。 設定 → サイレント時間 をオンにすると、あなたのタイムゾーンでの開始から終了までの間、スマホにも Telegram にも何も送られません(FLASH も同じ)。通知は失われず、保留分はサイレント時間の終了後、次のダイジェストでまとめて届きます。タイムゾーンは初めて設定を開いたときに端末から取得され、設定で変更できます。サイレント時間中の Market Wire アラートも保留され、終了後に送られます(新しいもの最大 10 件)。
- ウォッチリストの絞り込み。 ウォッチリストの銘柄への影響度が 0.60 以上のシグナルのみ。
- 無料版。 FLASH と ALERT のみ、最短 30 分ごとで、サイレント時間はありません。レベル、頻度、サイレント時間の設定はロックされた状態で表示されます。料金はいくらですか? をご覧ください。
- 言語。 アプリの表示言語で届きます。どの端末でもアプリに表示されている言語です(設定 → 表示)。中国語は中国語の要約、英語は英語のみで、英語の要約がないシグナルは「詳細はアプリで」という 1 行になります。日本語と韓国語はタイトルとボタンが翻訳され、要約は英語です。
ダイジェストごとに、シグナル 1 件ずつではなくレベルごとに 1 件の通知を送ります。例: FLASH · NVDA, AAPL、3 ALERT signals · NVDA, TSLA, AMD。シグナル 1 件の通知はそのシグナルへディープリンクし、複数件の通知はダッシュボードを開きます。
Market Wire。 影響度 0.80 以上の市場全体のイベントも、通知をオンにして FLASH レベルを有効にしている全員にプッシュされます。
通知はパイプラインがすでにスコアリングした市場イベントを説明するもので、投資助言ではありません。
対応環境¶
- デスクトップ: macOS の通知センター、Windows のアクションセンター、Linux DE の通知。FLASH バナーは dismiss されるまでスティッキーのまま、ALERT は OS デフォルトで消えます。
- Android: ロックスクリーンバナー + 通知シェードの持続エントリ。
- iOS Safari: StockClaw を PWA としてインストール した後のみ——共有メニューから「ホーム画面に追加」、iOS 16.4 以降。標準の Safari タブは Web Push をサポートしません(Apple のルール)。
- Android アプリ(Google Play、現在テスト中): 有効化の手順はブラウザと同じで、Android がシステムの通知許可プロンプトを表示します。
バナーをクリック:
- すでに StockClaw タブが開いていれば、そのタブにフォーカスしてそのシグナルへナビゲート(複数シグナルの通知ならダッシュボードへ)。
- そうでなければ、そこで新しいタブを開く。
シグナル 1 件の通知では、ダッシュボードがそのシグナルカードへスクロールし、アクセントボーダーを約 2 秒フラッシュするので見つけやすくなります。
有効化¶
入口は 2 つあります。
ダッシュボードから。 サインインすると このスマホでアラートを受け取りますか? というカードが表示されます。オンにする をタップし、続いて表示される許可プロンプトで許可してください(Android 13 以降はシステムのプロンプト)。今はしない を選ぶとカードは 14 日間表示されません。
設定から。 設定 → スマホ・ブラウザ通知 → 有効化。フロー:
- ブラウザ(または Android)がネイティブの許可プロンプトを表示——Allow を選択。
- StockClaw がこの端末のプッシュエンドポイントをバックエンドに登録。
- ボタンが 無効化 に反転。
サインインしたブラウザごとに個別に購読されます——スマホもラップトップも両方受信可能、または独立に片方だけも可能です。1 つのデバイスで購読解除しても他方に影響しません。
テスト送信¶
端末の購読後、設定 → スマホ・ブラウザ通知 → テスト送信 でテスト通知を自分の端末に送り、この端末で実際に受信できるか確認できます。ボタンには 30 秒のクールダウンがあります。
無効化 / 取り消し¶
- StockClaw 内: 設定 → スマホ・ブラウザ通知 → 無効化。ワンクリック。そのブラウザで購読解除し、バックエンドに行のプルーニングを伝えます。
- ブラウザ全体: Chrome(または同等)のサイト権限 → StockClaw の通知を取り消し。サーバー側の購読行は次の配信試行時にプルーニングされます(プッシュサービスからの 404/410)。
iOS PWA インストール¶
iPhone / iPad で Web Push を受信するには:
- Safari で StockClaw を開く(iOS の Chrome はカウントされません——WebKit を使用しますが PWA 機能が少ない)。
- 共有 アイコン → ホーム画面に追加 をタップ。
- ホーム画面アイコンから StockClaw を起動(Safari から起動しない)。これでスタンドアロン PWA モードでアプリが起動します。
- 設定 → スマホ・ブラウザ通知 → 有効化 へ。iOS が許可を求めます。
- アプリを閉じる。通知はロックスクリーンに届きます。
プライバシー¶
ペイロード内容は、VAPID と購読独自の P-256 キーを使ってバックエンドとブラウザ間でエンドツーエンド暗号化されます——中間のプッシュリレー(Apple、Google FCM、Mozilla autopush)はペイロードを読むことができず、ルーティングするだけです。購読(エンドポイント URL、公開鍵、ユーザーエージェント)は、他のすべてのテーブルと同じロウレベルセキュリティで push_subscriptions 行に保存します。他人のブラウザがあなたのシグナルを受信することはできません。
トラブルシューティング¶
「有効化」ボタンがグレーアウトして「非対応」と表示される:
- ブラウザに
PushManagerがありません(非常に古い Safari、古い Firefox)。ブラウザをアップグレードしてください。
「有効化」ボタンが「ブラウザでブロック済み」と表示される:
- 以前に許可プロンプトを拒否し、ブラウザが覚えています。URL バーの錠アイコン → 通知を「確認」にリセットしてから再読み込み。
購読したが通知が来ない:
- Celery ワーカーが動作している必要があります(パイプライン書き込み + 配信はそこで起きます)。
- 設定 → アラートのレベルと頻度 のレベルと頻度を確認してください。通知は同じダイジェストに従うので、頻度が 4 時間ごとならその間は何も届きません。NOTE/FYI はオンにした場合のみプッシュされます。ウォッチリスト銘柄への影響度が 0.60 未満のシグナルはダッシュボードのみです。
- テスト送信 を押してください。テストが届けば配信は正常で、前回のダイジェスト以降に条件を満たすシグナルがまだないだけです。
- その端末で StockClaw を一度開いてください。アプリは起動のたびにブラウザの現在の購読をバックエンドに再登録し、設定画面はバックエンドがその端末の購読を実際に保持している場合にのみ Disable と表示します。ブラウザ(特に iOS のホーム画面アプリ)は購読を時々更新します。2026-09 より前は、購読が更新されたりサーバー側で削除されたりしても、ボタンが Disable のまま何も届かないことがありました。購読済みのはずの端末で設定画面が Enable と表示されている場合は、クリックして再登録してください。
- サインインページのドキュメントにあるコンソールスモークテストを試して、自分にローカル通知を送って service worker が生きていることを確認してください。
1 つの通知に複数のシグナル:
- 期待どおりの動作です。ダイジェストごとにレベル単位で 1 件の通知を送ります(
3 ALERT signals · NVDA, TSLA, AMD)。Telegram と同じまとめ方です。タップするとダッシュボードが開き、そのバッチのシグナルをすべて確認できます。