How prashant-thakur77/beacon works
Beacon is a voice-first AWS incident-response agent. Its core workflow is alarm intake, evidence gathering and diagnosis, transcript-checked approval, constrained remediation, and recovery verification; recurring incidents may instead use a scoped Sleep Contract. The README documents the major AWS integrations and UI capabilities, while sampled source confirms portions of the incident handler, voice flow, browser speech path, and security-group actions. Some subsystem wiring is therefore shown only where documented.
Main entry points: handler.py Incident handler · remediate.py Remediation workflow · voice_tools.py Agent tools · store.py Incident and approval store
Components 28
Incident analysis
- Incident handler
src/beacon/handler.py - Log triage
src/beacon/triage.py - Log analysis
src/beacon/analyzer.py - Change ledger
src/beacon/changes.py - Deterministic diagnosis
src/beacon/diagnose.py
Voice and consent
- Incident conversation
web/src/components/Talk.tsx - Streaming speech input
web/src/voice/transcribe.ts - Voice turn handler
src/beacon/voice_turn.py - Agent tools
src/beacon/voice_tools.py - Turn consent context
src/beacon/turn_context.py - Sleep contracts
src/beacon/contracts.py
Safe remediation
- Remediation workflow
src/beacon/remediate.py - Action allowlist
src/beacon/remediation/registry.py - Security-group actions
src/beacon/remediation/actions_sg.py - Recovery verification
src/beacon/remediation/verify.py
Incident state
- Incident and approval store
src/beacon/store.py
Night Board console
- Console application
web/src/App.tsx - Dashboard API
src/beacon/dashboard_api.py - Analytics and reports
web/src/components/Reports.tsx
Other components
- CloudWatch alarm
- Amazon Bedrock
- CloudTrail events
- On-call engineer
- Browser console
- DynamoDB
- CloudWatch metrics
- AWS patient resources
- SNS notifications
Connections 36
- CloudWatch alarm → Incident handler: triggers
- Incident handler → Log triage: requests analysis
- Log triage → Amazon Bedrock: analyzes logs
- Incident handler → Log analysis: reduces logs
- Incident handler → Change ledger: checks changes
- Change ledger → CloudTrail events: reads events
- Incident handler → Deterministic diagnosis: runs diagnostics
- Deterministic diagnosis → AWS patient resources: checks drift
- Incident handler → Incident and approval store: records incident
- Incident and approval store → DynamoDB: reads and writes
- Incident handler → SNS notifications: pages or reports
- Browser console → Console application: opens console
- Console application → Incident conversation: shows conversation
- On-call engineer → Incident conversation: speaks or types
- Incident conversation → Streaming speech input: streams audio
- Streaming speech input → On-call engineer: returns transcript
- Incident conversation → Voice turn handler: submits turn
- Voice turn handler → Agent tools: dispatches tools
- Voice turn handler → Amazon Bedrock: reasons with
- Voice turn handler → Turn consent context: sets transcript
- Agent tools → Turn consent context: checks consent
- Agent tools → Incident and approval store: reads incident
- Agent tools → Sleep contracts: grants or checks
- Agent tools → Remediation workflow: starts remediation
- Incident handler → Remediation workflow: starts contract run
- Remediation workflow → Action allowlist: selects allowed action
- Remediation workflow → Security-group actions: executes action
- Security-group actions → AWS patient resources: dry-runs or changes
- Remediation workflow → Recovery verification: checks recovery
- Recovery verification → CloudWatch metrics: checks alarm and metrics
- Recovery verification → AWS patient resources: checks rule state
- Remediation workflow → Incident and approval store: records outcome
- Remediation workflow → SNS notifications: notifies outcome
- Console application → Dashboard API: loads console data
- Dashboard API → Incident and approval store: reads incidents
- Console application → Analytics and reports: shows audit and reports