Powered by Claude Sonnet 4.5

Triage client enquiries
in two seconds.

A live demo of the open-source enquiry triage tool. Paste an email from a strata client, and Claude returns a category, a confidence score, a routing recommendation, and a draft reply you can edit and send — never autonomously.

API key Click to set your Anthropic key

Your ANTHROPIC_API_KEY is stored in your browser's localStorage and is sent only from your machine to api.anthropic.com. There is no backend. Nothing is logged on a server. Get a key →

01 · Input

Paste the enquiry

02 · Result

Triage output

No result yet

Paste an enquiry and click Run triage.

Design

Five rules baked into the prompt

Most "classify this" prompts run at about 60% accuracy in production because they're missing the rules below. The system prompt enforces all five.

  1. 01

    Closed category enum

    One of six labels — new_client, support_request, complaint, billing_question, general_question, spam_or_unclear. No free-text drift to break downstream routing.

  2. 02

    Self-rated confidence

    The model is told to lower its confidence on ambiguous inputs — a 0.6 is a real signal to escalate, not a model that's confidently wrong.

  3. 03

    No invented facts

    Forbids fabricating lot numbers, dates, dollar figures, staff names. If info is missing, the model is told to ask in the reply instead of inventing.

  4. 04

    Urgency + flags

    Three-level urgency for queue sorting; flags for contains_pii, needs_human_review, out_of_scope so downstream automation can mask, encrypt, or escalate.

  5. 05

    Draft, not send

    Every output is a draft a human reads before it goes out. There is no autonomous reply mode — by design, not by accident.

About

Built for the AI Developer assessment.

This is the Part 1 deliverable for the Strata Management Consultants AI Developer take-home. The same logic runs in three places: a Python CLI, a 19-test pytest suite, and the web app you're using right now. A drift-guard test in CI ensures the Python and JavaScript prompts can't silently diverge.

  • 33 Tests passing in CI
    (19 pytest · 14 node)
  • ~2s Median time from paste to draft reply
  • 0 Server hops — your key never leaves your browser