History · Trends · Tools

AI Assisted Coding

From glorified autocomplete to the orchestration of agent fleets

2022
2026

Markus Klug

GitHub Copilot

Glorified autocomplete

utils.js — editor
// debounce user input
function debounce(fn, ms) {
  let t; return (...args) => { clearTimeout(t);
    t = setTimeout(() => fn(...args), ms); }; }
⇥ tab to accept — the 2021 magic trick

Capabilities

  • The next line, while you type
  • Boilerplate and obvious test cases
  • A function body from a comment

Limitations

  • Anything beyond the open file
  • The model underneath: 2021 Codex, no chat, no reasoning
  • Knowing whether it was right

The ChatGPT Era

Copy/paste programming

Chat window describe problem Clipboard copy the answer IDE paste, pray Debug adjust, repeat

Capabilities

  • Explaining code, scaffolding, writing comments
  • Rubber-ducking an unfamiliar API
  • GPT-4 raised the ceiling on all of it

Limitations

  • Seeing your repo, your tests, your terminal
  • Anything bigger than the clipboard
  • The copy-paste dance: every file carried over by hand

The Sidebar Era

AI bolted onto the IDE it already had

VS Code — Copilot Chat (preview)
› debounce this?
Sure — here you go:
function debounce(…)
[ insert at cursor ]
tip: #file for context
// utils.js — the one open file
export const throttle = …
export const clamp = …
+ function debounce(fn, ms)…
// pasted. one snippet at a time.

Capabilities

  • Chat about the file you had open
  • Inserting one snippet at the cursor
  • If you were lucky: the neighbouring tabs

Limitations

  • No terminal, no test runs, no loop
  • No multi-file edits — you #referenced files by hand
  • Reviewing meant reading a chat log, not a diff

AI-First IDEs

Rebuilt from first principles around the model

refactor: rename UserService → AccountService
api/user.tsM
auth/session.tsM
db/schema.tsM
user.test.tsM
4 files changed
- import { UserService }
+ import { AccountService }
- new UserService(db)
+ new AccountService(db)
accept all · reject all

Cursor Mar 2023 · Composer mid-2024 · Windsurf Nov 2024 · VS Code agent mode Feb 2025

Capabilities

  • Whole-codebase context, not one open file
  • Diffs across many files, reviewed at once
  • By late 2024: running your terminal too

Limitations

  • Living anywhere but inside the editor
  • Long unattended runs — you watched every step
  • Working outside the project context

Claude Code

The agent moves into your terminal

zsh — claude
$ claude "fix the failing auth tests"
Read(src/auth/token.ts)
Bash(pnpm test) 2 failing
Edit(src/auth/token.ts)
Bash(pnpm test) all passing
Fixed a token-refresh race; two tests were asserting stale expiry.
$

Research preview Feb 2025 · GA May 2025 · Codex CLI, Gemini CLI and Amp followed

Capabilities

  • The whole loop: read, edit, run tests, commit
  • Your actual environment — shell, git, test runner
  • Extending itself: hooks, skills, MCP

Limitations

  • Knowing when it is actually finished
  • Long runs — context fills up and gets compacted
  • Being one of many: one agent, one terminal, no overview

Parallelism

The Constraint Moved

Adding workers doesn't remove a bottleneck, it relocates one

you
you briefing agent working

One agent, one task

  • Agent works for minutes at a time
  • You watch a spinner
  • You are idle four times out of five

The obvious next step

  • Run a second agent. Then a third.
  • Different projects, different tasks
  • Suddenly you are the scheduler

Going Parallel

The building blocks arrived one by one

Subagents

One session fans out research, review, and search to specialized workers

Worktree isolation

Every agent gets its own git worktree — parallel edits and merge queues

Background tasks

Agents run long jobs detached and report back — no more spinner-watching

Remote sessions

Agents keep working in the cloud while your laptop sleeps

The Fleet Era

From conversation to orchestration

prompt finder · bugs finder · perf finder · security finder · tests finder · style verify verify verify answer find adversarially verify synthesize

The new craft

Loop Engineering

Stop prompting every step — design the loop that prompts the agent

act observe decide adjust done tests green goal met? no → go again

The loop is the unit

Every coding agent is a while-loop: call the model, run tools, feed results back. Engineering that loop — not the prompt — is the leverage

Anatomy of a good loop

A testable goal and explicit exit criteria — defined before it runs

Real feedback: tests, compilers, logs — not vibes

Context that gets summarized, not accumulated

Failure paths: what retries, what escalates to you

The new craft

Graph Engineering

Loops made agent behavior programmable — graphs make agent organizations programmable

org graph · stable roles security data api work graph orchestrator migrate test review merge roles persist · work is spawned, merged, discarded

Nodes and edges

Nodes: agents with a role, a domain, memory

Edges: data flow and delegation paths

The emerging patterns

Advisor–orchestrator: a planner routes to workers

Zone defense: specialists own stable domains

Council: rival views deliberate, then synthesize

What you engineer

Role boundaries, handoffs, failure isolation — the org chart becomes code

The Journey

