T2 chain · customer support — one schema-typed call classifies the WHOLE queue (enums keep the categories honest), jq slices the urgent ones, and the escalation fires only when there’s something to escalate.
The job
It’s 8:55. There are 40 tickets from overnight. Someone reads them all, tags them, writes first replies, and pages on-call if anything’s on fire. This file does the reading, tagging and drafting — under a sortable v7 batch id — and pages only whenurgent is non-empty.
The shape
The file
t2-support-triage.nika.yaml
How it works
Enums make classification honest
category and urgency are schema enums — the model cannot invent
a « kinda-urgent » tier. Typed output means the jq filter downstream
can trust the values.jq slices, the model doesn't re-read
urgent filters urgency == "high" or "critical" out of the typed
list — no second model call to ask « which ones were urgent? ».Constructs you just used
| Construct | Where | Reference |
|---|---|---|
| schema enums over a list | triage | The 4 verbs |
nika:jq post-filter | urgent | Builtins |
nika:uuid v7 | batch | Builtins |
conditional notify | escalate | Workflows |
Make it yours
- Push the first replies as DRAFTS into your helpdesk via its API (
nika:fetch method: POST) — humans still hit send. - Track sentiment over time: append each batch’s stats to a CSV with
nika:write. - Speed matters at 9am:
groq/llama-3.3-70btriages a 40-ticket queue in seconds.
Next · Contract guard
The sovereignty example — a LOCAL model reads the contract, and a
validate + assert pair refuses bad extractions.