Using localstack
Skill SpillwaveSolutions/using-localstack-plugin/plugins/using-localstack-plugin/skills/using-localstack
Build, test, and debug AWS-native systems locally with LocalStack (Community/Pro) using awslocal, IaC toolchains, event-driven pipelines, and observability; includes setup, deployment, management, monitoring, and sharp-edge guidance.From its SKILL.md
npx -y skills add SpillwaveSolutions/using-localstack-plugin --skill using-localstackAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
4 things to look at
- reads credentialsReads from 1 credential source: `LOCALSTACK_AUTH_TOKEN`.
- 3 stars3 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.
- runs commandsInstructs the agent to run 8 commands, including `pipx install localstack` and 7 more.
- fetches URLsInstructs the agent to fetch 1 URL, including http://localhost:4566/_localstack/health.
SKILL.md
6.2 KB, ~1.5k tokens by cl100k_base, as published. Nobody here has run it
Mastering LocalStack Pro — Practitioner Skill
Operations-first playbook to emulate AWS locally with high fidelity. Focuses on production-parity workflows (event-driven, streaming, containers, IaC), fast debugging, and deterministic CI.
Audience & Outcomes
- For senior backend/platform/DevOps/AI-data engineers needing production-parity local AWS for event-driven, streaming, and data/agentic workloads
- Assumes AWS fluency; focuses on emulator fidelity vs AWS deltas
- Outcomes: spin up complex stacks locally (EKS/MSK/Aurora/Step Functions), debug IAM/networking/event flows, run deterministic CI/CD
When to Use
- Stand up AWS stacks locally (S3, Lambda, DynamoDB, API Gateway, EventBridge, MSK, EKS, RDS/Aurora, Step Functions)
- Build deterministic CI/CD without hitting real AWS
- Debug IAM, networking, events, or data flows offline before deploying to AWS
When Not to Use
- Production deployments (LocalStack is for dev/test only)
- Multi-region/global table testing (single-region emulation)
- Performance/scale validation (no multi-AZ, different latency profile)
- Managed service edge cases (simplified IAM enforcement, custom resources may differ)
Community vs Pro
- Community: core services (S3, basic Dynamo, Lambda, API GW) for simple serverless
- Pro: advanced services and fidelity (MSK/Kinesis+Pipes, EKS/ECS/Fargate, Aurora/RDS, Step Functions with mocking/visualization, EventBridge schema/pipes, IAM enforcement/Policy Stream, Cloud Pods, offline bundles)
Use Pro when avoiding deploy-to-test cycles outweighs license cost.
Quick Start
-
Install:
pipx install localstack(recommended: isolated Python env, cross-platform) ORbrew install localstack/tap/localstack-cli(macOS-only, simpler on M1/M2) -
Start:
- Community:
localstack start -d - Pro:
LOCALSTACK_AUTH_TOKEN=<token> localstack start -d --version x.y.z
- Community:
-
Health check:
curl http://localhost:4566/_localstack/health | jq
Verify: All needed services show"available"or"running" -
CLI: Use
awslocal <service> ...(wrapper for AWS CLI with endpoint preset to localhost:4566)
Verify:awslocal sts get-caller-identity(should return any identity without error) -
S3 smoke:
awslocal s3 mb s3://demo && awslocal s3 ls
Verify: Output includesdemobucket; if not, check logs:docker logs localstack | grep -i s3 -
DynamoDB smoke:
awslocal dynamodb create-table --table-name test --attribute-definitions AttributeName=id,AttributeType=S --key-schema AttributeName=id,KeyType=HASH --billing-mode PAY_PER_REQUEST
Verify:awslocal dynamodb describe-table --table-name test | jq .Table.TableStatusreturns"ACTIVE"
Debug: If fails, check service health:curl http://localhost:4566/_localstack/health | jq .services.dynamodb -
Lambda smoke: Package code,
awslocal lambda create-function ..., theninvoke
Verify: Check invocation result and CloudWatch logs:awslocal logs tail /aws/lambda/<function-name> -
Events: Create SQS queue/SNS topic/EventBridge rule; wire S3/Lambda triggers; push test event
See Service Workflows for detailed event-driven patterns -
IaC: Use
tflocal/cdklocal/CloudFormation against LocalStack
See IaC Deployment for toolchain setup and patterns -
Observe:
docker logs localstack,LS_LOG=tracefor deep traces
See Debugging & Observability for troubleshooting
Architecture Concepts
- Single edge port (4566) routes all service APIs; use
*.localhost.localstack.cloudfor service hostnames - Providers execute actual service logic (SNS→SQS fan-out, S3 event triggers) not stubs; scale/latency differs from AWS
- Event-first bus: cross-service notifications emitted internally; ideal for testing async S3/SNS/SQS/EventBridge/Lambda flows
- Hermetic by default: prefer endpoint injection/DNS over hardcoding
localhost:4566; treat persistence as optional
Detailed Guides
- Setup & Configuration - Installation, runtime tuning, persistence, ports, resource allocation
- Service Workflows - S3, Lambda, DynamoDB, EventBridge, MSK, EKS, RDS, Step Functions, CloudWatch
- Docker-Based Lambda & Fargate - Container images, ECR, Lambda packaging, Fargate orchestration, networking
- Docker Desktop Troubleshooting - Diagnostic flowchart for networking, compute, persistence, IAM, and performance issues
- Rancher Desktop Troubleshooting - Lima/WSL2 virtualization, containerd vs Moby, socket interfaces, VZ/VirtioFS optimization
- IaC Deployment - Terraform, CDK, CloudFormation patterns and toolchain setup
- State & Seeding - Persistence, Cloud Pods, init hooks, parallel environments
- Debugging & Observability - Logs, health checks, failure injection, networking
- CI/CD Patterns - Container-based integration testing
- Sharp Edges - Limits, gotchas, AWS parity gaps
Examples & Scripts
- End-to-End Examples - Complete workflows, helper scripts, integration tests
- docker-compose.yml - Production-grade LocalStack configuration
- e2e-lambda-fargate-s3.sh - Full Lambda + Fargate + S3 workflow
- ecr-helper.sh - ECR repository and image management utility
Official References
- Overview: https://docs.localstack.cloud/overview/
- Installation: https://docs.localstack.cloud/getting-started/installation/
- Configuration: https://docs.localstack.cloud/references/configuration/
- Service guides: https://docs.localstack.cloud/aws/services/
- Step Functions testing/mocking: https://blog.localstack.cloud/aws-step-functions-mocking/
What ships with it: 14 files
135.1 KB alongside SKILL.md, 2 of them executable
examples/
- docker-compose.yml3.2 KB
- e2e-lambda-fargate-s3.shruns9.3 KB
- ecr-helper.shruns6.3 KB
- README.md7.8 KB
references/
- ci-cd.md7.5 KB
- debugging.md7.1 KB
- docker-desktop-troubleshooting.md18.0 KB
- docker-lambda-fargate.md14.3 KB
- iac.md6.7 KB
- rancher-desktop-troubleshooting.md27.0 KB
- services.md11.9 KB
- setup.md3.8 KB
- sharp-edges.md7.6 KB
- state.md4.6 KB