Open · agent-neutral · Git-native

Change authority for AI coding agents.

Reviewed authority before code.
Final-diff verification after.

Give coding agents an explicit, reviewable boundary for what they may change—then compare the complete Git state with that authority before merge.

Why it exists

Fast local changes can create expensive team-level disagreement.

When many engineers use coding agents, each generated change can look reasonable in isolation while the combined system accumulates duplicated capability, conflicting patterns, or unreviewed cross-boundary edits. Discovering that only after a large diff is costly.

EngineeringSpec does not replace context or testing. It makes the authorization question explicit and independently reviewable.

Context

What does the agent know?

Validation

Did the resulting change work?

Authority

What was it allowed to change?

One control loop

Review the boundary while change is still cheap.

Humans review authority before dependent implementation. Agents read broadly for correctness but write only within approved surfaces.

  1. 01Explore
  2. 02Propose
  3. 03Approve
  4. 04Implement
  5. 05Verify
  6. 06Close

Before code

Load one exact approved contract from immutable reviewed history: writable paths, protected paths, constraints, verifier identities, and stop conditions.

After code

Route committed, staged, unstaged, renamed, deleted, and untracked paths against base-pinned authority. Uncovered, denied, or ambiguous paths fail closed.

Agent-neutral

The same on-disk contract can guide Codex, Claude Code, Cursor, GitHub Copilot, CI, and human review without making one vendor part of the format.

Deliberately bounded

EngineeringSpec does not execute declared verifiers or prove correctness, security, quality, or productivity. Those checks remain separate evidence.

Current release candidate

Start with one repository and one real change.

The public package is 0.1.0-rc.17. Begin in dry-run or advisory mode, then add protected contract ownership and required checks when the workflow fits.

npx --yes @engineeringspec/cli@0.1.0-rc.17 adopt . --quickstart \
  --maintainer @YOUR_GITHUB_USER_OR_TEAM --dry-run

engineeringspec next
engineeringspec work ES-change
engineeringspec finish ES-change