Serverless agent + structured tool use

AI Support Triage

A Lambda-based agent that handles the repetitive first pass on a new support ticket: search the engineering issue tracker for related work, draft a contextual reply, identify the likely owner, and post the complete handoff to Slack.

Anonymized support-workflow rebuild

What is preserved: the webhook-to-agent flow, tool-use loop, issue-search boundary, structured triage contract, Slack handoff, and serverless deployment model.

What is fictionalized: the company identity, support platform, engineering tracker, ticket data, and ownership records. A local FastAPI mock exercises the same client path.

Build Shape

Serverless Webhook Intake

Accepts a support-ticket webhook through API Gateway and Lambda, then validates the payload before starting the agent loop.

Issue-Tracker Tool

Lets Claude search a GraphQL issue-tracker adapter that runs against the same interface whether connected to a real system or the local mock.

Forced Triage Contract

Ends only when the model calls a submission tool with a validated result, rather than parsing an unconstrained free-form answer.

Slack Review Handoff

Packages the ticket, matched engineering work, proposed reply, confidence, and likely owner into one inspectable Slack message.

Engineering Focus

01

No invented engineering issues. Referenced identifiers are joined back to the issue results actually returned in tool-call history before the handoff is accepted.

02

Bounded execution. A fixed turn limit caps cost and failure loops while prompt caching reduces repeated system-context overhead.

03

Self-contained verification. Fixture tickets, a realistic local tracker, and a scripted Anthropic client let the critical path run and test without production credentials.