adversarial-qa
Exploratory, adversarial QA: exercise a feature through whichever surface(s) it exposes — UI, API, or both — and surface issues the plan and committed tests…
Code review checklist and coding standards, extended per project by whatever file AGENTS.md's Review & Planning Guidance section names (defaulting to docs/agent-rules/code-critic.md). Invoked as /code-critic for an ad-hoc review, or applied by the code-critic sub-agent in the
$ npx -y skills add cunhaax/ai-workflow --skill code-critic --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/code-criticContext preview
The summary Claude sees to decide when to auto-load this skill.
Code review checklist and coding standards, extended per project by whatever file AGENTS.md's Review & Planning Guidance section names (defaulting to docs/agent-rules/code-critic.md). Invoked as /code-critic for an ad-hoc review, or applied by the code-critic sub-agent in the
name: code-critic description: > Code review checklist and coding standards, extended per project by whatever file AGENTS.md's Review & Planning Guidance section names (defaulting to docs/agent-rules/code-critic.md). Invoked as /code-critic for an ad-hoc review, or applied by the code-critic sub-agent in the /feature workflow. (Named code-critic so it does not shadow Claude Code's bundled code-review skill.)
Apply this skill to review code changes against project standards.
---
Treat the implementation as a hypothesis under attack. Your default assumption is that something is wrong; your job is to find what.
Confirmation bias is the dominant failure mode of AI code review — guard against it by actively trying to disconfirm the implementation rather than verifying that it looks reasonable. If you cannot find a fault after genuine effort, that is itself a finding worth stating explicitly (see the Output Format section).
---
In the `/feature` workflow the implementation is committed before review, so a bare `git diff` (working tree) shows nothing — review the branch's committed changes against its base, the default branch named in `AGENTS.md` → *Commands*: `git diff <default-branch>...HEAD` (or `git log -p <default-branch>..HEAD`). Invoked ad-hoc on uncommitted work, review the working-tree diff instead. If unsure what changed, check `git status` and `git log --oneline` first.
Note for ad-hoc use: the push gate records a commit SHA (`scripts/review-ok.sh`), so a review meant to unlock a push must cover the committed state — commit first, then review.
Check if a `docs/adr/` directory exists. If it does, list the ADRs you read by number in the review output. If none seemed relevant to the diff, say so explicitly — silence is not acceptable, since it is indistinguishable from skipping the step.
If the diff contradicts an ADR, quote the contradicting ADR clause and the offending diff line, and flag it as `FAIL`.
If plan text was provided (inline in the prompt, or via a file path), use it before reviewing. Use it as follows:
Verify every `AC-<slug>-n` has a committed test (via the `[AC-<slug>-n]` tags in Test Strategy) that would fail if the criterion were broken — a criterion without one is `FAIL`.
fields/params, response shapes, error rendering, and schema changes against it. An undiscussed deviation from the approved Contract is `FAIL`.
used to verify Plan Compliance and that all specified edge cases are handled.
code follows the intended design rather than an ad-hoc alternative.
Verify every `EDGE-<slug>-n` has a committed test (via the `[EDGE-<slug>-n]` tags in Test Strategy) that would fail if the handling strategy were broken — an edge case without one is `FAIL`.
the actual tests written.
file in the diff that is not listed here (or listed but left untouched) is an undiscussed change; flag the mismatch and judge whether it is in scope.
anything listed here, and DO flag as scope creep any code that strays into it.
If no plan was provided, skip the Plan Compliance checklist section entirely.
**Test evidence.** The review verifies coverage statically; whether the suite actually ran and passed on the reviewed state is separate evidence. In the `/feature` workflow that evidence is passed in (the summary of the latest full test-suite run). Treat that summary as a record of the run, not independent proof — it is produced by the implementing agent, and this review has no independent way to confirm it (whether the project's own CI provides that is outside this skill's scope). If no evidence was provided and you cannot (or may not) run the suite yourself, do not assume it is green — raise an Open Question: "no evidence the test suite ran on the reviewed state".
When flagging a plan compliance issue, **quote the exact line from the plan** that the diff violates, alongside the diff line that violates it. Paraphrasing the plan is not enough — the developer needs to see the literal mismatch.
You may read any file in the repository. The diff is the unit under review, but surrounding code, tests, configuration, and migrations are fair context — and often necessary to judge whether the change is correct. Some project-specific rules below may explicitly require it (cross-referencing a sibling file, checking that a registration or annotation is present).
---
**Functions:** A function should do one thing. If a function contains a conditional branch that handles a fundamentally different concern (e.g. an admin path bolted onto a regular-user path, or a parsing path inside a persistence call), flag it. Severity:
**Classes:** A class has too many responsibilities if you can identify more than one independent reason it would need to change.
When reviewing new code that touches an existing class:
Turns Claude Code into a small development team instead of one agent guessing alone — with a git-level gate that keeps the humans in charge of what actually ships.
Repo: cunhaax/ai-workflow
Exploratory, adversarial QA: exercise a feature through whichever surface(s) it exposes — UI, API, or both — and surface issues the plan and committed tests…
Runs the full feature workflow: plan, critique, implement, review, QA. Use this when starting a new feature. Guides you through each phase with explicit gates…
Bootstraps and validates the AI workflow in a project that has this plugin installed: scaffolds whichever project-owned files are missing, detects the…
Critiques an implementation plan using pre-mortem, inversion, load-bearing assumption analysis, and consistency checks. Invoked as /plan-critic for ad-hoc plan…
Planning rules and plan template for drafting implementation plans. Invoked as /plan-draft for an ad-hoc planning session, or used by the planner sub-agent in…
Appends the cost half to a workflow-retro record: parses the feature session's Claude Code transcripts with a bundled read-only script (tokens per agent,…