How suksham11/agentic-ai-automation-automatic-mailing-ticketing-tool works
This is a customer-support automation service with a Streamlit control desk and FastAPI backend. The principal workflow submits a ticket message, retrieves local knowledge, infers intent and confidence, drafts a response, updates the ticket, optionally emails the customer, and records an event for history and analytics. The README also describes a LangChain/AI prompt pipeline, but the sampled agent implementation shows local intent and reply logic; the graph therefore does not claim a model-provider call. The queue worker is only a Redis connectivity placeholder. Edges reflect the sampled routes and services; unsampled details are omitted.
Main entry points: routes.py API routes · main.py FastAPI app · history.py History service · streamlit_app.py Streamlit desk
Components 16
User interfaces
- Streamlit desk
frontend/streamlit_app.py
API and controls
- FastAPI app
app/main.py - API routes
app/api/routes.py - Settings
app/core/config.py
Support workflow
- Support agent
app/services/agent.py - KB retriever
app/services/retriever.py - Local KB files
data/kb - Ticket adapter
app/adapters/ticket_adapter.py - Email adapter
app/adapters/email_adapter.py
History and analytics
- History service
app/services/history.py - Ticket event model
app/models/ticket_event.py - Database service
app/services/persistence.py
Other components
- Support operator
- Zendesk
- Gmail
- PostgreSQL
Connections 18
- Support operator → Streamlit desk: submits tickets
- Streamlit desk → FastAPI app: calls API
- FastAPI app → Settings: loads config
- FastAPI app → Database service: initializes database
- FastAPI app → API routes: dispatches requests
- API routes → Support agent: processes message
- Support agent → KB retriever: searches knowledge
- KB retriever → Local KB files: reads documents
- API routes → Ticket adapter: updates ticket
- Ticket adapter → Zendesk: searches or updates
- API routes → Email adapter: optionally sends email
- Email adapter → Gmail: sends message
- API routes → History service: schedules event save
- API routes → History service: loads history or analytics
- History service → Ticket event model: reads and writes events
- History service → Database service: opens sessions
- Database service → PostgreSQL: reads and writes
- Streamlit desk → API routes: requests history and analytics