kumo, a lightweight AWS service emulator written in Go
·2026.04.23 09:31
Key point
Introducing kumo, a local emulator supporting 76 AWS services
Details
A lightweight AWS service emulator written in Go.
It lets you quickly set up a compatible environment for local development and CI/CD testing without needing real AWS.
- Runs as a single binary, and also supports Docker-based execution.
- Operates without authentication, reducing the burden of preparing AWS credentials in automation pipelines.
- The default endpoint is
localhost:4566. - Setting
KUMO_DATA_DIRlets you persist data as per-service JSON files; if unset, it runs in-memory only. - All requests are logged in structured format — at INFO level you can see method, path, status code, latency, etc., and at DEBUG level you can even see the request body.
- Additional test endpoints are provided under
/kumo/to query the list of sent emails via SES v2 and the list of sent messages via Pinpoint SMS Voice v2.
The supported scope covers 76 AWS services.
- Storage: S3, DynamoDB, EBS, Glacier, etc.
- Compute: Lambda, EC2, Batch, etc.
- Containers: ECS, ECR, EKS
- Databases: RDS, Neptune, Redshift
- Messaging/Integration: SQS, SNS, EventBridge, Kinesis, etc.
- Security/Identity: IAM, KMS, Secrets Manager, Cognito, etc.
- Monitoring/Logging: CloudWatch, CloudTrail, X-Ray
Examples include creating and uploading to S3 buckets, sending and receiving SQS queue messages, handling DynamoDB tables/items, and creating and retrieving Secrets Manager secrets.
Distributed under the MIT License.
This summary was generated automatically by AI. Check the original for the author's claims and context. Copyright belongs to the original author.
Our guide explains how the AI works. Report summary errors, attribution issues, or removal requests via Contact.