What Is an Agentic Coding Assistant? A Full Run
9 min läsning
Key takeaways
- An agentic coding assistant takes a task, plans it, edits across files, runs commands, verifies its own output, and hands you a diff without step-by-step prompting.
- A single agentic run has five stages: task intake, planning, tool calls, verification, and handoff, and each stage is a common failure point.
- Task scoping quality caps everything downstream, so a vague ticket produces a vague run and repeated fix rounds are usually scoping failures, not model failures.
- Merge an agent's pull request only against written acceptance criteria, verified by running the tests yourself and checking the diff for scope creep.
- Parallel agents need isolation, typically git worktrees, and the real bottleneck is coordinating the fleet rather than agent speed.
An agentic coding assistant is a tool that takes a task, plans the work, edits across multiple files, runs commands, checks its own output, and hands you a diff to review, without you prompting each step. This article walks through one complete agentic run step by step, and names where each step tends to break.
What does 'agentic' mean in coding, in one sentence?
An agentic coding assistant is a system that takes a task, plans it, edits code across files, runs commands, checks its own output, and iterates without you typing the next prompt. Autocomplete suggests a line; an agent completes the whole ticket. Cursor documents this distinction across its IDE agent and background cloud agents, which pick up tasks and return a diff for review (Cursor docs). The practical shift: your bottleneck moves from writing code to keeping agents busy, which is the cost problem Aerunit breaks down here.
What is agentic coding, and how did we get here from autocomplete?
Agentic coding means the assistant takes a task, plans it, edits files across the repo, runs commands, checks its own output, and iterates until the work is done or it needs you. Autocomplete never touched your repo; an agent works inside it.
Autocomplete: suggest, don't act
Copilot-style tools predicted the next few lines. They had no memory of your task, no ability to run tests, and no way to fix what they got wrong. You accepted or rejected each suggestion, one at a time.
Chat: answer, don't touch the repo
Chat-based tools could explain code and draft snippets, but every change was copy-paste. The model never saw whether its suggestion compiled, and the routine around applying edits stayed on you.
Agentic: plan, edit, run, iterate
An agentic coding assistant closes that loop: it reads the codebase, writes changes across files, runs the tests, reads the failures, and tries again. The shift from autocomplete to this is the shift from suggesting text to completing tasks, which is what the newer agentic AI coding tools are built around.
How is an agentic coding assistant different from autocomplete or chat-based AI tools?
Autocomplete predicts your next token. A chat window answers questions and hands you code to paste. An agentic coding assistant closes the loop: it plans, edits files, runs commands, reads the results, and iterates until the work is done. Anthropic's tool-use documentation describes this loop directly: the model decides to call a tool, your code executes it, the result goes back into the model's context, and the cycle repeats until the model returns a final answer (tool use guide).
| Autocomplete | Chat AI | Agentic assistant | |
|---|---|---|---|
| Scope | Current line or block | Snippets you paste | Multi-file tasks |
| Runs commands | No | No | Yes |
| Verifies its own output | No | No | Yes |
| Your role | Type fast | Prompt and paste | Review the diff |
The practical difference: you stop being the glue between every step. Aerunit exists for the stage after that shift, when you're queueing work for several agents and need it scoped well enough that stories for coding agents hold up without you babysitting each run.
What does one agentic coding run actually look like step by step?
A single agentic run breaks into five stages: task intake, planning, tool calls, verification, and handoff. Each stage is a place where things go right or quietly go wrong, so it helps to know what each one involves before you queue work to an agent.
Task intake
Intake is where the task becomes a prompt. A vague ticket like "fix the flaky test" produces a vague run. A scoped task names the failing test, the repo, the branch, and the acceptance criteria: what must pass before the work counts as done. The quality of intake caps everything downstream, because the agent plans against whatever you handed it.
Planning
The agent reads the repo structure, opens the relevant files, and produces a plan: which files to touch, in what order, and what the intermediate states should look like. On multi-step work like a refactor, this plan is the fragile part. If the agent misreads the file structure or gets step one slightly wrong, every later step inherits the error, and a queue of follow-up prompts just compounds it. This is why well-scoped work matters: the smaller and clearer each task, the less damage one bad plan can do.
Tool calls
This is the execution loop. The agent edits files, runs commands, reads output, and corrects course, often dozens of times per run. In practice the agent is rarely the slow part; the routine around it is. Watching a terminal and pasting the next prompt is what turns one agent into a full-time job, and it is the reason teams running parallel agents end up with six terminals and no record of which run did what.
Orchestration exists to close that gap: keep each agent fed with its next scoped task, surface results as they land, and give you one place to review the diff instead of polling each run by hand (https://aerunit.ai/instant-feedback-for-coding-agents). The point is not that the agent works faster. It is that you stop being the glue between every step, doing the handoff slightly differently each time with no record of where it broke.
Verification
Verification is the agent checking its own output against reality: running the test suite, the linter, the build. It catches obvious breakage but cannot judge intent, so "tests pass" is not the same as "the implementation is actually complete." That judgment stays with you.
Handoff
Handoff is where the run ends and your work begins: a branch, a diff, and a summary of what the agent did and what it could not confirm. A good handoff makes review fast; a bad one makes you re-derive the whole run from the diff yourself.
Where do agentic assistants run: IDE, terminal, or cloud?
IDE-embedded assistants
The familiar form: the agent lives in your editor, edits files you can see, and you watch each step. Good for tight feedback loops on a single task, but it occupies your attention, so one agent per person is the practical limit.
Terminal agents
CLI agents like Claude Code or Codex run headless in a repo, often on a git worktree so they don't collide with your working copy. Solo developers chain these sessions from the terminal, but the routine around them becomes the bottleneck: one practitioner described being "the glue between every step" with no record of where things went wrong (dev.to).
Cloud/background agents
Cloud agents, like Cursor Cloud Agents, run remotely in parallel and report back, so the fleet stays busy while you review diffs. The coordination layer is where a small team feels the gap, which is what Aerunit focuses on; we write about that workflow on our blog.
What can agentic coding assistants do well today, and where do they still need a human?
Agentic assistants are strongest on well-scoped work: a ticket with acceptance criteria, a bounded refactor, a test suite to make green, or a migration with a clear diff to review. Give the agent a defined endpoint and it will plan, edit across files, run the tests, and iterate without you polling the terminal.
They stay weak at the edges. Ambiguous requirements, cross-repo decisions about what should exist, and judgment calls about product behavior still need a human. Context degradation is real too: if the model misunderstands the file structure in step one, every queued prompt after it inherits the error, so someone has to check the plan before the fleet burns through it.
The practical split: agents write the code, you decide what counts as done. Review the diff, verify the acceptance criteria, and queue the next ticket. If you spend your day pasting prompts between agent runs, the bottleneck is you, and that coordination layer is the part worth fixing first.
How do you judge whether an agentic assistant's output is safe to merge?
Treat an agent's pull request like a contractor's work: it merges only when it passes written acceptance criteria, not when it looks plausible. Before you queue the task, write down what "done" means: which files change, which tests must pass, and what must not change. Then review the diff against that list, not against the agent's own summary. The review steps that catch most failures are cheap: run the test suite yourself, check that the branch touches only the intended worktree or repo, and read the diff for scope creep. Every extra prompt round costs tokens or credits, so a task that needs five fixes is usually a scoping failure, not a model failure. And keep branch protection on so nothing merges without a human review; GitHub's branch protection rules exist for exactly this (GitHub Docs).
What should a team check before adopting an agentic coding assistant?
The checklist
Run five checks before adopting anything. First, does it fit where your work already lives, meaning Linear and your repos, rather than asking you to re-enter tasks somewhere else? Second, can you define acceptance criteria per task, so "done" is checkable instead of vibes? Third, does it show you the diff and keep a record of each run, so review is possible? Fourth, does it handle parallel agents without you becoming the glue between six terminals? Fifth, what does it cost when the whole team uses it, and does polling burn tokens you pay for?
Aerunit against its own checklist
Aerunit scores well on checks one through four: it pulls scoped work from Linear, runs Cursor Cloud Agents in parallel, and keeps agents busy while you review diffs. It is honest about check five: team credit-pool pricing means everyone's agent usage bills to one pool, so a heavy user changes what the team pays. If your workflow is single-agent and single-repo, you may not need orchestration at all.
FAQ
Do agentic coding assistants work with Xcode?
Most agentic assistants were built for VS Code forks or the terminal, so Xcode support is limited. You can still use CLI agents like Claude Code against an Xcode project since they operate on the repo directly, but you lose editor integration: diffs, file navigation, and test runs happen outside the IDE. Native Xcode agents are rare.
Which models do agentic coding assistants use, and does the model matter more than the harness?
Leading assistants run on frontier models from Anthropic and OpenAI, such as Claude and GPT-class models. The model matters, but the harness matters more than most people expect: how the tool scopes tasks, structures plans, runs verification, and handles retries often determines output quality more than a model upgrade does. A weak harness wastes a strong model.
How much does one agentic run cost in tokens or credits?
It varies widely by task size and how many tool calls the run needs, since each file edit and command execution adds tokens to the context. A small scoped task might cost a few dollars of tokens; a multi-step refactor with retries can cost far more. Tasks needing repeated fix rounds are usually scoping failures, and they multiply the bill.
Can I run several agentic assistants at the same time on one codebase?
Yes, if you isolate them. The standard approach is git worktrees, giving each agent its own working copy so edits and branches don't collide. Without isolation, parallel agents overwrite each other's changes. Cloud agents handle this isolation for you and report back diffs in parallel. The remaining problem is coordination: keeping each agent fed and tracking which run produced what.