Agent skill

Support Ticket Triage

by mrmps in mrmps/classifier-dev

Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on…

MITAuto-check passedSales & Support

Install Support Ticket Triage

skills CLI
$ npx skills add mrmps/classifier-dev --skill support-ticket-triage -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install mrmps/classifier-dev support-ticket-triage --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/mrmps/classifier-dev.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/support-ticket-triage .claude/skills/support-ticket-triage && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
support-ticket-triage
GitHub stars
424
Token cost
~1.5k tokens
SKILL.md length
719 words
Files
1
Skills in repo
21
Repo updated
First seen
Licence
MIT

At a glance

Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on…

  • Works in 3 steps: ask three questions, not one → run the three calls → gate each field on its own confidence
  • Tasks that involve Customer support
  • SKILL.md covers When not to use this, Step 1 — ask three questions,…, Step 2 — run the three calls and Step 3 — gate each field on…, plus 3 more sections
  • Calls curl and npm; reaches classifier.dev

What it does

Support Ticket Triage is an agent skill from mrmps/classifier-dev. Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on calibrated confidence so only the unsure ones reach a person, and emit a CSV a helpdesk can import. Use on "triage these tickets", "who owns this one", "which of these are refunds", "sort the support inbox", or any queue arriving faster than anyone reads it.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Sales & Support, covering Customer support. The repository describes itself as: Zero-shot text classification over plain HTTP — no API key, no account. One Cloudflare Worker, a CLI, and an MCP server. https://classifier.dev. The licence is MIT.

When your agent uses it

  • Tasks that involve Customer support

Example prompts

  • “triage these tickets”
  • “who owns this one”
  • “which of these are refunds”
  • “/support-ticket-triage”

Requirements

  • Node.js

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. ask three questions, not one
  2. run the three calls
  3. gate each field on its own confidence

What it can do on your machine

Read from SKILL.md and the folder at commit 629df75. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • classifier.dev

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Support Ticket Triage loads about 1.5k tokens when it runs. Until then it costs about 119 tokens; SKILL.md has 719 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~119
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from mrmps/classifier-dev at commit 629df75, republished under its MIT licence (© mrmps). 719 words, ~1,515 tokens.

Download SKILL.mdSave it as .claude/skills/support-ticket-triage/SKILL.md (or your agent's skills folder).
name
support-ticket-triage
description
Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on calibrated confidence so only the unsure ones reach a person, and emit a CSV a helpdesk can import. Use on "triage these tickets", "who owns this one", "which of these are refunds", "sort the support inbox", or any queue arriving faster than anyone reads it.
license
MIT

Triage a ticket queue in three calls

classifier.dev sorts text into labels you choose. No key. One POST carries up to 1,000 tickets and returns, per ticket, a label, a score for every label and a calibrated confidence. It does not write replies. You keep the policy; it makes asking the same question of a whole queue cheap.

When not to use this

  • Fewer than about twenty tickets, already in front of you. You have paid the reading cost; decide yourself.
  • The answer needs account history or order state the ticket text does not contain. Look that up first and paste it into the input text.
  • Drafting replies, summarising or redacting. This returns labels only.

Step 1 — ask three questions, not one

Do not build one label set of billing-urgent-refund compounds. Run the same inputs through three calls with three label sets, so a confident team answer is not dragged down by an unsure urgency answer.

Write labels as sentences about the world. Codes classify badly. Measured on the ten tickets below: urgency labelled critical outage / high / normal / low had mean confidence 0.54 with one answer at or above 0.9. The same tickets against work stopped for many people, one customer blocked or money at risk, routine request, answer today or tomorrow, no deadline in the message had mean confidence 0.68. Same model, same tickets, better questions.

Always include an escape label (sales or spam, none of these). Every call returns one of your labels, so text that fits nothing is still sorted somewhere.

Step 2 — run the three calls

curl -s https://classifier.dev/v1/classify \
  -H 'content-type: application/json' \
  -d '{
  "labels": ["refund or cancellation", "not a refund or cancellation"],
  "instructions": "Say refund or cancellation only when the customer asks for money back or asks to end the subscription.",
  "inputs": ["Charged twice for order 4821, please refund one",
             "App crashes on the reports tab since yesterday",
             "I want to cancel before the next renewal on the 14th"]
}'

Real output, trimmed to the fields you act on:

[{"label": "refund or cancellation",     "confidence": 1},
 {"label": "not a refund or cancellation","confidence": 1},
 {"label": "refund or cancellation",     "confidence": 1}]

