// Proactively analyze user requests at the start of conversations to determine task type, assess prompt quality, and intelligently recommend which skills to activate. Should activate for ALL user requests to ensure optimal workflow. Evaluates clarity, specificity, and completeness to suggest prompt-optimizer when needed. Identifies UI design tasks for ui-analyzer and component requests for react-component-generator. Acts as intelligent skill coordinator.
| name | request-analyzer |
| description | Proactively analyze user requests at the start of conversations to determine task type, assess prompt quality, and intelligently recommend which skills to activate. Should activate for ALL user requests to ensure optimal workflow. Evaluates clarity, specificity, and completeness to suggest prompt-optimizer when needed. Identifies UI design tasks for ui-analyzer and component requests for react-component-generator. Acts as intelligent skill coordinator. |
| allowed-tools | Read, Glob, Grep, Skill |
This skill proactively analyzes user requests to determine the task type, assess prompt quality, and intelligently recommend which other skills should be activated to best serve the user's needs.
Act as an intelligent coordinator that:
This skill should activate for EVERY user request at the start of conversations to ensure optimal workflow orchestration.
Specifically activate when:
Immediately evaluate the request on three dimensions:
Clarity (0-100%):
Specificity (0-100%):
Completeness (0-100%):
Classify the request into one of these categories:
Reference references/skill-activation-guide.md for detailed classification criteria.
Based on assessment and task type, determine which skills would be beneficial:
Consider prompt-optimizer if:
Consider ui-analyzer if:
Consider react-component-generator if:
Make one of these decisions:
Option A: Recommend Optimization If prompt quality is low, explicitly suggest using prompt-optimizer:
"I notice your request could benefit from more clarity. Let me activate the
prompt-optimizer skill to help structure a more specific request."
Option B: Recommend Specific Skill If request is clear but matches a skill's domain:
"This looks like a UI design implementation task. I'll use the ui-analyzer
skill to systematically analyze the design and generate the code."
Option C: Proceed Directly If request is clear, complete, and doesn't need specialized skills:
"Your request is clear. I'll proceed with [task description]."
Option D: Ask for Clarification If critical information is missing and cannot be assumed:
"To help you effectively, I need to know: [specific questions]"
Step 1: Initial Read
Step 2: Quality Scoring
Clarity Check:
Specificity Check:
Completeness Check:
Step 3: Task Classification
Match against patterns in references/skill-activation-guide.md:
Step 4: Skill Matching
For each available skill, check if activation criteria are met:
prompt-optimizer:
- Quality score < 70%? → Consider
- Missing critical info? → Consider
- Vague language present? → Consider
- Multiple interpretations? → Consider
ui-analyzer:
- Screenshot/design mentioned? → Activate
- Image provided? → Activate
- "Implement design" request? → Activate
react-component-generator:
- React component requested? → Consider
- After prompt optimization? → Consider
- Clear component spec? → Activate
Step 5: Recommendation
Based on analysis, formulate recommendation:
Step 6: Execution
Either:
## Request Analysis
I've analyzed your request and noticed it could benefit from more specificity.
**Current Request**: [User's request]
**Observations**:
- Missing: [what's missing]
- Unclear: [what's ambiguous]
- Would help: [what would improve it]
**Recommendation**: Let me use the prompt-optimizer skill to help structure
a clearer, more actionable request.
[Then activate prompt-optimizer]
## Request Analysis
Your request is clear and matches our ui-analyzer skill's capabilities.
**Task Type**: Design Implementation
**Recommended Approach**:
1. Use ui-analyzer to examine the screenshot
2. Extract design tokens and components
3. Generate React code with Tailwind CSS
Proceeding with UI analysis...
[Then activate ui-analyzer]
## Request Analysis
Your request is clear and complete. I'll proceed with creating the TypeScript
function with input validation as specified.
[Proceed with implementation]
## Request Analysis
To help you effectively, I need some additional information:
1. [Question 1]
2. [Question 2]
3. [Question 3]
Once I have these details, I can [what you'll do].
When to Delegate:
How:
Example Flow:
User: "Make a form"
↓
request-analyzer: Detects low specificity
↓
request-analyzer: "This request needs more details. Activating prompt-optimizer..."
↓
prompt-optimizer: Analyzes and provides optimized version
↓
User: Confirms optimized version
↓
react-component-generator: Creates the well-specified form
When to Delegate:
How:
Example Flow:
User: "Build this UI [screenshot attached]"
↓
request-analyzer: Detects design implementation task
↓
request-analyzer: "I'll use ui-analyzer to examine your design..."
↓
ui-analyzer: Analyzes screenshot and generates code
When to Delegate:
How:
Example Flow:
User: "Create a React login form with email/password, validation, TypeScript"
↓
request-analyzer: Detects high-quality component request
↓
request-analyzer: "Clear component spec. Using react-component-generator..."
↓
react-component-generator: Creates the component
| Prompt Quality | Has Screenshot | Task Type | Action |
|---|---|---|---|
| Low (<70%) | No | Any | → prompt-optimizer |
| Low (<70%) | Yes | Design | → prompt-optimizer first, then ui-analyzer |
| High (>80%) | Yes | Design | → ui-analyzer |
| High (>80%) | No | Component | → react-component-generator |
| High (>80%) | No | General Code | → Proceed directly |
| Medium (70-80%) | No | Any | → Ask clarifying questions OR proceed |
If this is a follow-up in an ongoing conversation:
Balance thoroughness with efficiency:
High Confidence (>90%) - Act decisively:
Medium Confidence (60-90%) - Suggest and explain:
Low Confidence (<60%) - Ask or proceed cautiously:
Consult references/skill-activation-guide.md for:
User: "Fix my code"
Analysis:
- Clarity: 20% (what code? what's wrong?)
- Specificity: 10% (no file, no error, no context)
- Completeness: 15% (no reproduction steps, no expected behavior)
- Overall: 15% → Very Low
Decision: Activate prompt-optimizer
Output:
"I notice your request needs more details to be actionable. Let me help
structure it using the prompt-optimizer skill.
Missing information:
- Which file or code section?
- What's the current behavior?
- What error messages appear?
- What should happen instead?
[Activating prompt-optimizer...]"
User: "Implement this login page design [screenshot]"
Analysis:
- Clarity: 85% (clear intent)
- Specificity: 80% (has design, mentions login page)
- Completeness: 75% (might need tech stack clarification)
- Task Type: Design Implementation
- Has Screenshot: Yes
Decision: Activate ui-analyzer (might clarify tech stack within workflow)
Output:
"I'll analyze your login page design and generate the React components.
Using the ui-analyzer skill to:
1. Examine the layout and components
2. Extract design tokens (colors, spacing, typography)
3. Generate React + TypeScript + Tailwind code
[Activating ui-analyzer...]"
User: "Create a React Button component with TypeScript, supporting primary/
secondary/danger variants, sm/md/lg sizes, and Tailwind CSS styling"
Analysis:
- Clarity: 95% (very clear)
- Specificity: 95% (all tech specs present)
- Completeness: 90% (comprehensive requirements)
- Task Type: Code Implementation (React component)
- Overall: 93% → Excellent
Decision: Activate react-component-generator directly
Output:
"Excellent! Your component requirements are clear and complete. I'll use the
react-component-generator skill to create this button component.
[Activating react-component-generator...]"
User: "What's the difference between useState and useReducer in React?"
Analysis:
- Clarity: 100% (perfectly clear)
- Task Type: Explanation/Learning
- No coding task
- No design implementation
Decision: Proceed directly (no special skill needed)
Output:
"Great question! Let me explain the differences between useState and useReducer..."
[Provide explanation directly - no skill activation needed]