From auto-claude-skills
Multi-Agent Debate (MAD) for complex designs. Spawns architect, critic, and pragmatist for collaborative design exploration with structured convergence.
npx claudepluginhub damianpapadopoulos/auto-claude-skillsThis skill uses the workspace's default tool permissions.
Escalation skill for the DESIGN phase. When brainstorming detects competing architectures, cross-cutting concerns, or high-stakes decisions, this skill orchestrates a Multi-Agent Debate with three perspectives to avoid echo-chamber thinking.
Generates design tokens/docs from CSS/Tailwind/styled-components codebases, audits visual consistency across 10 dimensions, detects AI slop in UI.
Records polished WebM UI demo videos of web apps using Playwright with cursor overlay, natural pacing, and three-phase scripting. Activates for demo, walkthrough, screen recording, or tutorial requests.
Delivers idiomatic Kotlin patterns for null safety, immutability, sealed classes, coroutines, Flows, extensions, DSL builders, and Gradle DSL. Use when writing, reviewing, refactoring, or designing Kotlin code.
Escalation skill for the DESIGN phase. When brainstorming detects competing architectures, cross-cutting concerns, or high-stakes decisions, this skill orchestrates a Multi-Agent Debate with three perspectives to avoid echo-chamber thinking.
This skill is opt-in. It only activates when brainstorming explicitly escalates after user approval.
The brainstorming skill should consider escalating when it detects:
| Signal | Example |
|---|---|
| Multiple competing architectures | "We could use microservices or a monolith" |
| Cross-cutting concerns | Auth + data + API all affected |
| High-stakes decisions | "This will be hard to change later" |
| User explicitly requests debate | "I want different perspectives on this" |
| Ambiguity after 3+ questions | Still unclear on approach after extended exploration |
Always ask the user first: "This has competing approaches. Want me to run a design debate with multiple perspectives?"
| Teammate | Role | Lens |
|---|---|---|
architect | Lead designer | Proposes architecture, defends trade-offs |
critic | Devil's advocate | Attacks assumptions, finds blind spots, proposes alternatives |
pragmatist | Implementation realist | Evaluates feasibility, YAGNI, timeline, complexity cost |
1. TeamCreate("design-debate")
2. Share context with all teammates:
- Problem statement
- Constraints identified during brainstorming
- Options explored so far
- User preferences expressed
3. Round 1 (parallel):
- subagent_type: "general-purpose"
- architect: Proposes approach with reasoning
- critic: Identifies blind spots and alternatives
- pragmatist: Evaluates feasibility and complexity cost
4. Round 2 (parallel):
- Each responds to the others' positions
- Converge toward consensus or clearly articulated trade-offs
5. Lead synthesizes:
- Present recommendation with dissenting views noted
- Highlight unresolved trade-offs
6. User decides:
- Approve → TeamDelete, write design doc
- Reject → another round or manual override
docs/plans/YYYY-MM-DD-*-design.mdAll inter-agent messages use plain text via SendMessage. No structured JSON.
POSITION: [propose | critique | evaluate]
Stance: Use event sourcing for audit trail
Reasoning: Provides immutable history, enables replay, fits compliance requirements
Risks: complexity, learning curve, storage growth
Confidence: high | medium | low
You are the architect in a design debate. Your job is to propose the best architecture for the problem and defend your trade-offs.
Context: {problem_statement}
Constraints: {constraints}
Options explored: {options}
Propose your recommended architecture using the plain-text POSITION format. Be specific about components, data flow, and integration points.
You are the critic in a design debate. Your job is to attack assumptions, find blind spots, and propose alternatives the architect may have missed.
Context: {problem_statement}
Architect's proposal: {architect_position}
Challenge the proposal using the plain-text POSITION format. Focus on: hidden assumptions, failure modes, scaling issues, maintenance burden, and alternative approaches.
You are the pragmatist in a design debate. Your job is to evaluate feasibility, complexity cost, and whether the proposed approach is the simplest thing that could work.
Context: {problem_statement}
Architect's proposal: {architect_position}
Critic's challenges: {critic_position}
Evaluate using the plain-text POSITION format. Focus on: implementation timeline, team skill requirements, YAGNI violations, incremental delivery options, and operational complexity.
Check session preset first. Read ~/.claude/skill-config.json or check the activation context for the active preset. If the preset has openspec_first: true (e.g., spec-driven), use the spec-driven mode below. Otherwise, use solo mode.
spec-driven)After the debate, create openspec/changes/<topic>/ (committed, visible to teammates):
openspec/changes/<topic>/proposal.md:
openspec/changes/<topic>/design.md:
openspec/changes/<topic>/specs/<capability>/spec.md:
Capability taxonomy inference (before deciding on <capability>):
First enumerate existing capabilities: ls openspec/specs/. Then apply this heuristic:
openspec/specs/<new-capability>/.When two existing capabilities look equally applicable, ask the user — do not guess.
When creating a new capability, emit a visible warning:
⚠️ NEW CAPABILITY: This change introduces capability
<new-capability>. Confirm the taxonomy is correct before archive. Existing capabilities considered and rejected:<list>.
Bias: err toward fewer, coarser capabilities. Micro-capabilities fragment review routing; a single capability with multiple requirements scales better.
After the debate, synthesize into a design document at docs/plans/YYYY-MM-DD-{topic}-design.md containing:
Persistence: This artifact is the canonical design intent. It will be:
writing-plans to carry acceptance scenarios into the planagent-team-review for spec compliance checkingopenspec-ship at archive timedocs/plans/archive/ when the feature shipsThen return to the brainstorming skill's sequential flow → writing-plans.