Vibe Coding
Pattern: 'Harness Engineering' Has Consolidated Into a Named Third Phase After Prompt and Context Engineering
The term has stabilized across Martin Fowler's site, Addy Osmani, LangChain ('Agent = Model + Harness') and an arXiv exploratory study, converging on a five-layer definition: tool orchestration, verification loops, context and memory, guardrails, observability. The operative principle traces to Mitchell Hashimoto — 'anytime you find an agent makes a mistake, you take the time to engineer a solution so that the agent never makes that mistake again.' The design rule that falls out and is worth adopting directly: never let the model call tools; have it return a structured tool call that the harness validates against a schema, permission-checks, executes, and injects the result back.
↳ Follow the thread