For a real queue, write each field's request to a file and post it with -d @team.json. Concatenate subject and body into one input, subject first, trimmed to 32,000 characters.

Step 3 — gate each field on its own confidence

Confidence is calibrated: measured, answers at or above 0.9 were right 82 to 92% of the time, answers under 0.5 right 29 to 64%. So:

  • 0.9 and above — write the field and route the ticket.
  • 0.5 to 0.9 — write the field, mark the row for review, do not let it trigger anything irreversible (no auto-refund, no auto-close).
  • Under 0.5 — leave the field empty and put the ticket in a person's queue.

Gate per field. On the run below the team field cleared 0.9 on 8 of 10 and the refund flag on 10 of 10, while urgency cleared it on 2. Gating the whole row on its weakest field would have sent 8 of 10 tickets to a human for no reason.

Show full SKILL.md (289 more words)Show less

Worked example — ten tickets, real output

Three calls, 30 classifications, 426ms of API time in total. p1 to p4 are the urgency labels above.

id,team,team_c,urgency,urg_c,refund,ref_c,queue
T-001,billing and payments,0.97,p2,0.89,yes,1,billing and payments
T-002,technical bug,1,p2,0.58,no,1,technical bug
T-003,how-to question,0.58,p2,0.52,yes,1,triage-review
T-004,account and login,0.9,p1,1,no,1,account and login
T-005,how-to question,1,p3,0.71,no,1,how-to question
T-006,technical bug,0.71,p4,0.88,no,1,triage-review
T-007,shipping and delivery,0.99,p2,0.71,no,1,shipping and delivery
T-008,billing and payments,0.99,p3,0.24,no,1,billing and payments
T-009,sales or spam,1,p4,0.94,no,1,sales or spam
T-010,technical bug,1,p2,0.37,no,1,technical bug

T-003 ("I want to cancel my subscription before the next renewal") is the row worth studying: the team answer is a coin flip at 0.58 because cancelling is both a how-to and a billing action, while the refund flag is 1.0. A person gets the row, and still gets the flag.

Import that CSV as a bulk update keyed on your helpdesk's ticket id, or emit the same columns as JSON lines. Keep the raw confidences in the file: they let you re-tune the thresholds next week without re-running anything.

Pitfalls

  • Strip quoted replies. A message carrying the last five in the thread classifies as whatever the thread was about, not what was just asked.
  • Anger is not urgency. T-006 is an angry message with nothing blocked; the urgency labels above place it at no deadline in the message, 0.88. Say so in instructions or tone will dominate.
  • Read the unsure pile weekly. Every ticket under 0.5 is either a label you have not written yet or a genuine edge case.
  • Null means review. A provider may return no score, and smart replacement has no comparable score. Scores do not validate the input, so include a label for stack traces or other machine-generated tickets when they are possible.

Limits

3,000 classifications a minute and 20,000 a day per IP; a batch of 400 counts as 400, and three passes over 1,000 tickets is 3,000. A 429 carries Retry-After. For a shell pipeline, npm i -g classifier-dev@0.1.3 then classify "billing and payments","technical bug" --review 0.9 < tickets.txt prints only the rows a person still needs to read.

© mrmps, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/support-ticket-triage of mrmps/classifier-dev.

Open the folder on GitHubat commit 629df75

Compare with similar skills

Support Ticket Triage next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Support Ticket Triage compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Support Ticket Triage this skillmrmps/classifier-dev424—~1.5kAutomated safety check: PassMIT
Siftranknoperator/siftrank225—~2.9kAutomated safety check: PassMIT
Supporthaacked/dotfiles134—~2.9kAutomated safety check: PassNone
Customer Support Agentmastra-ai/mastra29k—~2.2kAutomated safety check: PassCustom licence
Add Agent Adaptersafedep/gryph172—~679Automated safety check: PassApache-2.0
Agent Support Matrixjazzyalex/agent-sessions894—~587Automated safety check: PassMIT

