A lightweight, self-hosted monitoring system built with Rust and React. A Windows agent streams real-time telemetry to the server, which feeds a live web dashboard with screen streaming, window/URL tracking, and activity history.
Tab-by-tab UI tour (with more detail): wiki → Features.
Warning
This project was largely written with AI assistance and is intended for experimentation and testing, not as a hardened or supported product. Do not rely on it in production or for sensitive environments. Monitoring, remote control, and keystroke-related features carry inherent privacy and security implications; the codebase has not undergone professional security review and may contain bugs, weak defaults, or other issues that could expose data or systems. Use at your own risk.
- Activity timeline — A browsable history of foreground apps/windows with durations.
- Live screen viewer — Demand-driven MJPEG screen streaming
- Remote control — Send mouse and keyboard commands from the dashboard to the agent.
- Telemetry capture — Window focus, URLs, AFK/active transitions and keystroke capture.
| Component | Technology |
|---|---|
| sentinel-agent | Rust (Windows, hidden Tauri settings window + hotkey, xcap, enigo) |
| sentinel-server | Rust (Axum, Tokio, SQLx, PostgreSQL) |
| sentinel-dashboard | React 19, Vite, TailwindCSS |
cp .env.example .env
docker compose up -dDeploy, configure, use the dashboard and agent, and develop: see the GitHub wiki.
MIT — see LICENSE.



