Scope Rules: When a Problem Actually Needs an Agent
These rules decide whether a problem should be an agent at all, versus a script, a fixed workflow, a single LLM call, or a human process with light AI assistance.
Search across all documentation pages
These rules decide whether a problem should be an agent at all, versus a script, a fixed workflow, a single LLM call, or a human process with light AI assistance.
Most early project pain is mis-scope: an agent where deterministic automation would be cheaper and more reliable, or a brittle script where mid-run tool choice is actually required.
| Signal | Prefer agent | Prefer non-agent |
|---|---|---|
| Path known end-to-end | Rarely | Script, workflow, or pipeline |
| Mid-run tool choice depends on observations | Yes | Fixed DAG / if-else workflow |
| Needs natural language understanding only once | Maybe single LLM call | Not a multi-turn agent |
| Actions are irreversible or high stakes | Only with human gates | Strong automation + approvals |
| Success criteria are crisp and testable | Yes, if branching remains | Still may be a script if path is fixed |
| Problem is "chat with docs" only | Often RAG Q&A, not agent | Retrieval + answer, no tool loop |
pytest pass on package X" is.| Question | If yes | If no |
|---|---|---|
| Is the happy path fully known and stable? | Script / workflow | Continue |
| Must next actions depend on live tool results? | Agent candidate | Single LLM or script |
| Is success objectively checkable? | Continue | Clarify goal before building |
| Are side effects reversible or gated? | Continue | Add gates or refuse autonomy |
| Can a cheaper non-agent meet the SLA? | Prefer non-agent | Agent with bounds |
No.
A single predetermined tool call from an LLM is tool-using chat.
An agent typically loops: observe results, decide again, act again, until a stop condition.
Yes, if the long tail of branches is expensive to encode and rare cases matter.
Measure how often the long tail appears before paying agent complexity forever.
Detailed enough that a new engineer would not grant a dangerous tool "just in case."
Name systems and action types, not only vague "be careful" language.
Ship agent UX if needed, but implement a bounded workflow underneath when the path is fixed.
Do not accept unbounded loops to satisfy a label.
Scope defines what "done" means; stopping rules enforce exit when done, failed, or timed out.
Without scope, stop checks have nothing crisp to evaluate.
Usually no.
Retrieval-augmented answering is often a single-shot or short pipeline unless it also plans multi-step tool use.
When steps and branches are known, need reliability, and should be edited by operators without prompt archaeology.
Same fit rules: checkable goals, tool necessity, reversibility.
Coding agents often have strong oracles (tests); business agents need explicit success checks you invent.
Read-heavy, low-blast-radius tasks with clear done checks: ticket triage suggestions, internal research drafts, or test-failure summarization - not unsupervised prod changes.
Only through an explicit replan or human approval.
Silent scope expansion is how agents wander into unrelated tools and data.
One paragraph: problem, why path is fixed, chosen non-agent shape, revisit trigger if branches explode.
Especially yes.
Personal shell agents have high blast radius; start read-only and allowlist commands.
Stack versions: Pins from the category manifest (verify at build): OpenRouter (~315+ models, July 2026 pricing/fees); LangGraph 1.0+; CrewAI 1.14+; Microsoft Agent Framework 1.0; Vercel AI SDK 6; Pydantic AI (latest); LlamaIndex (latest); OpenAI Agents SDK (latest + MCP); MCP (Linux Foundation governance); A2A (HTTP+SSE+JSON-RPC 2.0); Solana
@solana/web3.js+@solana/spl-token.
Reviewed by Chris St. John·Last updated Jul 16, 2026