Agent skill

Kurtosis Ethereum

by ethpandaops in ethpandaops/ethereum-package

Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package.

MITAuto-check: notesDevOps & Cloud

Install Kurtosis Ethereum

skills CLI
$ npx skills add ethpandaops/ethereum-package --skill kurtosis-ethereum -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install ethpandaops/ethereum-package kurtosis-ethereum --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/ethpandaops/ethereum-package.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/kurtosis-ethereum .claude/skills/kurtosis-ethereum && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
kurtosis-ethereum
GitHub stars
481
Token cost
~1.6k tokens
SKILL.md length
397 words
Files
2
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package.

  • Spinning up local devnets
  • SKILL.md covers Config Principle, Quick Start, Config Structure… and Reference Tool, plus 4 more sections
  • Runs Shell scripts from its folder; calls curl, jq and bash
  • Syncing public testnets

What it does

Kurtosis Ethereum is an agent skill from ethpandaops/ethereum-package. Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package. Use for spinning up local devnets, syncing public testnets, validating cross-client interop, testing fork transitions, shadowforks, running assertoor checks, debugging CL/EL client interactions, or verifying new feature implementations across multiple consensus and execution clients.

Its SKILL.md is about 1.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `kurtosis-ref.sh`).

It sits in DevOps & Cloud. It works with Ethereum, Docker and Kubernetes. The repository describes itself as: A Kurtosis package that deploys a private, portable, and modular Ethereum devnet. The licence is MIT.

When your agent uses it

  • Spinning up local devnets
  • Syncing public testnets
  • Validating cross-client interop
  • Testing fork transitions

Example prompts

  • “/kurtosis-ethereum”

Requirements

  • A Bash shell
  • Docker
  • Pre-approved tools (allowed-tools): Bash, Read, Write, Edit, WebFetch, Glob, Grep

What it can do on your machine

