From design-council
This skill should be used when the user asks to "design council", "multi-model design", "design sprint", "gemini design", "collaborative design", "design review loop", or wants to orchestrate multiple AI models for frontend design work. Provides knowledge about the turn-based design workflow using Opus for planning/review and Gemini for code generation.
How this skill is triggered — by the user, by Claude, or both
Slash command
/design-council:design-orchestrationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This skill enables collaborative frontend design using multiple AI models in a turn-based workflow.
This skill enables collaborative frontend design using multiple AI models in a turn-based workflow.
Key Insight: Sub-agents cannot use AskUserQuestion for interactive prompts. They run to completion and return a single result. Therefore:
- Main Claude handles ALL user interaction (interview, option selection)
- Sub-agents are non-interactive workers (code generation, review, adaptation)
| Role | Who | Interactive? | Purpose |
|---|---|---|---|
| Strategist/Orchestrator | Main Claude | Yes | User interview, option selection, coordination |
| Code Generator | gemini-generator agent | No | Calls Gemini API, writes code to staging |
| Code Reviewer | opus-reviewer agent | No | Evaluates code, returns scores |
| Adaptation Advisor | adaptation-advisor agent | No | Synthesizes feedback for iteration |
Sub-agents keep heavy content (generated code ~35KB+) out of main context:
User Request
│
▼
┌─────────────────────────────────────────────┐
│ Main Claude (Strategist + Orchestrator) │
│ ✓ Loads this skill │
│ ✓ Interviews user (AskUserQuestion) │
│ ✓ Generates 4 palette options │
│ ✓ Generates 4 typography options │
│ ✓ User selects/mixes options │
│ ✓ Creates spec.json │
└──────────────────┬──────────────────────────┘
│
┌─────────────┼─────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ gemini- │ │ opus- │ │ adapt- │
│ generator│ │ reviewer │ │ advisor │
│ (Task) │ │ (Task) │ │ (Task) │
│ │ │ │ │ │
│ Returns: │ │ Returns: │ │ Returns: │
│ summary │ │ scores │ │ guidance │
└──────────┘ └──────────┘ └──────────┘
│ │ │
└─────────────┴─────────────┘
│
▼
┌─────────────┐
│ Output │
└─────────────┘
Invoke the full workflow with:
/design-sprint "Your design description" --rounds=3 --framework=react
| Argument | Description | Default |
|---|---|---|
description | What to design (required) | - |
--rounds=N | Maximum iteration rounds | 3 |
--framework=X | Target framework | react |
--strict | Require score > 8 to pass | false |
--output=DIR | Output directory | ./ |
react - React with hooks and functional componentsvue - Vue 3 composition APIsvelte - Svelte componentshtml - Plain HTML/CSS/JavaScriptnextjs - Next.js App RouterHandles all user-facing interaction:
Design specifications include:
Non-interactive sub-agent that:
Generated code includes:
Evaluates across four dimensions:
Pass threshold: Weighted score >= 7.0
After each review:
Set your Gemini API key:
export GEMINI_API_KEY="your-api-key-here"
Obtain a key from: https://makersuite.google.com/app/apikey
The Design Council follows these principles (avoid "AI slop"):
For fine-grained control, invoke sub-agents individually. Note that user interaction must happen at the main level.
# Generate code (returns summary only)
Task: gemini-generator
Prompt: Generate code from spec at ./.design-sprint-staging/round-1/spec.json
Write to ./.design-sprint-staging/round-1/code/
Return summary only.
# Review existing code
Task: opus-reviewer
Prompt: Review code in ./.design-sprint-staging/round-1/
Read spec.json and code/ files.
Return scores and issues.
# Prepare iteration feedback
Task: adaptation-advisor
Prompt: Analyze review at ./.design-sprint-staging/round-1/review.json
Prepare iteration guidance for next round.
Note: The design-strategist role is now handled by Main Claude directly (not a sub-agent) because it requires user interaction.
To design components for an existing project:
Example:
/design-sprint "Create a data table component with sorting and filtering"
--framework=react
--context="Uses Tailwind, existing colors in globals.css"
For detailed design principles, see:
references/design-principles.md - Extended design guidelinesreferences/prompt-templates.md - Prompt patterns for each agentCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.
npx claudepluginhub smarticeai/smartice-plugins --plugin design-council