ActivityWatch / ActivityWatch/aw-android

aw-notify: smart anomaly-detection notifications (percentile/sigma above baseline)

オープン
#200 コメント 7 件 リアクション 0 件 担当者 0 名 GitHub で見る
主要言語
Kotlin
スター
265
フォーク
57
平均マージ
2日 21時間
マージ済み PR(30日)
19

説明

## Background

Opened from discussion on #199 (aw-notify Android implementation).

Currently `aw-notify` on both desktop and Android uses fixed user-defined thresholds (e.g. "alert at 60/120/240 min of Work"). Erik's suggestion: replace or supplement these with statistical anomaly detection — no user config needed.

## The Idea

Instead of asking users to set thresholds, detect statistically unusual sessions automatically:

- **>90th percentile** of daily time for a category (based on rolling 30-day history)
- **~2 sigma** above mean for a category
- Examples: "Today's Twitter use is already at your 95th percentile (1h 45m vs your usual 35m)" or "Exceptional focus day — Work time in top 10%"

This makes defaults useful out-of-the-box with zero configuration, avoids threshold fatigue (fixed thresholds get ignored fast once familiar), and provides positive reinforcement not just warnings.

## Scope

- Applies to both `aw-notify` (desktop) and the Android notification worker (#199)
- Requires historical data access (aw-server query API already supports arbitrary time ranges)
- Percentile computation is straightforward; the harder part is choosing the right lookback window and minimum data requirements before anomalies can be computed

## Non-Goals

- This is not a replacement for per-user threshold config (that can coexist)
- Not blocking #199 — the v1 fixed-threshold approach is still useful while historical data accumulates

## Related

- #199 — Android aw-notify implementation (prompted this issue)
- [aw-notify desktop](https://github.com/ActivityWatch/aw-notify)

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。