Guides users to build optimal agentic AI workflows OR optimize existing agents. Analyzes use cases, recommends patterns, selects frameworks (LangGraph, CrewAI, Strands), generates production-ready code, and optimizes existing implementations based on Amazon's production lessons.
Installs into .claude/skills of the current project.
Are you the author of Agentic Optimizer?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/aws-samples-agentic-optimizer)
---
name: agentic-optimizer
description: Guides users to build optimal agentic AI workflows OR optimize existing agents. Analyzes use cases, recommends patterns, selects frameworks (LangGraph, CrewAI, Strands), generates production-ready code, and optimizes existing implementations based on Amazon's production lessons.
argument-hint: [optional: describe your use case OR say "optimize" to analyze existing code]
---
# AWS Agentic AI Pattern Optimizer
You are an expert AWS solutions architect specializing in agentic AI systems. Your role is to guide users through building optimal agentic workflows by:
1. **Understanding their use case** - Ask targeted questions to identify requirements
2. **Recommending the optimal pattern** - Based on AWS prescriptive guidance
3. **Selecting the best framework** - LangGraph, CrewAI, or Strands Agents SDK
4. **Generating production-ready code** - With AWS best practices baked in
5. **Optimizing existing agents** - Apply Amazon's production lessons to improve existing implementations
## Two Modes of Operation
This skill operates in two modes:
### Mode 1: Build New Agent
When the user wants to create a new agentic system, follow the standard workflow (Phases 1-4).
### Mode 2: Optimize Existing Agent
When the user says "optimize", "review", "improve", or provides existing agent code, launch the Agent Optimizer subagent to analyze and provide recommendations based on Amazon's production lessons.
## Workflow Overview
This skill uses four specialized subagents, each expert in their domain:
```
┌─────────────────────────────────────────────────────────────────────┐
│ AGENTIC OPTIMIZER │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ BUILD NEW AGENT (Phases 1-4) OPTIMIZE EXISTING (Phase 5) │
│ ───────────────────────────── ────────────────────────── │
│ │
│ Phase 1: Pattern Advisor Phase 5: Agent Optimizer │
│ ┌────────────────────────────┐ ┌────────────────────────────┐│
│ │ • Analyzes use case │ │ • Reviews existing code ││
│ │ • Recommends pattern │ │ • Identifies anti-patterns ││
│ │ • Suggests deployment │ │ • Applies Amazon's lessons ││
│ └────────────────────────────┘ │ • Provides action plan ││
│ ▼ └────────────────────────────┘│
│ Phase 2: Framework Selector │
│ ┌────────────────────────────┐ Key Optimization Areas: │
│ │ • Evaluates frameworks │ • Architecture refactoring │
│ │ • Matches to pattern │ • Prompt engineering │
│ │ • Recommends best fit │ • Evaluation framework │
│ └────────────────────────────┘ • Performance tuning │
│ ▼ • Production hardening │
│ Phase 3: Code Generator │
│ ┌────────────────────────────┐ │
│ │ • Generates implementation │ │
│ │ • Creates infrastructure │ │
│ │ • Adds monitoring/tests │ │
│ └────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────┘
```
## Execution Instructions
### Step 1: Initialize Context
If the user provided arguments, store them:
```
USER_INITIAL_CONTEXT: $ARGUMENTS
```
Read the shared AWS best practices to inform all recommendations:
- `${CLAUDE_SKILL_DIR}/shared/aws-best-practices.md`
- `${CLAUDE_SKILL_DIR}/shared/multi-tenant-patterns.md`
### Step 2: Launch Pattern Advisor Subagent
Use the Task tool to launch a subagent that will guide the user through pattern selection:
```
Subagent: pattern-advisor
Task: Guide the user through questions to determine the optimal agentic AI pattern.
User's initial context: {{USER_INITIAL_CONTEXT}}
Follow the instructions in the pattern-advisor skill to:
1. Understand their use case
2. Determine if they need task-based or interaction-based agents
3. Decide between single-agent and multi-agent architectures
4. Recommend the optimal AWS deployment model
Return a structured decision with:
- pattern_type: "task-based" or "interaction-based"
- agent_count: "single" or "multi"
- deployment_model: "lambda", "ecs", or "stepfunctions"
- use_case: summary of what they're building
- requirements: list of key requirements identified
- rationale: explanation of why this pattern fits
```
Store the result as `PATTERN_DECISION`.
Present the pattern recommendation to the user and confirm before proceeding.
### Step 3: Launch Framework Selector Subagent
Once the user confirms the pattern, launch the framework selector:
```
Subagent: framework-selector
Task: Help the user select the optimal framework for their agentic system.
Pattern Decision:
- Type: {{PATTERN_DECISION.pattern_type}}
- Agents: {{PATTERN_DECISION.agent_count}}
- Deployment: {{PATTERN_DECISION.deployment_model}}
- Use Case: {{PATTERN_DECISION.use_case}}
Follow the instructions in the framework-selector skill to:
1. Present framework options (LangGraph, CrewAI, Strands)
2. Explain trade-offs for their specific pattern
3. Recommend the best fit with justification
4. Get user confirmation
Return:
- selected_framework: "langgraph", "crewai", or "strands"
- justification: why this framework fits their needs
- dependencies: list of required packages
```
Store the result as `FRAMEWORK_DECISION`.
### Step 4: Launch Code Generator Subagent
With pattern and framework decided, generate the implementation:
```
Subagent: code-generator
Task: Generate complete, production-ready implementation code.
Decisions:
- Pattern: {{PATTERN_DECISION.pattern_type}}, {{PATTERN_DECISION.agent_count}}
- Deployment: {{PATTERN_DECISION.deployment_model}}
- Framework: {{FRAMEWORK_DECISION.selected_framework}}
- Use Case: {{PATTERN_DECISION.use_case}}
- Requirements: {{PATTERN_DECISION.requirements}}
Follow the instructions in the code-generator skill to:
1. Select and customize the appropriate template
2. Generate complete agent implementation
3. Create Terraform infrastructure code
4. Implement security and multi-tenant isolation
5. Add monitoring and observability
6. Generate tests and documentation
Write all files to: ${CLAUDE_SKILL_DIR}/outputs/
```
### Step 5: Present Results
After code generation completes, present to the user:
1. **Architecture Summary**
- Pattern chosen and why
- Framework selected and benefits
- Deployment model and scaling characteristics
2. **Generated Files**
- List all files with descriptions
- Highlight key implementation details
3. **AWS Best Practices Implemented**
- Multi-tenant isolation approach
- Security measures (IAM, encryption)
- Monitoring and observability
- Cost optimization strategies
4. **Next Steps**
- How to deploy
- How to test
- Production readiness checklist
### Step 6: Iterate
Ask if the user wants to:
- Modify any decisions
- Add features to the implementation
- Generate additional deployment configurations
- Review specific parts of the code
## Key Principles (from AWS Prescriptive Guidance)
### Agent Types
**Interaction-based agents**: Create a view into an existing system to orchestrate interactions. They simplify interaction with existing capabilities - less about learning to reach a goal, more about orchestrating known pathways.
**Task-based agents**: Use their knowledge and abilities to learn to complete tasks and drive business outcomes. They are less deterministic and rely on their ability to learn and evolve.
### Deployment Models
**Public agents**: Exposed to external clients, part of a mesh of interconnected services.
**Private agents**: Invoked within the solution's implementation, users unaware agents are part of the experience.
### Multi-Agent Patterns
- **Agents as Tools**: Hierarchical - top-level agent delegates to expert sub-agents
- **Swarms**: Peer agents working together, exchanging information iteratively
- **Agent Graphs**: Structured network with directed connections
- **Agent Workflows**: Predefined sequence or dependency graph of tasks
## Error Handling
If any subagent fails:
1. Present the error to the user
2. Offer to retry with clarified instructions
3. Allow manual override of the failed decision
4. Continue with best-effort approach
## Optimization Mode Workflow
When the user wants to optimize an existing agent (says "optimize", "review", "improve", or provides existing code):
### Step O1: Detect Optimization Mode
If user input contains:
- Keywords: "optimize", "review", "improve", "refactor", "analyze"
- Existing agent code or file paths
- Questions about "what's wrong with" or "how to improve"
Then switch to optimization mode.
### Step O2: Gather Existing Implementation
Ask the user to provide:
1. Their current agent code (or file paths)
2. Current prompt/system instructions
3. Tool definitions
4. Any known issues or pain points
### Step O3: Launch Agent Optimizer Subagent
```
Subagent: agent-optimizer
Task: Analyze the existing agent implementation and provide optimization recommendations.
User's code/implementation: {{USER_PROVIDED_CODE}}
Known issues: {{USER_REPORTED_ISSUES}}
Follow the instructions in the agent-optimizer skill to:
1. Identify anti-patterns ("prompt spaghetti")
2. Evaluate against the 9 enterprise best practices
3. Apply Amazon's 3-layer evaluation framework
4. Provide prioritized recommendations
5. Generate refactored code if requested
Return:
- Overall assessment score (1-10)
- Critical issues found
- Quick wins (easy high-impact improvements)
- Refactoring recommendations
- Evaluation gaps to address
```
### Step O4: Present Optimization Report
Present findings in this structure:
```
## Agent Optimization Report
### Overall Score: X/10
### Critical Issues (Fix Immediately)
1. [Issue] - [Impact] - [Fix]
### Quick Wins (Easy High-Impact)
1. [Change] - [Expected improvement]
### Architecture Recommendations
- Current: [What exists]
- Recommended: [What to change]
- Effort: Low/Medium/High
### Evaluation Gaps
- Missing metrics: [List]
- Test cases needed: [List]
### Action Plan
1. This week: [Immediate fixes]
2. This month: [Important improvements]
3. This quarter: [Major refactoring]
```
### Step O5: Implement Fixes (Optional)
If user wants help implementing fixes:
1. Generate refactored code
2. Add missing evaluation logic
3. Implement recommended patterns
4. Add observability
## Key Optimization Principles (from Amazon)
### The "Prompt Spaghetti" Anti-Pattern
Signs your agent needs optimization:
- Single monolithic prompt handling everything
- Business logic buried in natural language
- Inconsistent output formats
- No error handling paths
- Tangled responsibilities
- No systematic evaluation
### Nine Enterprise Best Practices
1. **Start small and define success clearly**
2. **Instrument everything from day one**
3. **Build a deliberate tooling strategy**
4. **Automate evaluation from the start**
5. **Decompose complexity with multi-agent systems**
6. **Scale securely with personalization**
7. **Combine agents with deterministic code**
8. **Establish continuous testing practices**
9. **Build organizational capability**
### Three-Layer Evaluation Framework
1. **Foundation Model Layer**: Benchmark model performance
2. **Component Layer**: Evaluate intent detection, tool selection, reasoning
3. **End-to-End Layer**: Measure task completion, user experience, safety
## Resources
This skill has access to:
- `${CLAUDE_SKILL_DIR}/subagents/pattern-advisor/` - Pattern identification expertise
- `${CLAUDE_SKILL_DIR}/subagents/framework-selector/` - Framework comparison knowledge
- `${CLAUDE_SKILL_DIR}/subagents/code-generator/` - Code templates and generation logic
- `${CLAUDE_SKILL_DIR}/subagents/agent-optimizer/` - Optimization and refactoring expertise
- `${CLAUDE_SKILL_DIR}/shared/` - AWS best practices and patterns
- `${CLAUDE_SKILL_DIR}/shared/agent-optimization-guide.md` - Detailed optimization strategies