adversarial-qa
Exploratory QA of a running feature through its UI (Playwright) and/or API (curl) to find issues the plan and committed tests…
Sets up and checks the AI workflow in a project that has this plugin installed: scaffolds missing AGENTS.md, CLAUDE.md, hooks, settings and docs; detects project commands; seeds review/planning guidance; verifies the review gate. Use when adopting the plugin in a project, or
Claude Code
$ npx -y skills add cunhaax/ai-workflow --skill init-workflow --agent claude-code
Codex
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a codex -y
Cursor
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a cursor -y
Gemini CLI
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a gemini-cli -y
GitHub Copilot
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a github-copilot -y
OpenCode
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a opencode -y
Windsurf
$ npx skills add cunhaax/ai-workflow --skill init-workflow -a windsurf -y
name: init-workflow description: > Sets up and checks the AI workflow in a project that has this plugin installed: scaffolds missing AGENTS.md, CLAUDE.md, hooks, settings and docs; detects project commands; seeds review/planning guidance; verifies the review gate. Use when adopting the plugin in a project, or re-run as a doctor when the setup may be missing or drifted. license: MIT metadata: author: André Cunha
Scaffold the project-owned files missing from `${CLAUDE_SKILL_DIR}/templates/` (each independently: a project may already have its own `AGENTS.md`, `CLAUDE.md`, or neither), fill them with this project's facts, and verify the setup. Idempotent: re-run after a plugin update or suspected drift; it acts as a doctor, reporting what is missing instead of redoing what is filled.
Scope: project-owned files only. Never edit the plugin's own mechanism (skills, sub-agents, plugin docs); those change by updating the plugin.
confirms it
AGENTS.md sections, review/planning guidance (Step 4's "already have docs?" question is a separate, first round, since it decides what the rest of that step asks)
`[TODO: …]`
per sensitive area. Depth belongs in `docs/`
Every file under `${CLAUDE_SKILL_DIR}/templates/` maps to a project-relative destination (the plugin's canonical enumeration), **except** `docs/agent-rules/code-critic.md` and `docs/agent-rules/plan-critic.md`: Step 4 creates those (or not, if the project has equivalent docs); writing them here would leave orphaned stubs. Check each other destination on its **own** trigger; one file's presence never gates another's.
`AGENTS.md`, `CLAUDE.md`) and `settings.json.template` (→ `.claude/settings.json`, not project root), on the destination copy only. Never strip it on the source inside `templates/` (an un-suffixed `AGENTS.md`/`CLAUDE.md` there would be auto-loaded as live guidance)
`docs/product-context/*`) → leave untouched; list as "already present" in Step 6. Never overwrite a file the project owns
`.claude/settings.json`, `githooks/pre-push`, `scripts/review-ok.sh`, `scripts/check-hook-status.sh`
**`CLAUDE.md`**
overwrite with the template; never append if the import is already there
**`.claude/settings.json`** (a merge target; already existing is common, since a project-scope plugin install can create it first)
`${CLAUDE_SKILL_DIR}/templates/settings.json.template`'s `permissions.deny` entries are missing, preserving everything else. Never a flat overwrite
template versions) → offer to remove it: the prompt stalls unattended and parallel runs, and the merge review is the human gate
`permissions.ask` / `permissions.deny` exist but aren't an object and arrays → no merge, no guessed fix. Flag as an unresolved item in this step's proposal (like a hook conflict) and continue; a malformed file on this security-relevant path needs the user's own eyes
**`githooks/pre-push`, `scripts/review-ok.sh`, `scripts/check-hook-status.sh`** Two questions. Q1 is decided here and written in the same single confirmation round below, never before the user confirms. Q2 runs only after that write (or its decline), as the first thing after the proposal is confirmed and written, since its verdict is meaningful only against settled state.
*Q1. Is each existing file actually this gate's own?* Check each independently:
`.review-passed`
`DEST_FOREIGN` (unique to that script; `.review-passed` and `READY_TO_CONFIGURE` also appear in `review-ok.sh`)
`.review-passed` too, so its content placed at `githooks/pre-push` would misidentify as ours
Then:
ask: replace with the template's version, or decline
the existing script: a pre-push hook reads its ref list from stdin once, and a chained script can consume it before the gate's `while read` loop, giving a hook that exits 0 on every push with no error
*Q2. Is the gate actually wired up?* Run `${CLAUDE_SKILL_DIR}/templates/scripts/check-hook-status.sh` from the project root (the plugin's read-only copy; safe even if Q1 was declined or not yet scaffolded) and act on its one-line verdict:
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.
Exploratory QA of a running feature through its UI (Playwright) and/or API (curl) to find issues the plan and committed tests…
Reviews code changes against project standards and the approved plan; returns PASS/FAIL/NEEDS_DECISION per checklist item plus…
Runs the full AI-assisted workflow for a non-trivial feature or change: plan, plan critique, user approval, implementation with…
Critiques a draft implementation plan with pre-mortem, inversion, load-bearing-assumption and consistency checks; returns…
Drafts a structured implementation plan (approval summary with acceptance criteria, contract, files, edge cases, test strategy)…
Computes a PR's Tier floor and unplanned-changes list with a bundled read-only script, then writes the PR's Tier line and Review…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.