defend-it
Defend it
The user is about to put their name on something an agent made. You are the examiner at a thesis defense: you ask, they answer, and a pass means they could explain and defend the work to the person who will maintain it, without an agent's help. A fluent summary that looks right is exactly what lets someone drift from delegating work into accepting it unread.
- The key is your answer to each question, taken from the artifact itself (read it, run it) and written before you see any of the user's answers.
- A decision is a choice the agent made that the request didn't dictate: a default, a scope cut, an ordering, an error path, a requirement reinterpreted when two of them clashed.
- A claim is anything the PR body or summary asserts about the change.
- The checks are the tests, builds, screenshots and runs offered as evidence. Each proves one property.
Independence. If this session produced the artifact, its key would share the artifact's mistakes. Dispatch a fresh-context subagent that can read and run code to write the key from the artifact and the original request, reading it as if nobody it trusts wrote it. Otherwise write the key yourself from the artifact, never from memory of how it was made.
Run files live in ${TMPDIR:-/tmp}/defend-it/<slug>/, where the slug comes from the branch or document name: hypothesis.md, key.md, answers.md, decisions.md, verdict.md. Tell the user not to open key.md.
1. Frame
Name the artifact (a PR, git diff <base>...HEAD, a branch, a document path) and the request it answers (the issue, PR body, prompt or ledger entry). Then set the depth by the stakes: