How uchihaobito15/agentx works
AgentX is an incident-investigation prototype: an operator selects an incident in the React dashboard, requests an investigation, reviews evidence-based findings and advisory hypotheses, and can update incident status. The FastAPI backend supplies simulated evidence, applies deterministic scenario rules, optionally asks Gemini for interpretation, and saves reports and history in SQLite. The dashboard also checks backend health and retrieves saved investigations. The graph reflects sampled calls and documented capabilities; unsampled UI details and backend internals are not inferred.
Main entry points: App.jsx Incident dashboard · investigations.py Investigation API · connection.py Database connection · incidents.py Incident API
Components 15
Operator dashboard
- Incident dashboard
frontend/src/App.jsx - React entry
frontend/src/main.jsx
API layer
- FastAPI application
backend/app/main.py - Incident API
backend/app/api/incidents.py - Investigation API
backend/app/api/investigations.py - Health API
backend/app/api/health.py
Investigation analysis
- Rule-based investigator
backend/app/agent/investigator.py - Simulated evidence
backend/app/data/evidence.py - Gemini analysis
backend/app/services/gemini_service.py
Persistence and settings
- Database connection
backend/app/database/connection.py - Incident and history models
backend/app/database/models.py - SQLite database
- Application settings
backend/app/config.py
Other components
- Incident operator
- Google Gemini service
Connections 21
- Incident operator → Incident dashboard: uses
README.md - React entry → Incident dashboard: renders
frontend/src/main.jsx - Incident dashboard → Incident API: requests incidents
frontend/src/App.jsx - Incident dashboard → Investigation API: runs and retrieves
frontend/src/App.jsx - Incident dashboard → Health API: checks health
frontend/src/App.jsx - Incident dashboard → Incident operator: shows reports
README.md - FastAPI application → Incident API: registers
backend/app/main.py - FastAPI application → Investigation API: registers
backend/app/main.py - FastAPI application → Health API: registers
backend/app/main.py - Incident API → Database connection: gets sessions
backend/app/api/incidents.py - Incident API → Incident and history models: queries and updates
backend/app/api/incidents.py - Investigation API → Rule-based investigator: runs analysis
backend/app/api/investigations.py - Investigation API → Database connection: gets sessions
backend/app/api/investigations.py - Investigation API → Incident and history models: reads and saves
backend/app/api/investigations.py - Rule-based investigator → Simulated evidence: loads evidence
backend/app/agent/investigator.py - Rule-based investigator → Gemini analysis: requests interpretation
backend/app/agent/investigator.py - Gemini analysis → Google Gemini service: calls API
backend/app/services/gemini_service.py - Database connection → Application settings: reads URL
backend/app/database/connection.py - Incident and history models → Database connection: uses base
backend/app/database/models.py - Database connection → SQLite database: connects
README.md - Gemini analysis → Application settings: reads credentials
backend/app/services/gemini_service.py