BusinessFramework12 min readPublished August 12, 2026

A work-design choice, not a verdict · four criteria decide per task · both vendors ship both modes

Synchronous or Background: Choosing How Agents Work

Background agents finish more while you are away — and hand you a large diff to review cold. Synchronous work keeps you in the loop — and caps how much runs at once. Neither mode wins in general. Four criteria decide which one a given task belongs in: reversibility, review cost, latency sensitivity, and how precisely done can be specified up front.

DA
Digital Applied Team
Senior strategists · Published August 12, 2026
PublishedAugust 12, 2026
Read time12 min
Sources6 primary pages
Review sweet spot
200–400
LOC per sitting · oft-cited SmartBear/Cisco study
Usually too large
~1,000
LOC in one changelist · Google eng practices
Background throughput
roughly the quota of N sessions · Claude Code docs
Review fatigue onset
~60min
of continuous review, per the same study

Synchronous versus background agent workflows is now a real work-design decision, because the major coding agents ship both modes side by side: Claude Code's agent view dispatches full sessions that run without an attached terminal, and Grok Build's Agent Dashboard puts every session on one screen to be stepped into only when input is needed. The question is no longer whether you can run agents unattended — it is which tasks should be.

The stakes are easy to misread in either direction. Send everything to the background and you trade steady context for a queue of large diffs reviewed cold, which the code-review literature suggests is where human defect-finding is least effective. Keep everything synchronous and you cap throughput at the speed of your own attention while the tooling for parallel dispatch sits unused.

This guide treats the choice as a tradeoff, not a verdict. It walks through what the two vendors actually ship, the independent evidence on diff size and review effectiveness — the strongest data this decision can borrow — and four selection criteria you can apply per task: reversibility, review cost at the plausible diff size, latency sensitivity, and how precisely done can be specified before dispatch.

Key takeaways
  1. 01
    It is a tradeoff, not a verdict.Background agents complete more while you are away; synchronous work keeps your context intact when the result matters. Both vendors ship both modes — the mode is a property of the task, not the team.
  2. 02
    Background throughput is metered, not free.Claude Code documents no hard cap on concurrent local sessions, but each consumes subscription usage independently and roughly linearly — N background agents use on the order of N times one session's quota.
  3. 03
    The review is the bottleneck the literature can price.An oft-cited SmartBear/Cisco study puts effective review at 200–400 lines per sitting with effectiveness dropping past about 60 minutes; Google's own guidance calls ~100 lines a reasonable changelist and ~1,000 usually too large.
  4. 04
    Four criteria decide per task.Reversibility of the change, review cost at the diff size the task will plausibly produce, latency sensitivity of the decision loop, and how precisely done can be specified up front. Fail any one and the task leans synchronous.
  5. 05
    Blocked sessions wait — they do not guess.Both Claude Code's agent view and Grok Build's dashboard park sessions in a needs-input state until a human answers. Ambiguous, judgment-heavy tasks therefore gain little from the background and lose the steering loop.

01The TradeoffMore done while you are away, reviewed cold when you return.

The pitch for background agents is throughput: dispatch several focused sessions, close the laptop lid on none of them, and come back to completed branches. The pitch for synchronous work is fidelity: you watch the approach form, redirect early, and review in small increments while the intent is still fresh in your head. Both pitches are true. The cost of each is the other's benefit.

The background mode's hidden line item is the handback. A session that ran unattended for an hour returns its work as a finished artifact — a branch, a draft PR, a transcript — and the human reviewing it starts from zero context. There is no live narration of the reasoning that produced the diff unless you scroll back through the transcript after the fact. The synchronous mode's hidden line item is concurrency: one attended loop at a time, at the speed of your own attention.

Attached
Synchronous tight loop
watch · steer · review incrementally

You see the approach as it forms and correct it before it compounds. Context stays warm; review happens in small pieces. Throughput is capped at one attended loop at a time.

Keeps context when the result matters
Dispatched
Background session
dispatch · monitor · review at completion

Several sessions run in parallel while you do other work. The handback is a finished diff reviewed cold — and the larger the unattended run, the larger that single diff tends to be.

