AEGIS is an advanced, autonomous disaster response framework designed to detect, analyze, and coordinate responses to critical incidents. By leveraging Google's Agent Development Kit (ADK) and Gemini models, AEGIS simulates a multi-agent mesh network that monitors sensors, triages alerts, and deploys specialized "Sentinel" agents for detailed situational analysis.
AEGIS utilizes an asynchronous orchestration engine to manage specialized agent lifecycles and tool integration.
graph TD
subgraph Orchestrator [Agent Mesh Orchestrator]
A[Input: Real-time Flood Data] --> B{asyncio Task Manager}
end
subgraph Specialized_Agents [Parallel Execution]
B --> C[FloodMonitor: Sensor Surveillance]
B --> D[TriageAgent: Alert Verification]
B --> E[MedicalSentinel: Resource Planning]
B --> F[InfraSentinel: Damage Assessment]
end
subgraph Tools [External Tool Integration]
C --- G[(Satellite API)]
D --- H[(Emergency Services DB)]
end
C & D & E & F --> I[Consolidated Mission Report]
I --> J[Output: Emergency Intelligence]
style Orchestrator fill:#f9f,stroke:#333,stroke-width:2px
style Specialized_Agents fill:#bbf,stroke:#333,stroke-width:2px
- Autonomous Monitoring: Continuous surveillance of sensor data (simulated flood sensors) using the
FloodMonitoragent. - Intelligent Triage: The
TriageAgentverifies alerts using external tools and assesses the severity of the situation. - Parallel Intelligence: Deploys multiple "Sentinel" agents concurrently to analyze different aspects of a crisis (Medical & Infrastructure) in real-time.
- Modular Architecture: Built with a clear separation of concerns between monitoring, triage, and analysis units.
main.py: The core orchestration engine. It initializes the mesh, manages the lifecycle of the response, and consolidates final intelligence reports.monitor.py: Contains theFloodMonitorclass. It simulates environmental sensors and uses an AI agent to classify readings as "Normal" or "Critical".triage_agent.py: Hosts theTriageAgent. This agent acts as the dispatcher, verifying incoming SOS signals against real-time data (simulated via tools) and summarizing the event.sentinels.py: Defines the specialized agents (Medical_SentinelandInfra_Sentinel) and the logic for parallel execution usingasyncio.
-
Clone the repository (if applicable) or ensure you are in the project root.
-
Install dependencies: Ensure you have Python 3.10+ installed. Run the following command to install the required packages:
pip install -r requirements.txt
AEGIS requires a Google Gemini API key to function.
-
Create a
.envfile in the root directory. -
Add your API key to the file:
GEMINI_API_KEY=your_actual_api_key_here
To launch the full AEGIS system:
python main.py- Initialization: The system spins up the
FloodMonitorand begins checking sensor readings. - Monitoring: You will see periodic logs of sensor checks. Most will be "Safe".
- Trigger: Once a simulated "CRITICAL" reading occurs, the system engages the Triage protocols.
- Response:
- The Triage Agent verifies the incident.
- Sentinels are deployed in parallel to analyze the verified report.
- Final Report: The system outputs a consolidated "Mission Report" detailing Medical and Infrastructure intelligence before entering standby.
You can also run individual components for testing or demonstration purposes:
- Test Monitoring:
python monitor.py - Test Triage:
python triage_agent.py - Test Sentinels:
python sentinels.py
google-adkgoogle-genaipython-dotenvasyncio
AEGIS: Autonomous Response for a Safer Tomorrow.