Harness.
Preview — Forthcoming
The Builder's Field Manual
Three generations of AI SDK, and the one worth shipping into
“When the runtime is a coding agent, your program is a directory of skills.”
Ben Davis named three generations of AI SDK: API wrapper, tool-schema agent loop, and full coding-agent SDK. This issue is the builder's guide to Gen 3 — OpenCode, Pi, the Claude Agent SDK — and what it means that your program is now a directory of markdown plus a few helper scripts.
On the Gen-3 Claim
Ben Davis stood on stage in Miami and said we've been writing AI software wrong for three years. This issue takes that claim seriously and builds the field manual.
Ben Davis stood on stage at AI Engineer Miami and said we’ve been writing AI software wrong for three years. His frame: three generations.
Gen 1 — the wrapper. The raw OpenAI SDK. BAML. You send a prompt, you get tokens back, you parse them. Everything else is yours.
Gen 2 — the tool-call loop. The Vercel AI SDK, and most of the “agent frameworks” that followed. Wrap the model in a loop, give it typed tool schemas, let it pick. This is where most production AI apps live today.
Gen 3 — the coding-agent SDK. Pi. OpenCode. The Claude Agent SDK. The primitives aren’t tool schemas anymore; they’re a whole coding agent — a filesystem, a shell, artifact storage, code it can download and run. Your “program” isn’t code-plus-tools. It’s a directory of markdown skill files, a few helper shell scripts, and a coding agent as the runtime.
HARNESS is the builder’s field manual for Gen 3. Forthcoming.