Read from SKILL.md and the folder at commit 98f1dfb. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Bash
    • Read
    • Write
    • Edit
    • WebFetch
    • Glob
    • Grep

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships script files (Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • curl
    • jq
    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Kurtosis Ethereum loads about 1.6k tokens when it runs. Until then it costs about 97 tokens; SKILL.md has 397 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~97
When it runs · the whole SKILL.md, loaded when a task matches
~1.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Bash, Read, Write, Edit, WebFetch, Glob, Grep

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from ethpandaops/ethereum-package at commit 98f1dfb, republished under its MIT licence (© ethpandaops). 397 words, ~1,629 tokens.

Download SKILL.mdSave it as .claude/skills/kurtosis-ethereum/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
kurtosis-ethereum
description
Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package. Use for spinning up local devnets, syncing public testnets, validating cross-client interop, testing fork transitions, shadowforks, running assertoor checks, debugging CL/EL client interactions, or verifying new feature implementations across multiple consensus and execution clients.
allowed-tools
Bash, Read, Write, Edit, WebFetch, Glob, Grep

Kurtosis Devnet

Run Ethereum consensus/execution client devnets via kurtosis + ethereum-package.

Config Principle

Only include fields that differ from defaults. If the task doesn't mention a setting, don't include it. Shorter configs are better — let the defaults handle the rest.

Quick Start

bash
# ALWAYS start the OTel stack first — runs an OTel collector + ClickHouse on the
# Docker host for centralized log (and trace) collection while debugging.
# Docker-only. Logs are stamped with the enclave name; traces require the
# `otel` additional_service (see below). ClickHouse on :18123, OTLP on :14317/:14318.
kurtosis otel start

# Write a network_params.yaml, then:
kurtosis run github.com/ethpandaops/ethereum-package \
  --enclave <name> \
  --args-file network_params.yaml \
  --image-download always

kurtosis enclave ls                    # list enclaves
kurtosis enclave inspect <name>        # inspect services + ports
kurtosis service logs <enclave> <svc>  # view logs
kurtosis enclave rm -f <name>          # cleanup

If you are told to use a fork or a branch of the ethereum-package, then replace github.com/ethpandaops/ethereum-package with github.com/<fork>/ethereum-package@branch

If you want to quickly sanity check something, then use preset: "minimal". This will lead to much faster networks, but do not default to this approach. Only use it when you are sure you want to quickly check something. When the user expects it to behave like mainnet, then use preset: "mainnet".

Config Structure (network_params.yaml)

participants

Each entry is a CL+EL node. Only specify fields you need to override:

yaml
participants:
  - el_type: geth           # geth, reth, nethermind, besu, erigon
    cl_type: lighthouse      # lighthouse, lodestar, prysm, teku, nimbus

Available overrides (only use when needed):

  • el_image / cl_image / vc_image — custom Docker images
  • el_extra_params / cl_extra_params / vc_extra_params — extra CLI flags
  • el_max_cpu / el_max_mem / cl_max_cpu / cl_max_mem — resource limits (millicores / MB)
  • vc_type — separate validator client type (creates a dedicated vc service)
  • use_remote_signer: true + remote_signer_type: web3signer — remote signing
  • count — number of identical instances (default: 1)
  • validator_count — validators assigned (default: from network config)
network_params

Network-level settings. Only include fields you need to change. Use kurtosis-ref.sh search <term> to find exact field names — do not guess.

yaml
network_params:
  # Only add fields the task requires. Examples of available settings:
  # preset, seconds_per_slot, fork epochs, gas limits, etc.
  # Verify field names with: bash .claude/skills/kurtosis-ethereum/kurtosis-ref.sh search <term>
additional_services
yaml
additional_services:
  - dora                     # block explorer
  - assertoor                # automated testing
  - otel                     # ship EL/CL/VC traces to the engine OTel/ClickHouse
                             # stack (Docker-only; requires `kurtosis otel start`)
Show full SKILL.md (189 more words)Show less

Reference Tool

One script for all lookups. Use targeted sections instead of all.

bash
bash .claude/skills/kurtosis-ethereum/kurtosis-ref.sh <section>
SectionWhat it shows
clientsSupported EL/CL/VC client types
participantsParticipant fields with defaults
networknetwork_params fields with defaults
forksFork epoch fields and defaults
mevMEV types and params
servicesAdditional services list
sectionsConfig subcategory and root-level params
search <term>Search the README for a field/concept
example <name>Fetch a real CI test config (e.g. remote-signer, minimal, mix)
examplesList all available CI test configs

Use targeted sections instead of dumping everything. For example:

  • Need to know MEV options? kurtosis-ref.sh mev
  • Unsure about a field name? kurtosis-ref.sh search gas_limit
  • Need fork epoch names? kurtosis-ref.sh forks
  • Setting up something complex? kurtosis-ref.sh example remote-signer to see a working CI config

Service Naming Convention

  • EL: el-{index}-{el_type}-{cl_type}
  • CL: cl-{index}-{cl_type}-{el_type}
  • VC: vc-{index}-{el_type}-{cl_type}-{vc_type} (only when vc_type differs from cl_type)

Examples

2-node devnet
yaml
participants:
  - el_type: geth
    cl_type: lodestar
  - el_type: reth
    cl_type: lighthouse

network_params:
  preset: minimal
Mixed clients with monitoring
yaml
participants:
  - el_type: geth
    cl_type: lighthouse
  - el_type: nethermind
    cl_type: prysm
  - el_type: besu
    cl_type: teku

network_params:
  preset: minimal

additional_services:
  - dora
  - assertoor

assertoor_params:
  run_stability_check: true
Custom images
yaml
participants:
  - el_type: geth
    el_image: ethpandaops/geth:my-branch
    cl_type: lighthouse
    cl_image: ethpandaops/lighthouse:my-branch

network_params:
  preset: minimal
Observer node (no validators)
yaml
participants:
  - el_type: geth
    cl_type: lighthouse
    validator_count: 0

network_params:
  preset: minimal

Monitoring

bash
# Check finality
curl -s http://127.0.0.1:<cl-port>/eth/v1/beacon/states/head/finality_checkpoints | jq

# Check peers
curl -s http://127.0.0.1:<cl-port>/eth/v1/node/peers | jq '.data | length'

Finality requires ~6-8 min after genesis with default settings (32 slots/epoch, 12s/slot).

Troubleshooting

IssueFix
Image not foundVerify image exists in registry; use --image-download always
Port conflictsMay be conflicting enclaves, ask user how to proceed

© ethpandaops, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .claude/skills/kurtosis-ethereum of ethpandaops/ethereum-package.

  • SKILL.md
  • kurtosis-ref.sh

Open the folder on GitHubat commit 98f1dfb

Compare with similar skills

Kurtosis Ethereum next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Kurtosis Ethereum compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Kurtosis Ethereum this skillethpandaops/ethereum-package481—~1.6kAutomated safety check: NotesMIT
.NET Crash Dump Collectiondotnet/skills5.6k2 repos~1.1kAutomated safety check: PassMIT
Ama Logs Update Charts Release Notesmicrosoft/Docker-Provider174—~2.6kAutomated safety check: PassCustom licence
Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit2606 repos~1.1kAutomated safety check: NotesCustom licence
LangBot Deployment Guidelangbot-app/LangBot18k—~1.2kAutomated safety check: NotesApache-2.0
Build Openshell Mxc WindowsNVIDIA/OpenShell16k—~4.9kAutomated safety check: PassApache-2.0

Similar skills

  • Official

    Configures automatic crash dumps or captures dumps from running processes for modern .NET apps on Linux, macOS and Windows, including Docker and Kubernetes.

    5.6k GitHub starsUsed in 2 repos~1.1k tokens
    DevOps & CloudAuto-check passed
  • Ama Logs Update Charts Release Notes

    microsoft/Docker-Provider

    Official

    Prepare an ama-logs release PR: bump the image tag (X.Y.Z) across Helm charts, manifests, and Dockerfiles, and add a formatted ReleaseNotes.md entry.

    174 GitHub stars~2.6k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Senior DevOps Toolkit

    maslennikov-ig/claude-code-orchestrator-kit

    Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…

    260 GitHub starsUsed in 6 repos~1.1k tokens
    DevOps & CloudAuto-check: notes
  • LangBot Deployment Guide

    langbot-app/LangBot

    Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.

    18k GitHub stars~1.2k tokensUpdated today
    DevOps & CloudAuto-check: notes
  • Official

    Maintain and validate OpenShell's build-only Windows MSVC lane for x64 and ARM64.

    16k GitHub stars~4.9k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Devops

    nicepkg/auto-company

    Deploy to Cloudflare (Workers, R2, D1), Docker, GCP (Cloud Run, GKE), Kubernetes (kubectl, Helm).

    195 GitHub starsUsed in 2 repos~814 tokens
    DevOps & CloudAuto-check passed

Questions about Kurtosis Ethereum

What does Kurtosis Ethereum do?

Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package. Kurtosis Ethereum is an agent skill from ethpandaops/ethereum-package. Run Ethereum multi-client devnets using Kurtosis and the ethpandaops/ethereum-package.

When should I use Kurtosis Ethereum?

Kurtosis Ethereum fits situations like: spinning up local devnets; syncing public testnets; validating cross-client interop; testing fork transitions.

How do I install Kurtosis Ethereum in Claude Code?

Run `npx skills add ethpandaops/ethereum-package --skill kurtosis-ethereum -a claude-code`. Or copy the skill folder (.claude/skills/kurtosis-ethereum in ethpandaops/ethereum-package) into .claude/skills/kurtosis-ethereum in your project. Claude Code loads it when a task matches its description.

How do I install Kurtosis Ethereum in Codex?

Run `npx skills add ethpandaops/ethereum-package --skill kurtosis-ethereum -a codex`. Or copy the skill folder (.claude/skills/kurtosis-ethereum in ethpandaops/ethereum-package) into .agents/skills/kurtosis-ethereum in your project. Codex loads it when a task matches its description.

Can I use Kurtosis Ethereum in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add ethpandaops/ethereum-package --skill kurtosis-ethereum -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/kurtosis-ethereum, .gemini/skills/kurtosis-ethereum, .github/skills/kurtosis-ethereum and .opencode/skills/kurtosis-ethereum in your project.

What does Kurtosis Ethereum need to run?

Going by SKILL.md and its folder, Kurtosis Ethereum needs a shell for the scripts in its folder and the command-line tools its instructions call (curl, jq and bash). Our summary lists: A Bash shell; Docker. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit, WebFetch, Glob, Grep.

Does Kurtosis Ethereum access the network?

SKILL.md names 1 domain. As links in the text: github.com. This is read from the text; nothing was executed.

Is Kurtosis Ethereum safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Kurtosis Ethereum use?

Kurtosis Ethereum is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Kurtosis Ethereum use?

About 1.6k tokens (SKILL.md is roughly 6.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Kurtosis Ethereum?

Skills that share tags, products or a category with Kurtosis Ethereum: .NET Crash Dump Collection (dotnet/skills, 5.6k stars), Ama Logs Update Charts Release Notes (microsoft/Docker-Provider, 174 stars), Senior DevOps Toolkit (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and LangBot Deployment Guide (langbot-app/LangBot, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Kurtosis Ethereum?

ethpandaops (a GitHub organization) maintains it in ethpandaops/ethereum-package, which has 481 GitHub stars. The repository was last updated on October 9, 2026.

Source: ethpandaops/ethereum-package on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.