About Kurtosis
Kurtosis is a powerful open-source development environment engine purpose-built for blockchain infrastructure teams, protocol engineers, DevOps, and platform teams. Think of it as “Docker Compose for blockchain infrastructure” — designed to help developers spin up complex local testnets or network simulations using containerized, reproducible environments. With Kurtosis, teams can build, test, and iterate on decentralized systems faster and with less overhead.
At its core, Kurtosis simplifies the entire lifecycle of blockchain application development — from writing code to deploying testnets and debugging service dependencies. Whether you’re working on Ethereum, Polygon CDK, World Chain, or any other modular blockchain, Kurtosis lets you deploy full environments using pre-built or custom packages. It’s already trusted by key players like Ethereum, Polygon, and Worldcoin, and it’s optimized for repeatable, scalable testing setups.
Kurtosis emerged from the growing need for a consistent, modular way to spin up blockchain infrastructure for development and testing. Traditionally, protocol teams and infrastructure engineers have faced significant overhead when replicating testnets or debugging services across different machines or environments. Docker Compose helped general software, but blockchain needs custom networks, rollups, explorers, databases, and configurations — all orchestrated together. Kurtosis was built from the ground up to solve this gap.
The project was officially open-sourced in June 2024 under the Apache 2.0 License. It’s maintained by Kurtosis Technologies and a growing community of developers. The ecosystem includes core packages for Ethereum, Polygon CDK, World Chain, and Blockscout — each deployable with just a single CLI command. Once launched, developers can explore the deployed services in enclaves, interact with ports, download generated configs, and reconfigure services dynamically using simple JSON inputs.
The simplicity of the CLI workflow (e.g., kurtosis run github.com/kurtosis-tech/basic-service-package) hides a rich set of capabilities. Kurtosis supports dynamic scaling, service injection, internal networking, and real-time debugging — all within isolated environments that avoid port collisions and system conflicts. Teams can even connect Kurtosis to Kubernetes for production-grade deployment simulations. The engine’s output gives full visibility into service IPs, configuration files, and real-time logs, all without writing complex orchestration scripts.
Another core advantage is the Kurtosis Package Catalog, which allows developers to share, reuse, and run production-ready packages contributed by the community. Each package is versioned and portable, enabling shared testing workflows across teams. Contributors like EthPandaOps, Bloctopus, and Worldcoin have already added powerful integrations to the ecosystem. The approach aligns well with modular blockchains and rollup-centric architectures.
While tools like Docker Compose or Skaffold provide some support for container orchestration, they aren’t built for blockchain systems. Kurtosis fills that gap, standing out as a protocol-native tool tailored for decentralized environments. It offers an unparalleled developer experience for testnet replication, environment sharing, and infrastructure automation across blockchains.
Kurtosis offers a range of benefits and features that are uniquely tailored for blockchain development teams:
- Protocol-Native Architecture: Designed specifically for blockchain protocols, Kurtosis allows developers to spin up modular, multi-service testnets with a single command.
- Package Catalog: Use pre-built packages from projects like Ethereum, Polygon CDK, and Blockscout, or build and share your own reusable packages.
- Dynamic Configuration: Modify services using simple JSON inputs, enabling easy testing of HA setups, feature flags, and different runtime conditions.
- Port Management: Each environment (called an enclave) uses smart port handling to avoid conflicts and allow for clean local setups.
- CLI Simplicity: Launch full environments using intuitive CLI commands, without writing complex bash scripts or orchestrators.
- Infrastructure Agnostic: Run locally with Docker or scale to Kubernetes with the same package logic — no rewrites required.
- DevTool Integration: Supports VSCode plugins and tooling for syntax highlighting, autocomplete, and config validation.
Kurtosis offers a simple onboarding process for developers eager to get their test environments up and running:
- Step 1 – Install Docker and Kurtosis: Ensure Docker is installed and running, then download the Kurtosis CLI from the official docs.
-
Step 2 – Run a Starter Package: Use
kurtosis run github.com/kurtosis-tech/basic-service-package --enclave quickstartto launch your first containerized environment. -
Step 3 – Inspect Your Setup: Command-click the port URLs printed in the CLI to view the services in your browser. You can also inspect config files using
kurtosis files download. - Step 4 – Modify with JSON Config: Re-run packages using JSON to change instance counts, enable features, or test configuration edge cases.
- Step 5 – Explore More Packages: Visit the Package Catalog to find integrations for Ethereum, Polygon, World Chain, Blockscout, and more.
Kurtosis FAQ
Yes, Kurtosis lets you simulate realistic multi-node testnets with complete control over service instances, network topology, and inter-service dependencies. Using its package system, you can deploy private Ethereum, Polygon, or World Chain devnets with as many nodes or layers as needed, making it ideal for network simulations and validator testing.
Kurtosis provides a much higher abstraction than manual Docker scripting by managing network isolation, service discovery, port conflict avoidance, and dynamic reconfiguration. Instead of writing dozens of bash scripts or YAML files, you use declarative packages that can be reused and shared — saving countless hours in CI testing and local setup.
Absolutely. With Kurtosis, you can easily trace and debug inter-service communication. After running a package, you can download rendered config files, inspect container logs, and validate connection URIs between services — all within your isolated enclave. This makes it simple to troubleshoot issues like IP misconfigurations, port mismatches, or container dependencies.
Kurtosis is ideal for rollup and modular blockchain architectures. Packages like the Polygon CDK or World Chain Builder are already available in the Package Catalog, and you can extend them or create your own to simulate modular chains, DA layers, sequencers, or provers. This gives rollup developers a powerful way to run integration tests before deploying to production.
Yes, that’s one of the platform’s core strengths. Kurtosis packages are portable, versioned, and shareable — meaning teams can run the exact same environment across machines or CI pipelines. Everyone runs the same testnet, with the same service setup, configuration, and behavior. This ensures high reproducibility across development, QA, and DevOps teams.