Articles · Artificial intelligence · · 4 min read

When a Workflow Beats an Agent

Autonomy is a cost, not a feature. Most tasks that reach for an agent are better served by a fixed sequence of steps you can actually test and reason about.

By Matthieu de La Mettrie · Founder, Skopura

The decision to build an agent is usually made at the wrong altitude. The question that matters is narrower: does the path through the task change from run to run, or only the data? If only the data changes, the path can be fixed, and a fixed path is a workflow.

What actually differs

A workflow can call a model at every step and still be a workflow, because you decided the steps. What you give up by fixing the sequence is the ability to handle inputs whose shape you did not anticipate. What you gain is that every run is the same run, and the same run is one you can test.

only the data changes

yes

yes

genuinely open-ended

yes

no

New task

Does the sequence of steps
change from run to run?

Workflow

Can the branches
be enumerated?

Workflow with routing

Is a wrong action
cheap to reverse?

Agent — narrowest tools

Workflow + human step

Choosing between a fixed and a decided sequenceconcept diagram — no data

Run the task through that diagram honestly and most candidates land on the left.

DimensionWorkflowAgent
Evaluation surfaceOne path. Test the path.Every reachable state. Grows with tool count.
Failure modeA step throws. You know which one.Wrong plan. The trace still looks plausible.
LatencySum of known steps.Unbounded until the loop decides to stop.
Blast radiusWhat the steps touch.What any tool combination can touch.
Operating characteristicsqualitative — no benchmarks

The blast radius argument

An agent’s blast radius is every combination of tools it can use, in any order. With n tools there are n(n minus one) ordered ways to chain any two of them.

2 tools2ordered paths3 tools6ordered paths4 tools12ordered paths
Ordered tool-to-tool pathsschematic — structural, not measured

A workflow’s evaluation harness grows roughly with the number of steps; an agent’s grows with the number of reachable states.

workflowagentpermitted actions →evaluation cost →
How the evaluation surface scalesillustrative — shows shape, no values

Where the engineering time goes

agent in productiontool-safety proofsfailure tests per toolblast-radius reviewevaluation harnessregression set for non-determinismtrace scoringplanner tuningprompt and stop-condition iterationretry and budget policy
What building an agent decomposes intostructure — not sized by data

Keep the model, drop the loop

The middle path is a fixed sequence where steps call a model for judgement, but the order never varies. Structured outputs make this reliable.

step 2 of 4 — classify, then route deterministicallyts
1234567
// the model decides the category — code decides what happens next
const { category } = await classify(input, {
schema: { category: "billing | technical | account" },
});

// no agent, just a switch. every branch is testable in isolation.
return ROUTES[category](input);
Should this task be an agent?

This is a workflow. Fixed sequence; call a model at the steps that need judgement.

Where to land

Start every design as a workflow. Move a step to an agent only when you have tried to enumerate its branches and genuinely cannot — and even then, give it the smallest tool set that does the job. Autonomy you did not need is surface area you now have to defend.

agentic-ai · architecture · evaluation · workflows

Share on LinkedIn ↗

Work with Skopura

Facing this bottleneck in your own estate?

Skopura builds production-grade lakehouse pipelines, evaluation harnesses, and provides fractional data leadership. Thirty-minute call, no deck.

Book a 30-min call →Email directly

Further reading

Artificial intelligence · 8 min

Eval Harnesses for Non-Deterministic Systems

How to design an evaluation harness for agentic and LLM systems: hard asserts, graded rubrics, fixture hygiene, judge calibration and what a red run blocks.

Artificial intelligence · 7 min

Blast Radius Is a Tool-Boundary Problem

An agent's blast radius is set by its tool contracts, not its prompt. How to scope authority, gate writes, and keep the boundary testable rather than hopeful.