Skip to main content

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.

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.

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

JobDefaultWhen to switch
Triage — classify type / subtype / priority / queueWorkflow — Ticket TriageSwitch to an agent only if the routing logic becomes too complex for the smart action’s settings to express
Dispatch — pick the right technicianWorkflow — Dispatch TicketSwitch 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 noteWorkflow — Suggest ResolutionSwitch 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 ticketsWorkflow — Escalate TicketSwitch 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 parentWorkflow — Find Ticket to Merge With + Merge TicketSwitch 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 reportsAgentn/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.
An agent built to do the same job has to be re-taught the rules through 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.
For these, no workflow path exists — there’s no smart action for “offboard a Microsoft 365 user” or “write an SOP”. The agent picks the tools it needs and chains them.