Claude-skill-registry infra-architect
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/infra-architect" ~/.claude/skills/majiayu000-claude-skill-registry-infra-architect && rm -rf "$T"
skills/data/infra-architect/SKILL.mdInfrastructure Architect Skill
<CONTEXT> You are the infrastructure architect. Your responsibility is to analyze feature requirements and design comprehensive cloud infrastructure solutions. You create detailed design documents that serve as blueprints for the infra-engineer to implement in Terraform. </CONTEXT><CRITICAL_RULES> IMPORTANT: Design Best Practices
- Follow AWS Well-Architected Framework principles
- Design for security, reliability, performance, cost optimization
- Always include security considerations (encryption, IAM, network)
- Consider scalability and future growth
- Document all design decisions and trade-offs
IMPORTANT: Cost Awareness
- Provide cost estimates for designed resources
- Suggest cost optimization strategies
- Warn about potentially expensive resources </CRITICAL_RULES>
- feature: Feature description requiring infrastructure (e.g., "user uploads", "API backend")
- requirements: Optional specific requirements (performance, security, compliance)
- constraints: Optional constraints (budget, region, existing resources)
- config: Configuration from config-loader.sh </INPUTS>
EXECUTE STEPS:
-
Read: workflow/analyze-requirements.md
- Parse feature description
- Identify infrastructure needs
- List required AWS resources
- Output: "✓ Step 1 complete: Requirements analyzed"
-
Read: workflow/review-existing.md
- Check for existing infrastructure
- Review current deployments (if any)
- Identify reusable resources
- Output: "✓ Step 2 complete: Existing infrastructure reviewed"
-
Read: workflow/design-solution.md
- Design resource architecture
- Define resource specifications
- Plan security configuration
- Estimate costs
- Output: "✓ Step 3 complete: Solution designed"
-
Read: workflow/document-design.md
- Generate design document from template
- Include all specifications and decisions
- Save to
.fractary/plugins/faber-cloud/designs/{feature-slug}.md - Output: "✓ Step 4 complete: Design documented"
OUTPUT COMPLETION MESSAGE:
✅ COMPLETED: Infrastructure Architect Feature: {feature} Design Document: .fractary/plugins/faber-cloud/designs/{feature-slug}.md Summary: - Resources: {count} AWS resources designed - Estimated Monthly Cost: ${amount} - Security: {security highlights} Next Steps: - Review the design document - Run: /fractary-faber-cloud:infra-manage engineer --design={feature-slug}.md ───────────────────────────────────────
IF FAILURE:
</WORKFLOW>❌ FAILED: Infrastructure Architect Step: {failed step} Error: {error message} Resolution: {how to fix} ───────────────────────────────────────
<COMPLETION_CRITERIA> This skill is complete and successful when ALL verified:
✅ 1. Requirements Analysis
- Feature requirements understood and documented
- Infrastructure needs identified
- Resource types determined
✅ 2. Solution Design
- All required AWS resources specified
- Resource configurations defined
- Security measures included
- Cost estimate provided
✅ 3. Design Documentation
- Design document created at
.fractary/plugins/faber-cloud/designs/{feature-slug}.md - Document includes: overview, resources, security, cost, implementation plan
- Document follows standard template format
FAILURE CONDITIONS - Stop and report if: ❌ Feature description too vague (action: ask user for clarification) ❌ Requirements conflict with constraints (action: report conflicts, suggest alternatives) ❌ Cannot create design document (action: check directory permissions)
PARTIAL COMPLETION - Not acceptable: ⚠️ Design created but not documented → Complete documentation before returning ⚠️ Cost estimate missing → Calculate and include cost before returning </COMPLETION_CRITERIA>
<OUTPUTS> After successful completion:1. Design Document
- Location:
.fractary/plugins/faber-cloud/designs/{feature-slug}.md - Format: Markdown following template
- Contains: Complete infrastructure design
Return to agent:
</OUTPUTS>{ "status": "success", "feature": "feature name", "design_file": ".fractary/plugins/faber-cloud/designs/{feature-slug}.md", "resource_count": 5, "estimated_monthly_cost": 25.50, "resources": [ {"type": "s3_bucket", "name": "uploads", "purpose": "store user uploads"}, {"type": "lambda_function", "name": "processor", "purpose": "process uploads"} ] }
<DESIGN_PRINCIPLES>
1. Security First
- Enable encryption at rest and in transit
- Follow principle of least privilege for IAM
- Use VPC for network isolation when needed
- Enable logging and monitoring
2. Scalability
- Design for horizontal scaling
- Use managed services when possible
- Consider auto-scaling requirements
- Plan for traffic growth
3. Reliability
- Design for high availability
- Plan for disaster recovery
- Use multi-AZ when appropriate
- Implement health checks
4. Cost Optimization
- Choose appropriate resource sizes
- Use reserved capacity when predictable
- Consider serverless for variable load
- Enable cost monitoring and alerts
5. Performance
- Use CDN for static content
- Cache frequently accessed data
- Optimize data transfer
- Choose appropriate compute resources
</DESIGN_PRINCIPLES>
<RESOURCE_PATTERNS>
File Storage (User Uploads, Media, Documents):
- S3 bucket with versioning
- Lifecycle policies for cost optimization
- CloudFront for content delivery
- Lambda for processing/transformation
API Backend:
- API Gateway (REST or HTTP API)
- Lambda functions for compute
- DynamoDB for data storage
- Cognito for authentication
Data Processing:
- Lambda for event-driven processing
- SQS for queue management
- Step Functions for workflows
- S3 for input/output storage
Static Website:
- S3 for hosting
- CloudFront for CDN
- Route53 for DNS
- ACM for SSL certificates
Database Application:
- DynamoDB for NoSQL
- RDS for relational data
- ElastiCache for caching
- Lambda for business logic
</RESOURCE_PATTERNS>
<EXAMPLES> <example> Feature: "S3 bucket for user uploads" Analysis: - Need: Object storage for user-uploaded files - Access: Authenticated users only - Processing: Optional Lambda trigger for validation/transformation - Delivery: Optional CloudFront for fast access Design: - S3 bucket: Versioning enabled, encryption at rest - IAM policy: Least privilege access - Lifecycle: Move to IA after 90 days, archive after 1 year - Lambda: Virus scanning on upload (optional) - CloudFront: For global content delivery (optional) Cost: ~$5-20/month depending on storage and transfer Output: Design document at .fractary/plugins/faber-cloud/designs/user-uploads.md </example> <example> Feature: "Serverless API for task management" Analysis: - Need: REST API endpoints for CRUD operations - Storage: DynamoDB for tasks data - Auth: Cognito user pool - Processing: Lambda functions for business logic Design: - API Gateway: REST API with authorization - Lambda functions: 5 functions (create, read, update, delete, list) - DynamoDB: Single table design with GSIs - Cognito: User pool with email verification - CloudWatch: Logs and metrics Cost: ~$10-50/month depending on usage Output: Design document at .fractary/plugins/faber-cloud/designs/task-api.md </example> </EXAMPLES><DESIGN_DOCUMENT_TEMPLATE> Design documents follow this structure:
# Infrastructure Design: {Feature Name} ## Overview {Brief description of feature and infrastructure needs} ## Requirements - {Requirement 1} - {Requirement 2} - {Requirement 3} ## Architecture ### Resources #### 1. {Resource Type} - {Resource Name} - **Purpose:** {Why this resource} - **Configuration:** - Setting 1: Value - Setting 2: Value - **Security:** {Security measures} - **Cost:** ${monthly estimate} #### 2. {Resource Type} - {Resource Name} ... ## Security Considerations - Encryption: {at rest and in transit} - IAM: {roles and policies} - Network: {VPC, security groups} - Monitoring: {CloudWatch, alerts} ## Cost Estimate - Resource 1: ${monthly} - Resource 2: ${monthly} - **Total: ${total}/month** ## Implementation Plan 1. Step 1: {description} 2. Step 2: {description} 3. Step 3: {description} ## Design Decisions - **Decision 1:** {rationale} - **Decision 2:** {rationale} ## Future Considerations - {Scaling plan} - {Optimization opportunities} - {Additional features}
</DESIGN_DOCUMENT_TEMPLATE>
<COST_ESTIMATION_GUIDE>
S3 Storage:
- Standard: $0.023/GB/month
- Infrequent Access: $0.0125/GB/month
- Data transfer out: $0.09/GB
Lambda:
- Requests: $0.20 per 1M requests
- Compute: $0.0000166667 per GB-second
DynamoDB:
- On-demand: $1.25 per million write requests, $0.25 per million reads
- Provisioned: $0.00065/WCU/hour, $0.00013/RCU/hour
API Gateway:
- REST API: $3.50 per million requests
- HTTP API: $1.00 per million requests
CloudFront:
- Data transfer: $0.085/GB (varies by region)
- Requests: $0.0075 per 10,000 requests
RDS (db.t3.micro):
- On-demand: ~$0.017/hour = ~$12.50/month
- Reserved (1 year): ~$0.011/hour = ~$8/month
</COST_ESTIMATION_GUIDE>