More completed while you are away

What makes this worth a framework rather than a preference is that the two costs are not symmetric across tasks. A mechanical dependency bump loses almost nothing to a cold review; an ambiguous product change loses almost everything. The rest of this guide is about telling those apart before you dispatch, not after.

02The Async SurfaceWhat Claude Code's agent view actually ships.

Claude Code's agent view — labelled a research preview at the time of writing — dispatches and monitors multiple full Claude Code sessions from one screen, each running without an attached terminal. You can start a background agent from the dashboard (claude agents), from a shell (claude --bg with a prompt), by moving the current session to the background (/bg), or by forking it (/fork) so a copy continues in the background while the original stays attached.

The monitoring model is built around states, not streams. Sessions group under “Needs input”, “Working”, and “Completed”, with one-line activity summaries generated by a smaller model. You peek at output without attaching, or attach for a full interactive session when something needs steering. Two documented behaviors matter most for the workflow decision:

  • Blocked means blocked. Background sessions use the same permission model as interactive ones. A session waiting on a permission, sandbox, or MCP prompt moves under “Needs input” and waits until answered — it does not silently proceed. Fully unattended bypass requires an explicit flag plus an interactive disclaimer acceptance, and the docs describe that mode as “not suitable for unwatched sessions.”
  • Isolation by default. Before editing files, background sessions move into isolated git worktrees, auto-commit and push branches on completion — never directly to main or master without explicit approval — and can open draft PRs. The review artifact is the PR or the transcript: this is the concrete mechanism behind reviewing a large diff cold.

Agent view is one point on a documented spectrum, not the whole story. The same docs position the interactive terminal for tight-loop work, the Agent SDK for custom orchestration, and routines — cloud-scheduled recurring runs that continue with your machine off — for unattended recurring work. Background agents are also distinct from subagents, the nested child sessions inside one conversation (default maximum nesting depth of three in the current docs, tunable). If the persistent-teammate end of that spectrum is the part you are weighing, we compared the two operating models in AI teammate vs AI agent: what delegation changes.

Metered concurrency
Claude Code documents no hard cap on concurrent local sessions — but each background agent consumes subscription usage independently and roughly linearly, so running N agents uses on the order of N times the quota of one. The “more gets done while you are away” half of the tradeoff is real, but it is metered concurrency, not free concurrency. Budget the dispatch, not just the review.

03The Second VendorGrok Build ships two async layers — do not conflate them.

Grok Build's asynchronous story splits into two mechanisms that operate at different levels, and conflating them muddles the workflow decision. The first is background tasks at the shell-process level: dev servers, builds, and test suites can be explicitly backgrounded, or converted mid-run with a keystroke, and monitored from a dedicated tasks pane. For continuous log watching, the agent can attach a monitor to a script so each printed line becomes a notification — with a documented caution that monitors should remain selective, since every output line interrupts the conversation.

The second mechanism — the actual analogue to Claude Code's agent view — is the Agent Dashboard, launched in June 2026, which operates at the session level.

“The Agent Dashboard puts every Grok Build session on one screen. See what each is doing, run them in parallel, and step in only when input is needed.”— x.ai, Agent Dashboard launch announcement

The documented mechanics rhyme closely with Claude Code's: sessions sort by state with anything waiting for input pulled to the top; approval prompts surface inline with keyboard answers; selecting a row peeks at the latest output without leaving the dashboard, and replies queue until an active session's current turn ends. Sessions can be grouped by working directory for multi-repo work, and closing the dashboard leaves every session running. One deliberate design choice stands out: subagents — Grok Build's independent child sessions, with read-only and plan-only built-in types alongside the general-purpose one — roll up under the parent session that launched them, so the dashboard shows dispatched work rather than the full fan-out beneath it.

Notably, Grok Build's documentation also describes reading a subset of Claude Code's managed settings for mixed-fleet interop, and its session picker resuming Claude Code, Codex, and Cursor sessions. At least one vendor, in other words, treats the sync-versus-background decision as portable across harnesses — a work-design question rather than a product-lock-in question, which is exactly how this guide treats it.

