agentsclimarketplace

Aws patterns

Skill Mattakushi432/Claude-Code-Skills-Custom-DevTools-Pack/plugins/devtools-pack/skills/aws-patterns

When to activate: AWS, EC2, ECS, EKS, Lambda, RDS, S3, CloudFront, IAM, VPC, ALB, CloudWatch, CDK, CloudFormationFrom its SKILL.md

Install
npx -y skills add Mattakushi432/Claude-Code-Skills-Custom-DevTools-Pack --skill aws-patterns

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.1 KB, ~1.1k tokens by cl100k_base, as published. Nobody here has run it

AWS Patterns

VPC Design (3-tier)

VPC: 10.0.0.0/16
  Public subnets   (10.0.1.0/24, 10.0.2.0/24) — ALB, NAT Gateway
  Private subnets  (10.0.10.0/24, 10.0.11.0/24) — ECS/EKS workloads
  Data subnets     (10.0.20.0/24, 10.0.21.0/24) — RDS, ElastiCache

IAM Least Privilege (CDK)

from aws_cdk import aws_iam as iam

lambda_role = iam.Role(self, "LambdaRole",
    assumed_by=iam.ServicePrincipal("lambda.amazonaws.com"),
    managed_policies=[
        iam.ManagedPolicy.from_aws_managed_policy_name(
            "service-role/AWSLambdaVPCAccessExecutionRole"
        )
    ]
)

# Only the specific S3 bucket, not *
lambda_role.add_to_policy(iam.PolicyStatement(
    actions=["s3:GetObject", "s3:PutObject"],
    resources=[f"{bucket.bucket_arn}/*"],
    effect=iam.Effect.ALLOW,
))

Lambda Function (CDK)

from aws_cdk import aws_lambda as lambda_, Duration

fn = lambda_.Function(self, "ApiHandler",
    runtime=lambda_.Runtime.PYTHON_3_12,
    handler="handler.main",
    code=lambda_.Code.from_asset("src"),
    timeout=Duration.seconds(30),
    memory_size=512,
    environment={
        "TABLE_NAME": table.table_name,
        "LOG_LEVEL": "INFO",
    },
    tracing=lambda_.Tracing.ACTIVE,  # X-Ray
    reserved_concurrent_executions=100,
)
table.grant_read_write_data(fn)

ECS Fargate Service (CDK)

from aws_cdk import aws_ecs as ecs, aws_ecs_patterns as patterns

service = patterns.ApplicationLoadBalancedFargateService(self, "Service",
    cluster=cluster,
    task_image_options=patterns.ApplicationLoadBalancedTaskImageOptions(
        image=ecs.ContainerImage.from_ecr_repository(repo, tag="1.2.3"),
        container_port=8080,
        environment={"LOG_LEVEL": "info"},
        secrets={"DB_PASSWORD": ecs.Secret.from_secrets_manager(secret)},
    ),
    desired_count=2,
    cpu=512,
    memory_limit_mib=1024,
    health_check_grace_period=Duration.seconds(60),
)

# Auto-scaling
scaling = service.service.auto_scale_task_count(max_capacity=10)
scaling.scale_on_cpu_utilization("CpuScaling",
    target_utilization_percent=70,
    scale_in_cooldown=Duration.seconds(60),
    scale_out_cooldown=Duration.seconds(30),
)

RDS Aurora Serverless v2 (CDK)

from aws_cdk import aws_rds as rds

cluster = rds.DatabaseCluster(self, "DB",
    engine=rds.DatabaseClusterEngine.aurora_postgres(
        version=rds.AuroraPostgresEngineVersion.VER_15_4
    ),
    serverless_v2_min_capacity=0.5,
    serverless_v2_max_capacity=16,
    writer=rds.ClusterInstance.serverless_v2("writer"),
    readers=[rds.ClusterInstance.serverless_v2("reader", scale_with_writer=True)],
    vpc=vpc,
    vpc_subnets=ec2.SubnetSelection(subnet_type=ec2.SubnetType.PRIVATE_WITH_EGRESS),
    backup=rds.BackupProps(retention=Duration.days(7)),
    deletion_protection=True,
    storage_encrypted=True,
)

S3 + CloudFront (CDK)

from aws_cdk import aws_s3 as s3, aws_cloudfront as cf, aws_cloudfront_origins as origins

bucket = s3.Bucket(self, "Assets",
    block_public_access=s3.BlockPublicAccess.BLOCK_ALL,
    encryption=s3.BucketEncryption.S3_MANAGED,
    enforce_ssl=True,
)

distribution = cf.Distribution(self, "CDN",
    default_behavior=cf.BehaviorOptions(
        origin=origins.S3BucketOrigin.with_origin_access_control(bucket),
        viewer_protocol_policy=cf.ViewerProtocolPolicy.REDIRECT_TO_HTTPS,
        cache_policy=cf.CachePolicy.CACHING_OPTIMIZED,
    ),
    price_class=cf.PriceClass.PRICE_CLASS_100,
)

Key Rules

  • Enable CloudTrail + GuardDuty in every account by default
  • Use AWS Secrets Manager, not SSM Parameter Store, for sensitive values
  • Tag all resources: Environment, Team, CostCenter, ManagedBy
  • Enable VPC Flow Logs for security forensics
  • Never use root account credentials — create IAM users/roles per team

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most containers cloud skills give in ~1.1k tokens

Counted across 607 of the 657 authors here whose files we hold, read 2026-08-07

  • Run containers as a non-root userin 66 of 607, across 46 files
  • Use multi-stage buildsin 53 of 607, across 44 files
  • Use Promise.all for independent operationsin 47 of 607, across 13 files
  • Import directly instead of barrel filesin 46 of 607, across 12 files
  • Use ternary instead of AND for conditionalsin 45 of 607, across 12 files
  • Use Set or Map for O(1) lookupsin 42 of 607, across 10 files
  • Create a .dockerignore filein 41 of 607, across 31 files
  • Read individual rule files for detailsin 39 of 607, across 9 files
  • Copy dependency files before source codein 36 of 607, across 23 files
  • Authenticate server actions like API routesin 35 of 607, across 7 files
  • Use next/dynamic for heavy componentsin 34 of 607, across 9 files
  • Use React.cache for per-request deduplicationin 34 of 607, across 10 files

Said here and by no other author read

  • Use a three-tier VPC design
  • Enable CloudTrail and GuardDuty by default

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 326,834. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.