How th3heretic/argus works
Argus Core is a home-security event orchestrator with an administrator-facing dashboard. The main documented flow is a module or adapter sending an event over MQTT; Core validates the source, applies consent and mode policy, stores approved event metadata, and presents events and system state in the dashboard. Registration and device discovery, authentication, auditing, and retention are separate supporting capabilities. The index and README identify several capabilities whose implementation details were not sampled, so their internal wiring is omitted where unverified.
Main entry points: service.py Event evaluation · main.py Core application · event_store.py Event store · store.py Source registry
Components 21
Ingress and Discovery
- MQTT ingress
core/argus_core/integrations/mqtt_ingress.py - Device discovery
core/argus_core/discovery/service.py - Discovery API
core/argus_core/discovery/router.py
Trust and Policy
- Source registry API
core/argus_core/registry/router.py - Source registry
core/argus_core/registry/store.py - Consent evaluation
core/argus_core/consent/effective.py - Consent settings
core/argus_core/consent/store.py - Household modes
core/argus_core/modes/store.py - Event policy
core/argus_core/policy/event_policy.py
Events and Retention
- Event evaluation
core/argus_core/events/service.py - Events API
core/argus_core/events/router.py - Event store
core/argus_core/storage/event_store.py - Retention service
core/argus_core/retention/service.py - SQLite access
core/argus_core/storage/database.py
Admin and Health
- Admin authentication
core/argus_core/auth/dependencies.py - Accounts and sessions
core/argus_core/auth/store.py - Audit log
core/argus_core/audit/store.py - Source health monitor
core/argus_core/monitoring/source_health_monitor.py
User Interface
- Admin dashboard
core/argus_core/ui/router.py - Core application
core/argus_core/main.py
Other components
- Modules / adapters
Connections 25
- Modules / adapters → MQTT ingress: sends events
README.md - MQTT ingress → Event evaluation: submits events
core/argus_core/integrations/mqtt_ingress.py - Event evaluation → Source registry: checks source
core/argus_core/events/service.py - Event evaluation → Consent evaluation: checks consent
core/argus_core/events/service.py - Event evaluation → Household modes: reads modes
core/argus_core/events/service.py - Event evaluation → Event policy: evaluates policy
core/argus_core/events/service.py - Event evaluation → Event store: stores approved
core/argus_core/events/service.py - Events API → Event evaluation: invokes evaluation
core/argus_core/events/router.py - Events API → Event store: reads events
core/argus_core/events/router.py - Consent evaluation → Consent settings: loads settings
core/argus_core/consent/effective.py - Discovery API → Device discovery: invokes discovery
core/argus_core/discovery/router.py - Device discovery → Source registry: registers devices
core/argus_core/discovery/service.py - Source registry API → Source registry: manages sources
core/argus_core/registry/router.py - Retention service → Event store: purges expired
core/argus_core/retention/service.py - Retention service → Audit log: records deletion
core/argus_core/retention/service.py - Admin authentication → Accounts and sessions: validates sessions
core/argus_core/auth/dependencies.py - Admin dashboard → Event store: loads dashboard events
core/argus_core/ui/router.py - Admin dashboard → Accounts and sessions: checks administrator
core/argus_core/ui/router.py - Source health monitor → Source registry: checks registered sources
core/argus_core/monitoring/source_health_monitor.py - Core application → MQTT ingress: registers ingress
core/argus_core/main.py - Core application → Events API: mounts API
core/argus_core/main.py - Core application → Discovery API: mounts API
core/argus_core/main.py - Core application → Source registry API: mounts API
core/argus_core/main.py - Core application → Admin dashboard: mounts dashboard
core/argus_core/main.py - SQLite access → Event store: provides connections
core/argus_core/storage/event_store.py