ServiceNow Ticket Auto-Filling: A Practical Agent
Ten fields. Five tools. One agent. The integration that fills tickets correctly more often than the humans did, with the gold-set used to prove it.
The 10 fields
Common fields: title, description, urgency, impact, category, sub-category, affected service, assignee, environment, links to evidence.
Each field has a constrained set of valid values (urgency: 1-4; category: defined list). The agent's output respects the constraints.
Where the model picks a value, structured output forces it to pick from the enum. No free-form leakage into structured fields.
The 5 tools the agent uses
Pull alert payload (the trigger event).
Pull service registry (to identify the affected service from the alert).
Pull on-call schedule (to identify the assignee).
Pull recent metrics (for the description).
Pull recent deploys (for context).
The gold-set proves accuracy
100 historical tickets, hand-validated by the team. The agent fills in each based on the inputs available at the time of original filing.
Compare agent output to original ticket. Field-by-field accuracy: target 90%+ on each field.
Disagreements get reviewed. Sometimes the agent is more accurate than the human (the human typoed); sometimes the agent missed context.
Human review before file
Agent fills the ticket as a draft. Human reviews; edits; submits.
After 90 days of reliable performance on a category, auto-file is enabled for that category. Other categories remain draft-only.
Auto-file with notification. Even when auto-filing, the team gets a notification with a 5-minute window to override.
How this compounds
Each ticket the agent fills gets reviewed (or auto-filed). The reviews train the next iteration.
Common issues identified in review become prompt updates. The agent improves field by field.
After a year, the agent fills tickets more accurately than the average team member. Team uses agent as their default.