Agentic AILogisticsAutomation

NorthLane Freight // Logistics & supply chain

An agentic AI dispatcher for autonomous logistics exception resolution

LangGraphClaude 3.5 SonnetGPT-4o miniPostgres + pgvectorRedisTwilio
91%
of exceptions resolved fully autonomously, with no dispatcher involvement
4.6 min
average exception response time (down from 41 min)
3.4×
dispatch team throughput, with no headcount increase
01 — The brief

The client runs a dispatch operation where a team of 14 dispatchers manually tracks shipment status and reacts to delays, carrier ELD silence, driver no-shows, and rate disputes. On average, 38% of loads per week required manual dispatcher intervention — calling the carrier, sending an email, updating the TMS, notifying the customer.

This wasn't a job for a conventional chatbot: the solution needed to act across multiple systems at once (TMS, ELD provider, email, SMS, carrier portals), not just answer questions. The team had already tried no-code automation (Zapier workflows), but exception logic was too conditional — every case required judgment calls about “how critical is this” and “who should this escalate to,” which no-code tooling couldn't sustain.

02 — What we built

The product surface

A production-grade agentic system that monitors every load in real time, classifies exceptions by severity, acts within defined authority limits, escalates only the risky cases, and learns from dispatcher feedback.

01

Real-time monitoring

Monitors every load's status in real time (ELD + TMS webhooks), flagging anomalies — ETA slippage, GPS silence >2 hours, route deviation.

02

Exception classification

Classifies exceptions by type and severity through LLM-based analysis of load context: value, customer tier, freight type, carrier history.

03

Autonomous action

Acts autonomously within defined authority limits: drafts and sends personalized email/SMS status requests to carriers, updates TMS records, logs all communication, and generates customer-facing updates.

04

Human escalation

Escalates to a human only the cases where model confidence falls below threshold or financial risk exceeds a set limit — with full context and a proposed resolution, rather than a raw alert.

05

Feedback learning

Dispatcher decisions (approve / override the agent's action) feed back as a reward signal for weekly prompt fine-tuning and intent-classifier retraining.

03 — Architecture and stack

Decisions, not just dependencies.

The agent runs on a planner-executor loop (LangGraph) with a per-load state machine and a “propose → execute → confirm” mode at a configurable autonomy level. Claude 3.5 Sonnet handles exception classification and communication generation, while GPT-4o mini does fast triage filtering of the incoming event stream. Typed function-calling reaches into the TMS API, an email/SMS gateway (Twilio), carrier-portal adapters (REST with headless fallback), and Slack notifications to dispatchers.

Memory spans Postgres + pgvector — a vectorized three-year email history used as few-shot context — and Redis for the live state of active loads. Guardrails wrap every action: confidence scoring before each step, hard limits on financial decisions, a full audit log, and a kill-switch at the route or customer level. An observability dashboard tracks the share of autonomously resolved cases, time-to-resolution, escalation accuracy, and agent override rate.

04 — Delivery highlights

What was hard, and how we shipped it.

  1. 01

    Acts, not just answers

    An autonomous agent that takes real actions across six external systems — TMS, ELD, email, SMS, and two carrier portals — rather than a chatbot that only answers questions.

  2. 02

    Guardrails before autonomy

    Confidence scoring before every action, hard limits on financial decisions, a full audit log, and a kill-switch at the route or customer level — the agent escalates to a human whenever confidence or financial risk crosses a threshold.

  3. 03

    Few-shot from three years of email

    With no labeled dataset — only three years of dispatcher email threads — the vectorized history in Postgres + pgvector became the few-shot context for classification and communication.

  4. 04

    Phased rollout from shadow mode

    The agent first only proposed actions (shadow mode), then gained autonomy on low-risk cases, then full scope — red-teamed against edge cases and regression-tested against 400+ historical cases.

  5. 05

    Team redeployed, not reduced

    Dispatch team throughput rose 3.4× with no headcount increase; the team was redeployed toward complex negotiations and customer relationships instead of routine follow-ups.

Looking at a project that sits at this kind of seam?

Bring us the architecture, the constraints, and the ship date. We will bring the rest.