Recurrence expiry
Recurring prompts expire
7days

Grok Build's recurring /loop prompts are documented to expire after seven days — scheduled background work is deliberately short-lived unless renewed.

docs.x.ai · background tasks
Scheduling cap
Concurrent scheduled tasks
50

The documented ceiling on concurrent scheduled tasks — a published limit on the scheduling layer, distinct from interactive parallel sessions.

docs.x.ai · background tasks
Minimum interval
Between recurring runs
60s

Recurring prompts cannot fire more often than once a minute — a floor that keeps loops and monitors from becoming their own noise source.

docs.x.ai · background tasks
A narrow absence, noted narrowly
The Grok Build documentation pages reviewed for this guide — the overview, the background-tasks and subagents pages, and the Agent Dashboard launch post — publish no parallel-session cap or per-session cost multiplier, where Claude Code explicitly documents roughly linear quota scaling per background agent. That is an absence on those specific pages, not a claim about the full docs tree — and not evidence the economics work differently. Until you can cite a number, budget parallel sessions as metered there too.

04The EvidenceWhat the review literature says about diff size.

The strongest evidence this decision can borrow is not about AI at all. It is the code-review-effectiveness literature, and two independent bodies of it converge on the same shape: human review quality degrades as the amount reviewed in one sitting grows.

The first body is an older, oft-cited SmartBear/Cisco study of peer code review, as summarized on SmartBear's own best-practices page. Its recommendations are specific: review no more than 200–400 lines of code per sitting, and keep inspection pace under roughly 500 lines per hour — the study reports a significant drop in the density of defects found at faster rates.

The headline numbers, with their denominator
The same study reports that a review of 200–400 lines over 60–90 minutes yields 70–90% defect discovery — as a share of the defects that existed in the reviewed code and were later confirmed, per the study's own defect-tracking methodology — and that review effectiveness starts dropping after roughly 60 minutes of continuous review. A softer companion finding: lightweight, informal review was reported to take under 20% of the time of formal line-by-line inspection while finding a comparable number of bugs — process weight is a separate lever from diff size.

The second body is Google's own published engineering practice — not a controlled experiment with an effect size, but the stated review culture of one of the largest codebases in the world, and independently written from the SmartBear lineage. Google's small-changelists guidance puts numbers on it: around 100 lines is usually a reasonable changelist, around 1,000 lines is usually too large, and context matters — “A 200-line change in one file might be okay, but spread across 50 files it would usually be too large.” Reviewers are explicitly empowered to reject a change for size alone.

“It's easier for a reviewer to find five minutes several times to review small CLs than to set aside a 30 minute block to review one large CL.”— Google engineering practices, small-CLs guidance

Review-size thresholds across the literature · lines of code

Sources: Google engineering practices; SmartBear/Cisco review study. Bars scaled to 1,000 LOC = full width.
Google: a reasonable changelistgoogle.github.io/eng-practices · usually a good size
~100 LOC
Typical small change at GoogleSoftware Engineering at Google, ch. 9
~200 LOC
SmartBear/Cisco: max per review sittingrecommended ceiling before effectiveness drops
≤400 LOC
Google: usually too largereviewers may reject on size alone
~1,000 LOC

The book-length treatment, Software Engineering at Google (chapter 9), adds cultural texture: “small” changes there are typically around 200 lines, and roughly 35% of changes at Google touch a single file — as a share of all changes, per the book's own account. Google also targets review feedback within about one business day, but that is a responsiveness norm, a different axis from size; keep the two separate when you borrow the numbers.

One distinction has to be stated plainly: every study and guideline above is about review of human-authored code. None of them measured AI-generated diffs. What connects them to this post's question is structural, and it is our own analysis: a background agent that runs unattended for longer produces a larger single diff at handback, and the human reviewing it is — structurally — doing exactly the kind of single large-changelist, long-sitting review that both Google's guidance and the SmartBear/Cisco data associate with lower defect-finding effectiveness. The literature does not prove the mapping; it prices the review shape the mapping produces.

