AI Coding Surfaces: IDE, Plugin, and CLI
Three purple columns labeled IDE, Plugin, and CLI look like a product ranking. They are not. They are a delivery-surface map: where the agent lives relative to your editor, your host IDE, and your shell.
This guide teaches that axis as of July 2026. It keeps the useful grouping from the slide—Cursor / Antigravity / Windsurf as IDE-shaped products; Copilot and Codex as host-attached plugins; Claude Code, Cursor CLI, Codex CLI, Gemini CLI, OpenCode, and Amp as terminal-first—and then corrects the slide’s silent assumption that each logo belongs in exactly one column. Most serious products multi-home. For product bake-offs and MCP/OpenClaw layers, use AI Coding Agents Compared.
Running example: ORD-142 — checkout-api resets after 30 seconds. The surface decides whether you watch the diff inline, inherit a VS Code session, or let a CLI drive npm test.
One axis: where the agent attaches
An IDE surface ships its own editor (or a heavily forked one) with the agent as a first-class citizen: file tree, diff review, and agent chat share one window. A plugin surface attaches the agent to an IDE you already run—VS Code, JetBrains, Neovim—so governance often follows the host’s extension and org policy model. A CLI surface starts from the terminal: the working directory, shell, and test runner are the default tools.
These are attachment points, not IQ scores. Autocomplete inside VS Code and a long-running CLI agent both “help you code”; they inherit different blast radii. The CLI can run npm test without asking the editor to mediate; the IDE can show a multi-file diff without you grepping git diff by hand; the plugin can reuse your existing license and SSO.
When the three-column map helps: picking how a team will review agent output. When it fails: treating “Codex” as only a plugin while ignoring Codex CLI, or treating Antigravity as “just another IDE” when its command-center orchestration is the real product bet.
Quick reference
- IDE: agent + editor shipped together; review stays beside the diff.
- Plugin: agent attaches to a host IDE; policy often follows the host.
- CLI: shell and repo are the primary I/O; great for scriptable loops.
- Multi-home: many vendors ship two or three of these on purpose.
Remember this
I classify AI coding tools by attachment surface first—IDE, plugin, or CLI—not by brand slogans.
IDE surfaces: Cursor, Windsurf, Antigravity
Cursor and Windsurf are agentic editors: the workspace is the product. You steer with rules/context, watch patches inline, and keep human review next to the change. That fits ORD-142 when the timeout bug needs frequent “no, keep the assertion” steering.
Google Antigravity is often dropped into the IDE column because it includes an IDE, but its differentiator is a command-center / multi-agent supervision surface (plus CLI and SDK). Use the IDE column for “I live in this editor”; escalate to Antigravity’s control plane when parallel agent workspaces are the job—see the comparison guide’s control-plane section.
When not to force an IDE surface: the team already standardizes on VS Code + plugins and will not adopt a second editor. Shipping Cursor “because the slide put it under IDE” without a rollout plan just creates two contexts.
Quick reference
- Cursor / Windsurf: agentic IDE as the primary home.
- Antigravity: IDE plus orchestration—do not flatten to “editor only.”
- Best for: visual multi-file review and tight human-in-the-loop edits.
- Cost: editor migration, conventions, and model billing live in one product.
Remember this
I pick an IDE surface when inline review and editor-native context beat shell-first workflows.
Plugin surfaces: Copilot and Codex in a host IDE
GitHub Copilot and OpenAI Codex earn the plugin column when they run as extensions inside VS Code, JetBrains, or similar hosts. The agent borrows the host’s files, SCM UI, and often the organization’s extension allow-list. That is why enterprises like this shape: SSO and policy already point at the host.
The slide’s honesty is incomplete unless you also say Copilot CLI and Codex CLI exist. “Codex” in the plugin column means the IDE extension surface, not the whole product family. Naming the surface matters for ORD-142: an IDE plugin session and a cloud/CLI Codex task do not share the same sandbox or approval story.
When plugins win: you will not leave VS Code. When they lose: you need a programmable local harness (hooks, skills) that a thin extension cannot express—then look at CLI-first tools like Claude Code.
Quick reference
- Plugin = host-attached agent, not a weaker model.
- Copilot and Codex both multi-home; column = default attachment.
- Org policy often gates which extensions may run.
- Always name surface in runbooks: IDE plugin vs CLI vs cloud agent.
Remember this
I treat “plugin” as host attachment—and I always name which Copilot/Codex surface is allowed.
CLI surfaces: shell-native agents
The CLI column is crowded for a reason: terminal agents inherit the engineer’s real loop—git, test runners, and scripts. Claude Code, Cursor CLI, Codex CLI, Gemini CLI, OpenCode, and Amp all start from that contract. Amp (Sourcegraph) is CLI-first and can connect into editors; that does not move its primary taxonomy out of the terminal column.
For ORD-142, a CLI agent can run the regression test without waiting on an editor UI. The failure mode is the opposite of IDE comfort: too much shell power with too little policy. Pair CLI adoption with explicit denies and a task contract (AGENTS.md / CLAUDE.md) as in Claude Code Workflow.
When not to default to CLI: juniors who need visible diffs and one-click undo more than scriptable autonomy—start IDE or plugin, then graduate the same ticket contract to the terminal.
Quick reference
- CLI-first: Claude Code, Cursor CLI, Codex CLI, Gemini CLI, OpenCode, Amp.
- Strength: same commands humans already run in CI-shaped workflows.
- Risk: broad filesystem/shell access without hooks or approval modes.
- Amp: terminal agent that can attach to IDEs—still classify by primary home.
Remember this
I use CLI surfaces when the shell and tests are the source of truth—and I gate them with policy.
Zoom: one vendor, two columns
The useful correction the slide almost makes: Cursor under IDE and Cursor CLI under CLI are not duplicates—they are two attachment points for one vendor. Same for Codex (plugin) vs Codex CLI. Choosing “Cursor” in a architecture review is incomplete; choosing “Cursor IDE for review, Cursor CLI for overnight batch” is a decision.
Trace ORD-142 across homes: morning investigation in Cursor IDE with inline reject; overnight hypothesis sweep via Cursor CLI or Codex CLI in a worktree; PR opened only after npm test -- idle-timeout stays green. The taxonomy columns organize the morning vs overnight choice; they do not crown a winner.
Quick reference
- Multi-home is normal: IDE + CLI, plugin + CLI, IDE + cloud.
- Write allow-lists per surface, not per brand.
- Compare harness controls inside each surface you enable.
- Deep product matrix: AI Coding Agents Compared.
Remember this
I expect serious vendors to multi-home and I authorize each surface separately.
Decision rule: pick the attachment, then the brand
1. Need continuous visual review beside the diff? → IDE surface (Cursor, Windsurf; Antigravity if you also need multi-agent supervision). 2. Locked to an existing host IDE and org extension policy? → Plugin surface (Copilot, Codex extension)—name the host. 3. Need scriptable loops against real tests? → CLI surface (Claude Code, Cursor CLI, Codex CLI, Gemini CLI, OpenCode, Amp). 4. Still stuck? Read the boundary matrix in AI Coding Agents Compared; do not invent a fourth column for MCP or OpenClaw—they are not delivery surfaces for coding agents.
Practice (20 min): For ORD-142, write three one-line runbooks (IDE / plugin / CLI), run the same test command in the CLI path, and note which surface made assertion deletion easiest to catch. Pass when each runbook names a concrete product and surface.
Quick reference
- Attachment first, vendor second.
- Authorize multi-home products per surface.
- Keep MCP/OpenClaw off this taxonomy—different layers.
- Re-check product surfaces before rollout; catalogs drift monthly.
Remember this
I can choose IDE, plugin, or CLI from review needs and blast radius, then pick a vendor inside that column.
Key takeaway
IDE, plugin, and CLI are where the agent attaches, not a leaderboard. Use IDE when review must sit on the diff, plugins when the host IDE is non-negotiable, and CLI when the shell and tests are the contract—knowing that Cursor, Codex, Copilot, and peers often occupy more than one column.
Next: product boundaries in AI Coding Agents Compared, Claude’s arc in The Rise of Claude Code, and daily harness habits in Claude Code Workflow.
Related Articles
Explore this topic