Omnichannel AI support operations

AI Support Platform

ProjectFinal Round AI / Internal platform
Year2025-2026

An internal platform that unifies five support channels, uses guarded LangGraph agents to resolve tickets, and automates review, payment, delivery, and observability workflows.

5
verified channel adapters
80%
backend coverage gate
Live
production workflow
Scope of work
  • Agentic AI
  • Omnichannel support
  • Payment automation
  • Reliability engineering
The story

One reliable ticket lifecycle across five very different support channels.

Support requests arrived through email, social platforms, and live chat, each with different event formats and reply semantics. The challenge was preserving conversation continuity without creating duplicate tickets, missed replies, unsafe payment actions, or fragmented manual handling.

I designed an internal platform around a shared ticket lifecycle. A FastAPI service normalizes channel events, a Next.js workspace gives operators one place to work, and a LangGraph ReAct agent classifies requests, retrieves trusted context, and invokes bounded support, refund, cancellation, knowledge, or review tools.

I treated reliability as part of the product: idempotency keys, execution claims, distributed locks, signed webhooks, a durable outbound-email pipeline, dead-letter recovery, graceful worker shutdown, and fail-soft tracing protect the workflow around the agent.

What it does

From incoming message to guarded resolution and verified delivery.

The platform brings channel-specific conversations into one operational model while keeping agent decisions, payment actions, escalation, and outbound delivery within explicit trust boundaries.

  1. 01

    Omnichannel Intake

    Normalize Microsoft Graph email, Instagram, Facebook, TikTok, and Chatwoot events into a shared ticket lifecycle while preserving each channel's reply behavior.

  2. 02

    Agent-Guided Resolution

    Use a unified LangGraph ReAct agent to classify intent, retrieve context, search knowledge, and choose bounded tools for support or review.

  3. 03

    Guarded Payment Actions

    Protect refund and cancellation workflows with server-owned account context, policy evaluation, explicit confirmation, persisted requests, and idempotent execution claims.

  4. 04

    Constrained Human Review

    Route unsupported and high-risk cases to operators without letting duplicate alerts, unsupported promises, or policy pushback become uncontrolled escalation paths.

  5. 05

    Durable Message Delivery

    Keep outbound email reliable through atomic enqueueing, leased claims, bounded retries, payload hashes, conditional finalization, and dead-letter recovery.

  6. 06

    Abuse-Resilient Operations

    Filter automated noise and prompt injection with Redis-cached rules, ReDoS protections, safe fallbacks, and operator-managed controls.

Permanently redacted support dashboard showing queue health, operational analytics, and focused work views
The operator dashboard keeps queue health, AI oversight, analytics, and focused work views in one place; all operational values are permanently redacted.
How it works

A guarded agent workflow backed by durable operational infrastructure.

The operator layer uses Next.js and React, while FastAPI services normalize channel events, enforce role-aware access, coordinate scheduled jobs, and expose the bounded tools used by the agent workflow.

LangGraph and LiteLLM orchestrate classification, retrieval, and tool execution with PostgreSQL checkpoints and pgvector context. Redis coordinates locks and cached rules; a relational outbox, Microsoft Graph transport, Stripe safeguards, and Langfuse tracing support reliable production execution.

Channel eventGuarded agentBounded toolsVerified delivery
My role

Full-stack and AI systems engineering across the platform.

I built across the Next.js operator experience, FastAPI services, LangGraph agent workflow, channel integrations, payment automations, background workers, data stores, and observability infrastructure.

The difficult work was defining trustworthy failure behavior. Financial actions cannot trust model-supplied identities, webhook retries cannot create duplicate tickets, and uncertain provider responses cannot be treated as safe reasons to send the same message again.

An agent becomes useful in production when every action has a trust boundary, every retry has an identity, and every failure has a recovery path.

The support-platform engineering principle

More projects

View all projects
750+ happy users

Like what you see?
Book a free discovery call.

Schedule Now