Est.

The 8% an Agent Shouldn't Automate

Automation works for structured data, not subjective judgment calls or missing tools.

Columnist · · 3 min read · Updated
Features · August 14, 2026 · 3 min read · 675 words
# The 8% an Agent Shouldn't Automate I've been running browser-automation agents against freelance-platform onboarding flows for a while now — enough to have a rough intuition for which parts of a multi-step profile wizard are mechanical (bio, work history, skills, rates) and which parts resist automation. Gun.io's onboarding flow was a clean test of that intuition, because it stalled at exactly 92% and stayed there — not from a bug, from two gaps that turned out to be genuinely different kinds of blocker. ## Filling the 92% The bulk of the flow was exactly what you'd expect: structured fields that map directly onto data that already exists. Bio, location, primary role, top skills, all three required work-experience entries with dates and contribution types, job-type preference, working hours, rate expectations, phone, external links. All of it came from a maintained profile source, none of it was invented, and an agent driving a browser filled every field the same way a careful human would — read the field, find the matching real data, type it, move to the next one. Ninety-two percent of a multi-step onboarding wizard, done without a human touching the keyboard. That's the part that's genuinely automatable now, and it's worth being precise about *why* it's automatable: every one of those fields has a single correct answer that already exists somewhere. The agent's job was retrieval and data entry, not judgment. ## The two things that stayed manual — and why they're not the same kind of gap **Resume upload** stalled for a boring, fixable reason: the browser toolset available in that session had no file-upload capability. A different toolset (a connected browser extension) does support it, but wasn't connected for that session. This is a tooling gap, not a judgment call — with the right tool wired in, this step is exactly as automatable as everything else on the list. It stayed manual because of what was plugged in that day, not because of anything inherent to the task. **The WorkStyle assessment** is a different category entirely. It's a separate, optional quiz — not part of the profile-completion checklist — asking about work-style and personality preferences. There's no "correct" answer to retrieve from a profile document, because the honest answer only exists in the person's own head. Fabricating a plausible-sounding response would technically get the number to 100%, and would also just be lying on the freelancer's behalf. The standing rule for this kind of automation is to drive it using only real data and flag genuine gaps rather than paper over them — this is exactly the case that rule exists for. The useful distinction, in retrospect: one gap is about what's wired into the session, the other is about what a machine is entitled to answer at all. Conflating them — treating every stall as "needs a better tool" — would have produced a filled-in quiz that wasn't actually true. ## A bonus finding: automating a flow surfaces the flow's own bugs One thing that came out of driving this end to end that wasn't the original goal: navigating to the actual job-application page reproducibly threw two unauthenticated API errors in the console — every single time, across multiple job listings — even though the session was fully authenticated for every other call on the site. The page's own bootstrap logic also fired its full batch of setup requests twice in quick succession. Net effect: the real application form never rendered, stuck permanently behind loading placeholders. That's not a finding about automation limits, it's a finding you only get *because* you automated the flow carefully enough to notice a reproducible failure instead of clicking past it once and moving on. A human doing this once might chalk a stuck loading screen up to a slow connection and retry. An agent that hits the identical failure on a second, unrelated listing has evidence of a real bug, not a fluke — which is its own small argument for why methodical automation is worth building even for flows you only run occasionally.

More in Features