一键导入
helpdesk
Classify a bounded support request, choose the safe next path, and draft a customer-ready reply only when a human-gated send is appropriate.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Classify a bounded support request, choose the safe next path, and draft a customer-ready reply only when a human-gated send is appropriate.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Governed runtime for agent skills: discover and install portable skills, run bounded skill graphs with explicit authority, and inspect signed receipts for what happened.
Audit a sealed runx receipt for governance, comparing the authority a run exercised against what it was granted, and flag over-reach, ungated mutation, unrecorded refusals, or exposed secret material.
Verify the receipt ids behind a normalized authority-usage summary, compare that evidence with granted scopes, and propose the narrowest grant the evidence supports.
Answer a cross-run audit question against the receipt ledger, returning matched receipts and a chain-verification result.
Read durable reflect projections, group repeated signals by skill, and emit validated handoffs to skill-lab improve when the evidence clears configured floors.
Review receipts and harness failures to propose bounded skill improvements.
| name | helpdesk |
| version | 0.1.1 |
| description | Classify a bounded support request, choose the safe next path, and draft a customer-ready reply only when a human-gated send is appropriate. |
| source | {"type":"cli-tool","command":"node","args":["run.mjs"]} |
| links | {"source":"https://github.com/runxhq/runx/tree/main/skills/helpdesk"} |
| runx | {"category":"ops","input_resolution":{"required":["support_request"]}} |
Classify one bounded support request, choose the safest next path, and draft a customer reply only when the supplied context supports one. The runner emits a support triage packet with classification, severity, confidence, evidence, draft email, and a send gate.
This skill never sends email, posts to Slack, opens issues, mutates accounts, or touches billing. It prepares the decision packet that a separate governed send skill can review, approve, and deliver with its own authority grant and receipt.
Use this skill when an agent has a single support request and needs a safe first decision: answer, ask for more information, route to engineering, route to billing, route to account review, or route to abuse review.
It is useful in business-ops graphs where support triage fans out from inbox
intake, then hands off only safe drafts to send-as or another provider-backed
send lane. It also works for dry-run review of support queues because it has no
external side effects.
Do not use this skill as a helpdesk transport, account access workflow,
billing authority, customer identity verifier, or automatic sender. Do not use
it to answer from private account state unless that state has already been
summarized into an approved support_request packet.
If the request asks for account recovery, billing changes, abuse handling, or anything that needs private records, the skill must not draft a definitive answer. It should return a review route and let a stronger authority gate handle the consequence.
support_request to contain at least subject or body.how_to, billing,
account_access, bug, abuse, or unknown.how_to requests.send_gate.status = requires_human_approval for every result.Return needs_input when support_request is missing or lacks both subject and
body. Return needs_more_evidence when the request is too vague to route. Mark
private-state paths as gated review, not as ready-to-send drafts. If a caller
asks the skill to send, mutate an account, bypass an approval gate, or provide
credential recovery instructions, return refused.
The authority scope is classification and draft preparation only. The proof
surface is the sealed receipt containing the request summary, matched signals,
recommended path, draft proposal if any, and send gate. Any live customer send
requires a separate send-as receipt.
The runner emits runx.support.triage_reply.v1:
{
"classification": "how_to | billing | account_access | bug | abuse | unknown",
"severity": "low | medium | high | critical",
"confidence": 0.78,
"recommended_path": "reply_draft | request_info | engineering_intake | billing_review | account_review | abuse_review | manual_review",
"evidence": {
"source": "fixture:safe-how-to",
"source_summary": "How do I verify my sending domain?",
"matched_signals": ["verify", "dns", "domain"],
"missing_context": [],
"taxonomy_coverage": ["how_to", "billing", "account_access", "bug", "abuse", "unknown"],
"private_data_required": false,
"send_side_effects": "none"
},
"draft_email": {
"proposed": true,
"subject": "Re: How do I verify my sending domain?",
"body": "..."
},
"send_gate": {
"status": "requires_human_approval",
"action": "send_customer_email",
"rationale": "..."
}
}
runx skill "$PWD" \
--runner triage \
--input-json support_request='{
"customer_name": "Mira",
"customer_email": "mira@example.test",
"subject": "How do I verify my sending domain?",
"body": "I added the DNS records. What should I check next?",
"source": "fixture:safe-how-to"
}' \
--input-json policy='{
"product_name": "ExampleDesk",
"support_signature": "ExampleDesk Support"
}' \
--json
Expected result: classification = how_to, recommended_path = reply_draft,
draft_email.proposed = true, and send_gate.status = requires_human_approval. The run does not send the email.
support_request: object with subject, body, optional customer_name,
optional customer_email, optional source, and optional refs.policy: optional object with product_name, support_signature,
safe_reply_topics, and escalation_contacts.classification: request class.severity: operational severity.confidence: number from 0 to 1.recommended_path: next safe handling path.evidence: matched signals, missing context, source summary, and taxonomy
coverage.draft_email: proposed customer reply or blocker reason.send_gate: always requires human approval before delivery.