The Landscape
Specific products change fast; the categories are stable. Knowing which category fits a task is more durable than knowing this week’s tool rankings.
The categories
Section titled “The categories”AI coding tools form a ladder of increasing autonomy and scope:
Inline autocomplete
Section titled “Inline autocomplete”Suggests the next few lines as you type, from the surrounding code. Lowest friction, lowest risk — you review every suggestion instantly, in flow. Superb for boilerplate, repetitive patterns, and obvious continuations. You stay fully in control.
Chat assistants
Section titled “Chat assistants”A conversational interface — in the IDE or a browser — for explaining code, debugging, generating functions, writing tests, translating between languages. You copy code in and out, so you review naturally. Best for bounded, self-contained questions and snippets.
Agentic IDEs
Section titled “Agentic IDEs”The editor itself can read your codebase, plan, and apply multi-file changes on request. A real step up in capability — and in the review burden. The tool proposes a diff across several files; the diff is now the thing you must scrutinize.
CLI and autonomous coding agents
Section titled “CLI and autonomous coding agents”You assign a task — “add pagination to the users endpoint” — and the agent runs the loop: explore the repo, plan, edit files, run tests, iterate. The most powerful and the most autonomous. The unit of review shifts from a line to a whole change set, and your job shifts from typing to specifying and reviewing.
How they work, briefly
Section titled “How they work, briefly”Every one is an LLM plus context plus, in the agentic cases, tools and a loop.
- The LLM supplies coding knowledge from pretraining on huge code corpora.
- Context is what makes output relevant — your open files, related files, the error, the project conventions. (Why context is the master skill is the subject of Working Effectively.)
- Agentic tools add tools — read files, run commands, execute tests — and an agent loop: act, observe, correct.
This explains their shared weaknesses: an LLM can’t know anything outside its context window or training data, so it misses recent library versions, your private conventions, and any part of the codebase it didn’t read. It will also produce confident, plausible, wrong code — because that’s what LLMs do.
Matching tool to task
Section titled “Matching tool to task”| Task | Reach for |
|---|---|
| Boilerplate, repetitive lines | Inline autocomplete |
| ”How does this work?”, a tricky function | Chat assistant |
| Understanding an unfamiliar codebase | Chat assistant |
| A coordinated change across a few files | Agentic IDE |
| A well-specified, self-contained feature or fix | CLI / coding agent |
| Anything subtle, novel, or high-stakes | A tool for drafting — then heavy human review |
Key takeaways
Section titled “Key takeaways”AI coding tools form an autonomy ladder: autocomplete, chat, agentic IDEs, CLI agents. All are an LLM plus context, with agents adding tools and a loop — which is why context quality drives everything and why they confidently produce wrong code. Match the tool to the task, and remember that climbing the ladder shifts your work from typing toward specifying and reviewing.