feat: add human detection scoring and webhook notifications
Implement phase 2.1 (human detection) and 2.2 (notifications): - Detection scorer computes 0.0-1.0 human likelihood from keystroke timing variance, special key usage, typing speed, command diversity, and session duration - Webhook notifier sends JSON POST to configured endpoints with deduplication, custom headers, and event filtering - RecordingChannel gains an event callback for feeding keystrokes to the scorer without coupling shell and detection packages - Server wires scorer into session lifecycle with periodic updates and threshold-based notification triggers - Web UI shows human score in session tables with highlighting - New config sections: [detection] and [[notify.webhooks]] Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -42,6 +42,10 @@ Key settings:
|
||||
- `shell.fake_user` — override username in prompt; empty uses the authenticated user
|
||||
- `web.enabled` — enable the web dashboard (default `false`)
|
||||
- `web.listen_addr` — web dashboard listen address (default `:8080`)
|
||||
- `detection.enabled` — enable human detection scoring (default `false`)
|
||||
- `detection.threshold` — score threshold (0.0–1.0) for flagging sessions (default `0.6`)
|
||||
- `detection.update_interval` — how often to recompute scores (default `5s`)
|
||||
- `notify.webhooks` — list of webhook endpoints for notifications (see example config)
|
||||
|
||||
### Run
|
||||
|
||||
|
||||
Reference in New Issue
Block a user