Similar skills

  • Siftrank

    noperator/siftrank

    Find needles in haystacks with SiftRank. An agent skill from noperator/siftrank.

    225 GitHub stars~2.9k tokensUpdated 19 days ago
    Sales & SupportAuto-check passed
  • Support

    haacked/dotfiles

    Support hero workflow — start a ticket investigation with auto-organized notes, find existing notes, or generate the weekly highlights log.

    134 GitHub stars~2.9k tokensUpdated today
    Sales & SupportAuto-check passed
  • Customer Support Agent

    mastra-ai/mastra

    Authoring playbook for building agents that triage and reply to customer messages — support tickets, email inquiries, chat questions, refund requests, or product issues.

    29k GitHub stars~2.2k tokensUpdated today
    Sales & SupportAuto-check passed
  • Add Agent Adapter

    safedep/gryph

    A skill your agent uses when adding support for a new AI coding agent to Gryph, or when changing how an existing agent adapter is wired.

    172 GitHub stars~679 tokensUpdated 4 days ago
    Sales & SupportAuto-check passed
  • Agent Support Matrix

    jazzyalex/agent-sessions

    Maintain Agent Sessions agent support matrix and JSON/JSONL parsing compatibility.

    894 GitHub stars~587 tokensUpdated today
    Sales & SupportAuto-check passed
  • Company Brain Company QA

    topoteretes/cognee

    Build one company memory from a SQL database, a support ticket export and a folder of documents, linked into one graph by cognee, then answer questions that need several of those sources together.

    32k GitHub stars~750 tokensUpdated today
    Sales & SupportAuto-check: notes

More from mrmps/classifier-dev

All 21 skills in this repo
  • Bulk Classify

    mrmps/classifier-dev

    Sort many texts into your own categories without reading them, using a keyless HTTP API that returns a calibrated confidence per answer.

    424 GitHub stars~3.1k tokensUpdated yesterday
    Auto-check passed
  • Computer Use Action Picker

    mrmps/classifier-dev

    Pick a browser or desktop agent's next action by choosing among the actions actually on screen instead of inventing one.

    424 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Content Moderation Gate

    mrmps/classifier-dev

    Check user-generated text against a written policy before it is published.

    424 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Label each context chunk keep, drop or replace-with-a-pointer and pass the survivors through byte for byte instead of summarising, with key-shaped chunks decided locally and never sent, and a…

    424 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Document Intake Routing

    mrmps/classifier-dev

    Label each page of an intake packet with a document type and a page role before extraction runs, so only confident pages reach an extractor and the rest reach a person.

    424 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed
  • Headline Filter Map Reduce

    mrmps/classifier-dev

    Filter hundreds or thousands of headlines, search results or feed items against a written brief before opening any of them, using a two-stage cascade that spends a fast model on everything and a…

    424 GitHub stars~1.5k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Support Ticket Triage

What does Support Ticket Triage do?

Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on…. Support Ticket Triage is an agent skill from mrmps/classifier-dev. Triage support tickets, emails or contact-form posts into an owning team, an urgency and a refund-or-cancellation flag with three batched calls to a keyless classification API, gate the answers on calibrated confidence so only the unsure ones reach a person, and emit a CSV a helpdesk can import.

When should I use Support Ticket Triage?

Support Ticket Triage fits situations like: tasks that involve Customer support.

How do I install Support Ticket Triage in Claude Code?

Run `npx skills add mrmps/classifier-dev --skill support-ticket-triage -a claude-code`. Or copy the skill folder (skills/support-ticket-triage in mrmps/classifier-dev) into .claude/skills/support-ticket-triage in your project. Claude Code loads it when a task matches its description.

How do I install Support Ticket Triage in Codex?

Run `npx skills add mrmps/classifier-dev --skill support-ticket-triage -a codex`. Or copy the skill folder (skills/support-ticket-triage in mrmps/classifier-dev) into .agents/skills/support-ticket-triage in your project. Codex loads it when a task matches its description.

Can I use Support Ticket Triage in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add mrmps/classifier-dev --skill support-ticket-triage -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/support-ticket-triage, .gemini/skills/support-ticket-triage, .github/skills/support-ticket-triage and .opencode/skills/support-ticket-triage in your project.

What does Support Ticket Triage need to run?

Going by SKILL.md and its folder, Support Ticket Triage needs the command-line tools its instructions call (curl and npm). Our summary lists: Node.js.

Does Support Ticket Triage access the network?

SKILL.md names 1 domain. In commands or code: classifier.dev; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Support Ticket Triage safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Support Ticket Triage use?

Support Ticket Triage is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Support Ticket Triage use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Support Ticket Triage?

Skills that share tags, products or a category with Support Ticket Triage: Siftrank (noperator/siftrank, 225 stars), Support (haacked/dotfiles, 134 stars), Customer Support Agent (mastra-ai/mastra, 29k stars) and Add Agent Adapter (safedep/gryph, 172 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Support Ticket Triage?

mrmps (a GitHub user) maintains it in mrmps/classifier-dev, which has 424 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on October 7, 2026.

Source: mrmps/classifier-dev on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.