$npx -y skills add aws/agent-toolkit-for-aws --skill aws-computeProvisions, scales, and operates Amazon EC2 virtual-machine workloads: instance-type selection (Graviton/Arm64, burstable T credits, GPU, instance store vs EBS), launch templates, Auto Scaling groups (scaling policies, instance refresh, mixed instances, Spot, warm pools, lifecycl
| 1 | # Amazon EC2 Compute |
| 2 | |
| 3 | Best experience with the AWS MCP server; also works with the AWS CLI alone — no hard dependency on either. |
| 4 | |
| 5 | ## Critical Warnings |
| 6 | |
| 7 | **Launch configurations are deprecated** and do not support current EC2 instance types; new accounts cannot create them. Use launch templates for every new Auto Scaling group. See [auto-scaling.md](references/auto-scaling.md). |
| 8 | |
| 9 | **ASGs ignore ELB health checks by default**: An Auto Scaling group only uses EC2 status checks unless you set `--health-check-type ELB`. Without it, instances failing the load balancer's health check stay in service forever. See [auto-scaling.md](references/auto-scaling.md). |
| 10 | |
| 11 | **IMDSv2 hop limit breaks containers**: the default `HttpPutResponseHopLimit` of 1 makes the IMDSv2 token PUT response fail to reach a containerized process (the extra hop exceeds the response TTL), so the token request times out. Set `HttpPutResponseHopLimit=2` for bridge/awsvpc container workloads. (If IMDSv2 is *required*, a subsequent tokenless GET returns `401`; if optional, it silently falls back to IMDSv1.) See [provisioning.md](references/provisioning.md). |
| 12 | |
| 13 | **T3/T3a/T4g default to unlimited mode**: Unlike T2 (standard), these burst without throttling but bill surplus CPU credits when 24h-average CPU exceeds baseline — a silent cost leak. See [instance-selection.md](references/instance-selection.md). |
| 14 | |
| 15 | **Instance store is ephemeral**: Data on instance store volumes is lost on stop, hibernate, terminate, instance-type change, and host failure — it survives only a reboot. Put anything durable on EBS/EFS/S3. See [instance-selection.md](references/instance-selection.md). |
| 16 | |
| 17 | ## Which do you need? |
| 18 | |
| 19 | | If you're deciding... | Guidance | |
| 20 | |-----------------------|----------| |
| 21 | | Instance family / size / Graviton / GPU / burstable | [instance-selection.md](references/instance-selection.md) — start with the workload→family table | |
| 22 | | How to define instances once and reuse (launch template) | [provisioning.md](references/provisioning.md) | |
| 23 | | How to run many instances that scale automatically | [auto-scaling.md](references/auto-scaling.md) | |
| 24 | | How to access/patch/manage instances without SSH keys | [systems-manager.md](references/systems-manager.md) | |
| 25 | |
| 26 | ## Quick Navigation |
| 27 | |
| 28 | | You want to... | Go to | |
| 29 | |----------------|-------| |
| 30 | | Pick an instance type, Graviton vs x86, burstable credits, GPU, instance store vs EBS | [instance-selection.md](references/instance-selection.md) | |
| 31 | | Create a launch template, user data, key pairs, IMDSv2, placement groups, Elastic IPs | [provisioning.md](references/provisioning.md) | |
| 32 | | Set up or fix an Auto Scaling group, scaling policies, instance refresh, Spot, lifecycle hooks | [auto-scaling.md](references/auto-scaling.md) | |
| 33 | | Get SSH-less access, patch a fleet, or fix an instance not showing as a managed node | [systems-manager.md](references/systems-manager.md) | |
| 34 | | Create, share, or retire (deprecate/disable/deregister) an AMI | [ami-management.md](references/ami-management.md) | |
| 35 | | Fix something broken (can't connect, status-check fail, capacity error, stuck instances) | [troubleshooting.md](references/troubleshooting.md) | |
| 36 | |
| 37 | ## Common Workflows |
| 38 | |
| 39 | **"Stand up an autoscaling web fleet"** → Create a launch template (AMI, type, IMDSv2), then an ASG referencing it with `--health-check-type ELB` and a target-tracking policy, see [auto-scaling.md](references/auto-scaling.md). For the public entry point, secure the load balancer (TLS/ACM, WAF, security response headers) per the Security Considerations below and the load-balancer notes in [auto-scaling.md](references/auto-scaling.md) — the load-balancer build itself belongs to `aws-networking`. |
| 40 | |
| 41 | **"Roll out a new AMI to my fleet"** → New launch template version → instance refresh; pin a numeric launch-template version so rollback works, see [auto-scaling.md](references/auto-scaling.md). |
| 42 | |
| 43 | **"Connect to a private instance without a bastion"** → Give th |