Five years, six form factors

Autocomplete2021-22
Chat2022–23
IDE Sidebars2023
AI-First IDEs2024
Agents2025
Fleets2026

Audience check

Locate Yourself

Steve Yegge's 8 stages of the AI-assisted coding journey

Stage 1 · Near-Zero AI

Stage 2 · IDE Agent

Stage 3 · IDE, YOLO

Stage 4 · Wide Agent

Stage 5 · CLI, Single

Stage 6 · CLI, Multi

Stage 7 · 10+ Agents

Stage 8 · Own Orchestrator

Steve Yegge, "Welcome to Gas Town" (2026) · code surface vs agent surface · click a stage to zoom

read the post
AK
Andrej Karpathy @karpathy · Nov 2017

New blog post: "Software 2.0"

↳ the essay arguing neural nets, not hand-written code, would become the software

seen as sci-fi at the time
AK
Andrej Karpathy @karpathy · Jan 2023

The hottest new programming language is English

≈4M views
EM
Emad Mostaque Stability AI CEO · Jul 2023

"There will be no [human] programmers in five years."*

mocked relentlessly at the time
JH
Jensen Huang NVIDIA CEO · Feb 2024

It is our job to create computing technologies that nobody has to program… the programming language is human: everybody in the world is now a programmer.

the year "learn to code" died
AK
Andrej Karpathy @karpathy · Feb 2025

There's a new kind of coding I call "vibe coding", where you fully give in to the vibes, embrace exponentials, and forget that the code even exists…

named word of the year
DA
Dario Amodei Anthropic CEO · Mar 2025

In three to six months, AI is writing 90% of the code… in 12 months, essentially all of the code.

the timeline slipped, the direction didn't
GT
Garry Tan @garrytan · Mar 2025

For 25% of the Winter 2025 batch, 95% of lines of code are LLM generated. That's not a typo.

the YC batch, measured
AK
Andrej Karpathy @karpathy · Dec 2025

I've never felt this much behind as a programmer. The profession is being dramatically refactored…

22K 3.6M
RD
Ryan Dahl Node.js & Deno · Jan 2026

The era of humans writing code is over. Disturbing for those of us who identify as SWEs, but no less true.

≈1M
BC
Boris Cherny built Claude Code · Jun 2026

I don't prompt Claude anymore. I have loops that are running… My job is to write loops.

the origin of the loops meme
PS
Peter Steinberger @steipete · Jun 2026

You shouldn't be prompting coding agents anymore. You should be designing loops that prompt your agents.

19K 8.5M
PS
Peter Steinberger @steipete · Jul 2026

Are we still talking loops or did we shift to graphs yet?

7.7K 3.1M

Outlook

Where It's Heading

A new set of problems — and a new paradigm to solve them in

The new problems

  • More code than anyone can read — a fleet writes faster than any human reviews
  • Which agent is where? — a dozen tabs all named zsh is a haystack, not a fleet
  • Who needs me? — agents block on questions and permissions, silently, in a background tab
  • What did it change? — reviewing with git diff after the fact doesn't scale

The trends already visible

  • Agents reviewing agents — humans review what survives, not everything that's written
  • Long-running residents — cloud agents on schedules, watching CI, reporting back
  • Orchestration as a skill — fan-out patterns, verification loops, token budgets
  • The environment is the edge — models converge; leverage lives in the setup around them

The landscape

An Entire Toolchain, Rebuilt

Four layers, each rebuilt from scratch in under three years — and already shedding casualties

click any name to open it · struck = already gone

a curated directory

Assemble your own

The Building Blocks

What my setup is made of — two open-source tools, one rendering library, one web companion, and a handful of hooks

herdr patched fork

Terminal workspace manager for agents. Mine adds declarative per-project layouts, label-addressed panes and popup launchers.

hh <project> · h-send / h-read · prefix+o ops · prefix+c claude

hunk

Review-first terminal diff viewer, paired to each Claude pane: it shows exactly what that session changed, live.

baseline at SessionStart · touched-set per edit · notes → next prompt

otomo

My very own local companion — live hook-event feed, session and worktree diffs with per-hunk staging, inline notes back to the agent. Live demo in a minute.

built on Claude Code hooks, herdr and Pierre components

in-house

@pierre/diffs · trees

The rendering layer under both hunk and otomo — Shiki-highlighted split or unified diffs and file trees, framework-agnostic.

shadow DOM · split / stacked · line selection

Claude Code hooks

The glue. Three lifecycle events drive the whole review loop — no agent cooperation required, and every hook exits 0.

SessionStart · PostToolUse · UserPromptSubmit

lazygit × Messages API

One key in the files panel: staged diff + your last 15 commits → a single Haiku call → pick, edit, commit. Key from the Keychain.

C → git diff --cached → POST /v1/messages → gum

Thank You

Markus Klug

linkedin.com/in/opus131

Questions?

POV: running Claude Code one at a time — you've gotta pump those numbers up, those are rookie numbers GitHub Copilot technical preview landing page, 2021 — Your AI pair programmer

← → step stages · esc to close
code surface agent surface