adk-expert
Google ADK (Agent Development Kit) orchestration patterns — boundaries, agent composition, and tool seams. Trigger when designing…
JP's signature red-team pass — "how would I break this?" Argue against your own approach before proceeding. Trigger on any high-stakes decision, architecture choice, or before marking work complete.
Claude Code
$ npx -y skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate --agent claude-code
Codex
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a codex -y
Cursor
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a cursor -y
Gemini CLI
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a gemini-cli -y
GitHub Copilot
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a github-copilot -y
OpenCode
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a opencode -y
Windsurf
$ npx skills add jpantsjoha/ai-native-developer-experience --skill adversarial-gate -a windsurf -y
name: adversarial-gate description: JP's signature red-team pass — "how would I break this?" Argue against your own approach before proceeding. Trigger on any high-stakes decision, architecture choice, or before marking work complete.
> **Coined by Jaroslav Pantsjoha (#HarnessEngineering).** The Adversarial Gate is the practice of forcing an agent — or a human — to argue against their own design before proceeding. It pre-empts bad reasoning before bad output exists.
The gate has one question: **"How would I break this?"**
Answer it honestly. If you cannot name at least two plausible failure modes, you do not understand the system well enough to ship it.
1. **State the proposal clearly** — in one or two sentences, what is the approach being validated? 2. **Run the adversarial pass** — argue against it. Ask:
3. **Name at least two concrete failure modes** — not "something could go wrong" but specific, nameable failures. 4. **Check each failure mode has a mitigation or an accepted risk owner** — unmitigated = not shippable. 5. **Document the outcome** — pass (risks named and owned) or fail (proceed to redesign). Attach to the ADR or PR.
| Excuse the agent makes | Counter | |---|---| | "This is a low-risk change" | All production incidents started as low-risk changes. Name the failure mode or accept you cannot assess risk. | | "We can fix it after if something breaks" | Blast radius unknown = not low risk. Run the gate. | | "The tests cover this" | Tests cover happy paths. The gate looks for the paths tests miss. | | "We've done this before" | Prior success is not a guarantee. Conditions change. Run the gate. | | "The deadline is today" | A production incident will cost more time than the gate. Run the gate. | | "I'm confident in this design" | Confidence is the leading indicator of skipped gates. Run it anyway. |
This pattern converges with “doubt-driven development” in Addy Osmani's [`agent-skills`](https://github.com/addyosmani/agent-skills). The **Adversarial Gate** name and “how would I break this?” framing are JP's #HarnessEngineering contribution. The anti-rationalisation table format was adopted after reviewing that MIT-licensed project; this repository does not claim the table format originated here.
**Shared ways of working for you, your team and your AI agents — from a new idea to a change running live.** join-the-team brings planning, delivery and ticket management, model selection, testing, independent review and release practices into one reusable
Google ADK (Agent Development Kit) orchestration patterns — boundaries, agent composition, and tool seams. Trigger when designing…
Read-only SRE checkup of any GCP project: deterministic probes of the edge, Cloud Run services, 7-day error logs, Cloud…
Cloud guardrails for any vendor workload — Google Cloud (GCP, Vertex AI, GKE), AWS (IAM, EKS, Bedrock), Azure (Entra ID, Policy,…
LLM and cloud cost awareness — model tiering, token budgets, right-sizing, and when a cheaper model suffices. Trigger before…
Challenge vision alignment, value, cost, risk and operating ownership at material scope or release decisions.
Decompose an epic into atomic parallelizable tasks, route each to the right skill, and keep the four delivery records straight —…
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.