AWS has released a local emulator for over 200 of its cloud services. The tool, named AWS Emulator, runs on a developer’s laptop or within a continuous integration pipeline without requiring an AWS account or incurring service fees. The unusual aspect of the project is that autonomous AI agents wrote and reviewed the entire codebase.
In this article
Tl;dr
- Scale: The project uses 438 API models to cover more than 200 services, with one Rust crate dedicated to each.
- Requirements: Linux x86_64 or aarch64 systems can run the RPM or Debian packages. macOS and Windows users must run it in Docker with a 2 GiB memory cap. Building from source requires 100 GB of free disk space.
- Accuracy: Version 1.0.322 passes 24,243 of 42,857 fidelity tests, representing a 56.6% success rate.
- Top performers: AWS KMS achieved 93.9% accuracy (291 of 310 tests), while Amazon SQS reached 89.8%.
- Lowest scores: AWS CloudFormation scored 15.8% (414 of 2,612 tests).
What is AWS Emulator?
AWS Emulator is a headless application that simulates an AWS API endpoint. Developers point the AWS CLI or SDKs at it using environment variables. The application code remains unchanged. All resources exist in memory and disappear once the emulator stops.
The documentation illustrates this with a DynamoDB example. A CreateTable command using a table name with only two characters fails with the same ValidationException message AWS returns.
How did AI agents build AWS Emulator?
The project began when a prompt was sent to Kiro. It returned a functional Amazon SQS emulator in approximately 15 minutes. AWS then divided the remaining work among three distinct teams of agents:
- Test writers: These agents derive scenarios from the public Smithy API models and verify them against the actual AWS environment.
- Issue finders: They replay the generated tests against the emulator and file any failures.
- Fixers: Each agent takes one issue and submits a patch.
Every patch passes a merge gate that checks for build errors, code review standards, security issues, and fidelity. Several security agents run adversarial reviews. Matthew Goldberg reports hundreds of concurrent agents fixing thousands of issues daily. The release pipeline runs on AWS Developer Tools, using CodeCommit as the agents’ repository. Code reaches GitHub last.
How accurate is AWS Emulator?
AWS publishes a scores.json file with each release. We tallied the data from version 1.0.322, recorded on November 11, 2026.
- Overall: 24,243 of 42,857 scored tests pass (56.6%); 80 were skipped.
- Step level: 49,810 of 68,007 individual steps pass (73.2%).
- Cross-service workflows: 2,752 of 6,569 pass (41.9%).
- Core services: S3 is 79.1%, DynamoDB is 77.3%, SNS is 73.9%, Lambda is 46.4%, and EC2 is 41.5%.
According to the fidelity documentation, control-plane APIs match AWS best. Data-plane support, along with CloudFormation, Terraform and CDK support, varies by service. Unimplemented operations return an HTTP 501 NotImplemented error. The tests live in the aws-emulator-evaluation-suite repository, including the failing ones.
How do you run AWS Emulator?
The README outlines four paths:
- Linux: Install the RPM or Debian package and run
aws-emulator. - macOS/Windows: Build a container from AWS’s Dockerfile, capped at 2 GiB memory.
- Rust embedded mode: Add it as a dev-dependency for one isolated instance per test.
- Coding agents: Use
aws agent-toolkit add-skill --skill-name aws-emulatorwith AWS CLI 2.35.0 or later.
A source build serves HTTPS on 127.0.0.1:9297 with a self-signed certificate. It needs a Rust toolchain, a C compiler and at least 100 GB of disk. Embedded mode carries the same build cost on the first cargo test run.
How does it compare with LocalStack, Moto and Floci?
| Feature | AWS Emulator | LocalStack | Moto | Floci |
|---|---|---|---|---|
| License | CC0 1.0 (vendor Apache 2.0) | Commercial plans | Apache-2.0 | MIT |
| Price | Free | Hobby $0 (non-commercial); Base $39; Ultimate $89 per license/month (annual) | Free | Free |
| Service coverage | 200+ services, 438 API models | 30+ / 55+ / 110+ by plan | Not disclosed in README | Not totaled in README |
| Vendor token needed | No | Yes (auth token) | No | Not disclosed |
| Default endpoint | HTTPS 127.0.0.1:9297 | Port 4566 | Port 5000 | Port 4566 |
| In-process test mode | Rust dev-dependency | Not disclosed | Python @mock_aws decorator | Not disclosed |
| Footprint | 2 GiB Docker limit in AWS guide | Not disclosed | Not disclosed | ~13 MiB idle, ~24 ms start (self-reported) |
| Published fidelity scores | Yes, per release | Not disclosed | Not disclosed | Not disclosed |
What are AWS Emulator’s limitations?
AWS lists them plainly:
- No IAM evaluation: Identity and resource policies are not evaluated like AWS. Do not use it for security tests.
- 1 Region, 1 account: It accepts any IDs but does not isolate resources by them.
- Verified in us-west-2 only: Global services are checked in us-east-1.
- In-memory and short-lived: It is not tested for long runs or load tests. Use
--idle-timeoutto stop it. - Telemetry is on by default: Turn it off with
--telemetry off,EMULATOR_TELEMETRY=off,config.tomlor the embedded API.
The release pace is fast. Versions v1.0.265 to v1.0.322 shipped between November 8 and 11.
What it means for developers
For engineers, this tool offers a free, local copy of the AWS API surface. It allows testing code against AWS-like behaviour without needing live credentials or paying for resources. The fidelity scores show that basic operations work well, but complex workflows and security policies are not reliable yet. Developers should use it for rapid local iteration and CI loops rather than security validation or load testing.