05The FrameworkFour criteria that decide per task.

Put the vendor mechanics next to the review evidence and a usable decision rule falls out. The four criteria below are our own synthesis — no vendor or study bundles them this way — but each one is anchored to something documented or measured above. Score a task on all four before dispatching it; a task that fails any one criterion leans synchronous, or needs splitting until it passes.

Four selection criteria for choosing between synchronous and background agent workflows: reversibility, review cost at the plausible diff size, latency sensitivity of the decision loop, and how precisely done can be specified. Synthesis by Digital Applied from vendor documentation and code-review literature, August 2026.
CriterionThe question to askLeans background whenLeans synchronous whenDocumented mechanic to lean on
ReversibilityIf the result is wrong, what does undoing it cost?The output lands on an isolated branch with no side effects outside version control — wrong just means unmerged.The task touches things git cannot roll back: migrations, deployments, external systems, anything expensive to unwind.Claude Code background sessions edit inside isolated git worktrees and push branches — never directly to main or master without explicit approval.
Review cost at the plausible diff sizeHow many lines will this plausibly come back as?The scope suggests a diff inside the 200–400-line range the SmartBear/Cisco study treats as a per-sitting sweet spot.The task will plausibly return 1,000+ lines in one shot — the size Google's own guidance calls usually too large for one changelist.Claude Code's documented guidance favors breaking large asks into several focused agents rather than one broad dispatch.
Latency sensitivity of the decision loopWill the task need a human judgment call mid-flight?Requirements are settled and the agent can run to completion without a taste call or a scope decision.Requirements are ambiguous or the work involves design judgment — a blocked background session waits; it does not guess past you.Both surfaces park sessions in a needs-input state and block until answered rather than silently proceeding.
How precisely done can be specifiedCan you write a checkable definition of done before dispatch?Acceptance criteria are explicit up front: the tests that must pass, the behavior that must hold, the artifact that must exist.Done only becomes clear by looking at intermediate output — which is another way of saying the loop needs you in it.Claude Code's documented prompt guidance: specific, task-focused asks with concrete context — file paths, PR numbers, URLs.

Two of the four deserve a second look because they are commonly misjudged. Reversibility is about the landing zone, not the tooling: Claude Code's worktree isolation controls where changes land, but it is neutral on how large the resulting diff is when you review it — an isolated 2,000-line branch is still a 2,000-line review. And review cost should be estimated at the diff size the task will plausibly produce, not the size you hope for. A task that will plausibly come back inside the 200–400-line sweet spot is a materially safer background candidate than one that will plausibly return 1,500 lines in one shot — independent of how good the agent is.

06In PracticeRunning the split without losing the thread.

The vendors' own best-practice guidance for background dispatch reads like a checklist for the fourth criterion. Claude Code's documented advice: be specific and task-focused rather than open-ended; include concrete context — file paths, PR numbers, URLs; break large asks into several focused agents rather than one broad one; peek in the first minute to catch early permission prompts; and use plan mode for agents you intend to review, reserving auto-approval modes for trusted, well-scoped tasks. Writing that checkable definition of done is its own craft — the companion guide published alongside this one, defining done in agent prompts, goes deep on exactly that.

Applied to common task shapes, the criteria sort cleanly:

Mechanical & bounded
Refactors, dependency bumps, scoped fixes

Reversible branch, explicit acceptance criteria, plausible diff inside the review sweet spot, no mid-task judgment calls. All four criteria pass — the canonical background candidate.

Send to background
Ambiguous & judgment-heavy
Product changes with taste calls

Done cannot be specified up front, and the loop needs a human mid-task. A background session either blocks on needs-input or optimizes for the wrong target. Keep it attached.

Keep synchronous
Large & splittable
Migrations, cross-cutting changes

The single-dispatch diff would land far past the ~1,000-line threshold. Split into several focused agents, each returning a reviewable branch — per Claude Code's own documented guidance.

Split, then background
Recurring & unattended
Reports, checks, scheduled maintenance

Not an ad-hoc background session at all — this is the scheduled tier: Claude Code routines or Grok Build recurring prompts, with Grok Build's documented expiry and concurrency limits.

