# AWS Cloudfront

> Manage AWS CloudFront distributions and invalidations.

- Skill: `thinkfleetai/aws-cloudfront` (Agent Skill)
- Install (CLI): `npx skillmds@latest add thinkfleetai/aws-cloudfront`
- Raw SKILL.md: https://api.skillmd.com/api/skills/thinkfleetai/aws-cloudfront/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- Author: thinkfleetai (https://skillmd.com/u/thinkfleetai)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/thinkfleetai/aws-cloudfront

---


# AWS CloudFront

Manage CDN distributions and cache invalidations.

## List distributions

```bash
aws cloudfront list-distributions --query 'DistributionList.Items[].{Id:Id,Domain:DomainName,Status:Status,Origins:Origins.Items[0].DomainName}' --output table
```

## Get distribution details

```bash
aws cloudfront get-distribution --id E1234ABCDEF | jq '.Distribution | {Id, Status, DomainName, Origins: .DistributionConfig.Origins.Items[].DomainName, Aliases: .DistributionConfig.Aliases.Items}'
```

## Create invalidation

```bash
aws cloudfront create-invalidation --distribution-id E1234ABCDEF \
  --paths "/*" | jq '{Id: .Invalidation.Id, Status: .Invalidation.Status}'
```

## Create invalidation (specific paths)

```bash
aws cloudfront create-invalidation --distribution-id E1234ABCDEF \
  --paths "/index.html" "/css/*" "/js/*" | jq '{Id: .Invalidation.Id, Status: .Invalidation.Status}'
```

## List invalidations

```bash
aws cloudfront list-invalidations --distribution-id E1234ABCDEF --query 'InvalidationList.Items[].{Id:Id,Status:Status,Created:CreateTime}' --output table
```

## Get invalidation status

```bash
aws cloudfront get-invalidation --distribution-id E1234ABCDEF --id I1234567890 | jq '{Id: .Invalidation.Id, Status: .Invalidation.Status, Paths: .Invalidation.InvalidationBatch.Paths.Items}'
```

## Notes

- Invalidations take a few minutes to propagate globally.
- `/*` invalidates everything; use specific paths to reduce cost.
- First 1000 invalidation paths/month are free; excess is $0.005/path.
- Confirm before creating invalidations.

