Both workflows and agents run automatically when a ticket arrives (or on a schedule). The choice is which one fires: a fixed sequence of smart actions or an agent that picks tools at runtime.Documentation Index
Fetch the complete documentation index at: https://docs.neoagent.io/llms.txt
Use this file to discover all available pages before exploring further.
The rule of thumb
Default to a workflow when Neo ships a smart action for the job. Smart actions like Ticket Triage, Dispatch Ticket, Suggest Resolution, Escalate Ticket, and Find Ticket to Merge With carry prompting and guardrails Neo has tuned across many MSPs. An agent built to do the same job inherits none of that — you’d be teaching it the same task from scratch through custom instructions, and quality typically drops. Use an agent for everything else — jobs where no smart action exists, or where runtime tool-picking is the actual value (open-ended L1 troubleshooting, multi-step Microsoft 365 ops, documentation, QA audits, scheduled cross-system reports).Decision table
| Job | Default | When to switch |
|---|---|---|
| Triage — classify type / subtype / priority / queue | Workflow — Ticket Triage | Switch to an agent only if the routing logic becomes too complex for the smart action’s settings to express |
| Dispatch — pick the right technician | Workflow — Dispatch Ticket | Switch to an agent only if the routing logic becomes too complex for the smart action’s settings to express |
| Resolution suggestion — one-shot: search KB + similar tickets, write an internal note | Workflow — Suggest Resolution | Switch to an agent if you want end-user communication, RMM script invocation, or follow-up loops (anything beyond writing a single note to the technician) |
| Escalation — route urgent / SLA-breach tickets | Workflow — Escalate Ticket | Switch to an agent only if the routing logic becomes too complex for the smart action’s settings to express |
| Merge duplicates — detect dupes, merge into parent | Workflow — Find Ticket to Merge With + Merge Ticket | Switch to an agent only if the routing logic becomes too complex for the smart action’s settings to express |
| Everything else — L1 troubleshooting, M365 ops, documentation, QA / audits, scheduled reports | Agent | n/a — no smart action exists; the agent’s runtime flexibility is the point |
Why workflows win for the first five
Neo’s smart actions are tuned across many tenants — every prompt improvement Neo ships to Ticket Triage benefits every customer running Ticket Triage. They’re also:- Cheaper — a single deterministic call per ticket, not an LLM choosing between tools.
- More predictable — same input, same output structure, every time.
- Easier to debug — a linear trace, not a branching agent transcript.
custom_instructions, runs without Neo’s guardrails, and tends to either over-explain or under-decide.
Why agents win for everything else
For open-ended jobs, the agent’s value is picking tools at runtime:- L1 troubleshooting — read the ticket, check RMM device state, search past tickets, optionally run a script, reply to the user.
- Microsoft 365 operations — user offboarding, license reconciliation, mailbox permission audits, environment documentation.
- Documentation — write SOPs into IT Glue or Hudu, audit existing records for staleness.
- QA and audits — review past tickets or time entries against a policy.
- Scheduled reports — pull data across PSA, M365, and RMM, summarize for the team.