Schedule it

The other operational habit worth stealing is triage order. Review the background queue the way both dashboards sort it: blocked sessions first — they are wasting wall-clock time and quota — then completed ones while your memory of the dispatch is freshest. And if you are still deciding which work is safe to hand over at all, the ops-side companion, what to hand an AI teammate first, applies the same reversible-and-verifiable logic one level up from the code.

07ImplicationsWhat this means for teams adopting agents.

The trend worth reading is convergence. Google's Jules, the cloud-execution platforms in OpenAI's orbit, Cursor's automations, Claude Code's agent view, Grok Build's dashboard — every serious harness on that list now ships an unattended tier, and at least one vendor builds explicitly for mixed fleets. That tells you the async capability is table stakes; it does not tell you it is the right default. The interesting divergence is in the guardrails: state sorting, needs-input blocking, worktree isolation, and quota metering all exist because the vendors themselves are engineering around the same two failure modes — unattended sessions that guess and handbacks too large to review well. The product surfaces are, in effect, agreeing with the review literature.

Looking forward, we expect the review side to become the differentiator. Dispatch is largely solved — one keystroke, one prompt box. What is not solved is making a cold diff cheap to review: the transcript is the only narration, and nothing in either vendor's documentation reviewed for this guide shrinks the diff after the fact. Teams that thrive with background agents will be the ones that constrain diff size at dispatch time — scoping asks so the handback lands inside the review sweet spot — rather than the ones that dispatch the most sessions. For the product-by-product view of the async tier, see our guides to Google's Jules, OpenAI's Ona acquisition and long-running agents, and Cursor's always-on automations. And if you are designing this operating model for a real team — which tasks go where, who reviews what, how quota gets budgeted — that is precisely the kind of engagement our AI transformation practice runs.

08ConclusionDecide at the task, not the team.

Work design, August 2026

The mode is a property of the task, not a house style.

Synchronous versus background is not a question either vendor will answer for you, because both ship both modes and document the tradeoff honestly: background sessions get more done while you are away and hand back finished diffs; synchronous sessions keep your context warm at the price of one attended loop at a time. The review literature supplies the missing number — human review effectiveness falls as single-sitting diff size grows — and that number is what makes the choice designable rather than a matter of taste.

The four criteria are the whole method: reversibility of the change, review cost at the plausible diff size, latency sensitivity of the decision loop, and how precisely done can be specified before dispatch. Pass all four and the task belongs in the background. Fail any one and it belongs next to you — or it belongs in pieces, split until each piece passes.

The practical starting point is unglamorous: keep new task classes synchronous, graduate the ones that repeatedly come back clean at reviewable sizes, and treat every oversized handback as a scoping failure at dispatch time rather than a review failure at handback time. The teams that get compounding value from background agents will not be the ones running the most sessions — they will be the ones whose diffs stay small enough to review well.

Design your agent operating model

Background agents pay off when the diffs stay reviewable.

We help teams design their agent operating model — which tasks run synchronous, which go to the background, how review stays effective, and how quota gets budgeted — grounded in what the tools actually document.

Free consultationExpert guidanceTailored solutions
What we work on

Agent workflow engagements

  • Task-to-mode mapping with the four-criteria framework
  • Dispatch standards — definitions of done, prompt scoping
  • Review workflows sized to the diff, not the backlog
  • Quota and concurrency budgeting across harnesses
  • Team rollout: synchronous first, graduate by evidence
FAQ · Sync vs background agents

The questions we get every week.

Synchronous means the agent session is attached: you watch the work form, answer questions mid-task, and review incrementally while your context is warm. Background (async) means you dispatch a full session that runs without an attached terminal — Claude Code's agent view and Grok Build's Agent Dashboard are the two examples this guide documents — monitor it from a shared screen, and review the finished work at completion. The structural difference is where the human attention lands: spread across the run in synchronous mode, concentrated into a single cold review at handback in background mode. Neither is better in general; the right mode is a property of the individual task.
Related dispatches

Continue exploring agent workflows.