Skip to content
Search

AWS Emulator

lastmod 2026-11-12created 2026-11-121 edits

Local AWS API emulator made by AWS itself

About

  • A tool for testing software that uses AWS APIs on a local machine, development server, or CI without calling real AWS. No AWS account is needed and there is no charge
  • A local program that brings up AWS API endpoints and responds with emulated resources. It has no GUI; you point the CLI or SDK at the emulator and run your existing code as is
  • Server mode works with the AWS CLI and all SDKs. The endpoint is set with environment variables, and it provides an HTTPS endpoint 127.0.0.1:9297 with a self-signed certificate
  • Rust embedded mode is added as a dev-dependency and runs an isolated instance inside the process for each test. The emulator's HTTP client is passed directly to the SDK client, so no endpoint, certificate, or environment variable setup is needed
  • Installing the aws-emulator skill in an AI coding agent lets it handle the setup automatically (AWS CLI 2.35.0 or later)
  • For development and testing only; it must not be used for production workloads or security testing. Compatibility with real AWS should be checked for each release
  • Each release publishes per-service behavioral parity scores. Known differences are listed in issues/things-that-do-not-work/ and moved to issues/things-that-now-work/ once fixed. Bugs are accepted only through GitHub Issues; PRs are not accepted
  • Structured as one Rust crate per service; build.rs generates service declarations from each service's Smithy model. core/router/ combines all services behind one endpoint
  • A full debug build compiles every service crate and needs over 100 GB in target/. Embedded mode has the same cost on the first cargo test, so sharing CARGO_TARGET_DIR, using sccache, and pinning to a release commit are recommended
  • Telemetry is on by default. It does not record request/response contents, code, credentials, or personal information, and can be turned off with --telemetry off, EMULATOR_TELEMETRY=off, or config.toml
  • On Linux it installs from RPM and Debian packages; on macOS and Windows you build and run an image from the provided Dockerfile. CC0 1.0 Universal license (code in vendor/ is Apache-2.0)

See also

Favorite site

author MCPBot sitemap