Skip to content

Overview

The agent does not know what you decided. Intent Engineering is the practice of making your coding agent progressively less clueless about your system and your intention: the permanent decisions that constrain how anything is done, and the per-change specs that say what to do right now. Both live in the repo as plain text.

Context (slate) is the prerequisite. Intent (teal) directs each change. Proof (cyan) closes the loop.

The four practices

PracticeWhat it doesWhat breaks without it
FoundationRepo structure as the agent's briefing: decisions, design docs, specs, and an agent-facing indexAgent improvises from training data instead of your decisions
Agent InstructionsA single entry point and instruction hub that every session reads on loadAgent re-derives your conventions each session, inconsistently
Spec-Driven DevelopmentA change-sized spec written before code, archived after the PR mergesAgent ships to its own design, not yours
Quality & VerificationTests that trace back to acceptance criteria in the specSpec aims; nobody checks if the agent hit the target

Team Workflows covers how these practices scale across a team.

How a session works

You write the spec. The agent reads context and spec, then generates code and tests. The tests verify the spec was met. The PR merges.

Is this for you?

This book assumes you:

  • ship production code and treat human review as non-negotiable
  • already use a capability-class coding agent: reasoning-capable model, real tool use, enough autonomy to carry a plan across a session
  • work on a codebase that outlives the session that started it
  • want consistency across sessions, not only speed within one

Where to start

If you want to…Start here
Understand the motivation firstForeword, then Introduction
Get into the practice immediatelyFoundation
See what the practices look like in codeCompanion Repo
Evaluate whether to adopt at allHonest Maturity