Autonomy

One command carries an idea to a PR and pauses only where a human adds judgment. The intake stage and the resolve, mark, proceed rule run across every stage (prd, prp, plan, dev, test, pr, system-design). The canonical shape is .claude/shared/pipeline-pattern.md. Still planned: model tiering to Haiku for cheap checks, and each org filling its own context-library/repos.md.

Questions are missing context

The first version stopped before each artifact to ask for squad, problem, customers, hypothesis, bet link, and repo paths. Deleting those questions and letting the agent guess produces a hallucinated squad or an invented metric. harness-kit instead makes the agent read the repo, its history, and the context library before anything else, and asks only for what is external.

In Harness Engineering terms this moves from feedback to feedforward. Asking mid-run is feedback: the agent produces a gap and waits. Harvesting context up front is feedforward: the gap never forms.

The intake stage

intake runs before prd as a subagent (/intake:run). It reads the target repo (code, README, recent commits, open PRs and issues), context-library/ (business-info, squads, metrics, decisions), and git remotes. It writes .claude/runtime/outputs/intake/{feature_id}.md with squad, problem, customers, hypothesis, repos, metrics, and unknowns.

Because it runs in an isolated context, its exploration never reaches the later stages. They read the distilled artifact. The PRD agent reads it instead of asking you.

Resolve, mark, proceed

Every input gets one of three dispositions, replacing ask-or-block.

Disposition When What happens
Resolve The answer is in the repo or context library The value goes into the artifact, no human contact
Mark The answer cannot be found (a bet link, an exec target) NOT FOUND - NEEDS REVIEW: {detail} goes inline and into unknowns, the run continues
Proceed Always The run never blocks on a missing input; unknowns surface at the next gate

The evals tolerate a bounded number of markers: prp-context-quality blocks only above 5. A missing upstream artifact is the one hard stop, and the stage aborts with the command to run first.

Two gates

The human moves from in the loop, answering before every artifact, to on the loop, approving at the points where review is cheap and a mistake is expensive. The distinction comes from Böckeler's harness engineering writing.

flowchart LR
    intake --> prd --> G1{{approve direction}} --> prp --> plan --> dev --> test --> G2{{approve PR}} --> pr

The PRD gate takes about 30 seconds and prevents a full dev run aimed the wrong way. The PR gate guards the one outward-facing action that is hard to retract. /pipeline:run --yolo removes both for trusted, low-risk flows.

What stays deterministic

Lookups are code. context-library/repos.md maps squad to repo paths; it ships as context-library/repos-template.md for each org to fill. Without an entry, intake detects repos from the working directory and git remotes. feature_id is computed as {YYYY-MM-DD}-{squad}-{slug}.

What does not change

Sensors and evals fire on every stage, so an autonomous PRD meets the same prd-structure and prd-quality bars as a guided one. Markers, token accounting, and .pipeline-state.json work as before, and intake flips state through the same hooks. /pipeline:continue resumes at the next pending stage after a failure.

See also

Orchestration and Subagents, Pipeline and Stages, Harness Engineering.

This page mirrors Autonomy in the wiki. Edit it there.