Use this checklist before a coding agent is allowed to say a repo change is done. The point is not a stronger prompt. The point is a finish line the model does not control.
AI coding agents can produce a convincing final report while still leaving the repo in a state that is unsafe to merge:
- the wrong file changed
- generated docs or projections are stale
- tests were skipped or only summarized
- a public output schema drifted
- an approval boundary is only prompt text
- a fixture, snapshot, log, or doc leaked a secret
- a public-facing change is marked complete without review
skillgate turns these into deterministic checks. The agent can propose the
change, but commit, push, publish, or release commands are blocked until the
configured gates pass.
- Build still passes.
- Relevant tests pass.
- The touched behavior has at least one explicit regression check.
- Generated files or projections are verified by command, not manually patched.
- No secrets appear in source, logs, fixtures, snapshots, or docs.
- The diff is scoped to the requested behavior.
- Output schemas remain backward compatible or include a migration note.
- Outbound actions require a persisted approval record.
- Public-facing or irreversible work leaves a human review artifact.
- The final report names commands run, files changed, and residual risk.
Score each item:
0: missing1: manual habit only2: deterministic check exists
Interpretation:
0-8: demo-shaped agent workflow9-15: useful but fragile16-20: production-shaped workflow
Start with examples/agent-definition-of-done.yaml.
Copy it to .skillgate/done.yaml, replace the commands with the repo's real
build/test/generation commands, then wire the same spec through your agent hook,
pre-commit, and CI.