How sharwindtharumadurai/itops-ai-helpdesk works
ITOps AI turns an authenticated user’s support request into a ticket and, when safe, an approved remediation on a managed endpoint or an Entra/Microsoft 365 account change. The main path is triage, catalog validation, device and policy resolution, dispatch, then execution-result capture and ticket closure. Separate capabilities include admin approvals, generated-script review, device inventory, and ticket history. The README documents these branches; sampled source confirms several API, storage, identity, LLM, and Graph details, while some subsystem wiring is represented only where explicitly documented.
Main entry points: api.py API handler · app.js Web chat · itops_stack.py HTTP API · store.py Ticket and device store
Components 22
User clients
- Web chat
web/app.js - CLI client
tools/itops_cli.py
Request handling
- API handler
lambda/itops/api.py - Caller identity
lambda/itops/auth.py - AI triage
lambda/itops/ai.py - Action catalog
lambda/itops/catalog.py - Script guardrails
lambda/itops/guardrails.py
Remediation
- Action dispatcher
lambda/itops/dispatcher.py - Endpoint actions
scripts - Graph account actions
lambda/itops/graph.py
State and events
- Ticket and device store
lambda/itops/store.py - SSM event handler
lambda/itops/ssm_events.py - Device inventory sync
lambda/itops/ssm_events.py
Other components
- IT user
- IT admin
- Entra ID
- HTTP API
infra/itops/itops_stack.py - LLM providers
- AWS Systems Manager
- Managed endpoints
- Microsoft Graph
- EventBridge
infra/itops/itops_stack.py
Connections 30
- IT user → Web chat: submits request
- IT admin → Web chat: reviews tickets
- IT user → CLI client: submits request
- Web chat → Entra ID: signs in
- Web chat → HTTP API: calls API
- CLI client → HTTP API: calls API
- Entra ID → HTTP API: issues JWT
- HTTP API → API handler: routes requests
- API handler → Caller identity: reads claims
- API handler → AI triage: requests triage
- AI triage → LLM providers: requests completion
- API handler → Action catalog: validates proposal
- API handler → Ticket and device store: reads and writes
- API handler → Action dispatcher: dispatches approved action
- API handler → Graph account actions: runs account action
- Graph account actions → Microsoft Graph: changes accounts
- Action dispatcher → AWS Systems Manager: sends command
- AWS Systems Manager → Managed endpoints: delivers command
- Managed endpoints → Endpoint actions: runs action
- AWS Systems Manager → EventBridge: emits status
- EventBridge → SSM event handler: dispatches event
- SSM event handler → AWS Systems Manager: fetches output
- SSM event handler → Ticket and device store: records result
- EventBridge → Device inventory sync: schedules sync
- Device inventory sync → AWS Systems Manager: reads fleet
- Device inventory sync → Ticket and device store: updates devices
- API handler → Script guardrails: scans generated script
- AI triage → API handler: returns draft
- API handler → Ticket and device store: records approval state
- Web chat → HTTP API: polls ticket status