Inspiration
As autonomous AI agents are increasingly entrusted with operational tasks in Security Operations Centers (SOC) and industrial OT environments, a terrifying new vulnerability emerges: autonomous runaway actions. What happens when an automated agent decides to cut power to a manufacturing floor, lock critical access doors, or shut down a datacenter's cooling units based on a misinterpreted sensor reading or a false alarm?
In real-world security teams, alert fatigue is a massive issue. Critical alerts sent via Slack, email, or ticketing systems frequently get buried, muted, or missed—especially over weekends or off-hours. A missed alert can lead to catastrophic damage or millions in downtime.
We built ForgeGate to solve this. Instead of passive notifications that get lost, ForgeGate creates an active human-verification gate. It uses CALL-E to wake up and call the on-call security lead directly on their phone, speak the telemetry in plain English, and demand a spoken decision before any irreversible action can execute.
What it does
ForgeGate acts as a fail-closed guardrail between autonomous agents and critical infrastructure:
- Risk Evaluation & Thresholding: Every incoming incident is scored. If the score stays below the organization's configurable threshold (e.g., 70%), the incident auto-clears with zero human alert fatigue.
- Autonomous Call Dispatch: When a high-risk incident strikes, ForgeGate halts autonomous execution and dispatches a CALL-E voice agent to call the on-call security lead's phone.
- Natural Voice Interaction: The CALL-E agent speaks the situation naturally (e.g., "Coolant pressure drop to 12psi in datacenter_b, temperature 52.3 degrees Celsius, risk score 93%. Proposed action: emergency shutdown cooling unit B"), and prompts the lead to choose: Approve, Hold, or Escalate.
- Fail-Closed Enforcement: Anything short of an explicit, transcript-backed "Approve" safely blocks the action. If the call drops, goes to voicemail, or the human says "Hold", the action remains locked.
- 3-Panel SOC Command Center:
- Incident Queue: Displays live incident cards with severity stripes, pulsing status lamps, and an admin form to create custom incidents.
- Call Status & Ticket Detail: Features a live rotating call dial, elapsed timer, 20-segment lighted VU meter, and transcript evidence.
- Real-Time Activity Feed: Streams every background risk calculation, telephony dispatch, and decision into a monospace terminal log.
- Post-Call Governance: When an incident is held, operators can review the transcript and either Discard the false alarm or Escalate with custom notes.
How we built it
- Backend: Built with Python and FastAPI, featuring thread-safe JSONL audit trails, deterministic idempotency keys to prevent duplicate dispatches, and robust REST polling.
- Voice Telephony: Powered by the CALL-E API & CLI, formulating natural language prompts with dynamic task synthesis to communicate industrial and cyber telemetry over phone lines.
- Frontend: Built with vanilla HTML5, modern CSS grid, and vanilla JavaScript—delivering a responsive, high-aesthetic industrial command center inspired by blackened steel, brass switches, and warm tungsten indicator lamps.
- Automated Verification: Comprehensive test suite with 35 automated tests in
pytestcovering end-to-end incident evaluation, idempotency, telephony fail-closed logic, and post-action workflows.
Challenges we ran into
- Telephony Lifecycle & Polling: Handling asynchronous phone call lifecycles where carrier networks might drop, delay, or flag calls as busy. We engineered a resilient polling mechanism that immediately detects terminal states (
completed,failed,canceled) without hanging the UI. - Enforcing Fail-Closed Safety: Designing a state machine where zero-trust is guaranteed: network drops, unclear audio, or unparsed responses must strictly default to
HELDrather than accidentally permitting irreversible actions. - Speech-Friendly Telemetry: Raw sensor data often contains special symbols (like
°Cor technical strings). We refined the task composer to output natural, conversational English that CALL-E's text-to-speech engine speaks smoothly.
Accomplishments that we're proud of
- Real Working Outbound Calls: Successfully executing live outbound phone calls to real phone numbers and capturing human voice intent into structured JSON decisions.
- 35 Passing Tests: 100% test pass rate ensuring rock-solid stability.
- Zero-Build Industrial UI: Created a stunning, production-ready 3-panel command center using purely vanilla web technologies with zero npm/bundler overhead.
What we learned
- Voice AI is fundamentally different from chatbots: latency, clear phrasing, and concise options are essential when communicating over a cellular phone call during an emergency.
- "Human-in-the-loop" isn't just about reviewing text; for physical and cyber operations, telephone verification is the ultimate defense against autonomous agent hallucinations.
What's next for ForgeGate
- Multi-Party Quorum Calls: Calling multiple leads simultaneously for multi-signature authorization on catastrophic-tier actions.
- SIEM / SOAR Integrations: Native connectors for Splunk, Microsoft Sentinel, and PagerDuty.
- Voice Biometrics: Verifying the speaker's vocal identity before accepting an "Approve" disposition.
Built With
- artificial-intelligence
- autonomous-agents
- call-e
- css3
- cybersecurity
- fastapi
- html5
- incident-response
- javascript
- pytest
- python
- rest-api
- soc
- telephony
- voice-ai
Log in or sign up for Devpost to join the conversation.