Skip to main content

Merobox CLI

A Python CLI for managing Calimero nodes (Docker or native) and orchestrating YAML workflows.

Full documentation: https://calimero-network.github.io/merobox/

Quick Start

Installation

PyPI (recommended):

pipx install merobox

From source:

git clone https://github.com/calimero-network/merobox.git
cd merobox
pipx install -e .

Basic Usage

# Start Calimero nodes
merobox run --count 2

# Start with auth service (Docker mode)
merobox run --auth-service

# Start with embedded auth (binary mode)
merobox run --no-docker --binary-path /path/to/merod --auth-mode embedded

# Pass extra arguments straight to `merod run` (binary mode only)
merobox bootstrap run workflow.yml --no-docker --binary-path ./merod \
  --merod-args="--sync-strategy delta --state-sync-strategy hash"

# Check node status
merobox health

# Execute a workflow
merobox bootstrap run workflow.yml

# Stop all nodes
merobox stop --all

Example Workflow

name: "Hello World"
nodes:
  count: 2
  prefix: "node"

steps:
  - name: "Install App"
    type: "install_application"
    node: "node-1"
    path: "./app.wasm"
    outputs:
      app_id: applicationId

  - name: "Create Context"
    type: "create_context"
    node: "node-1"
    application_id: "{{app_id}}"
    outputs:
      ctx_id: contextId

  - name: "Call Method"
    type: "call"
    node: "node-1"
    context_id: "{{ctx_id}}"
    method: "hello"

Features

  • Node Management — Start, stop, and monitor nodes in Docker or as native processes
  • Workflow Orchestration — ~100 step types for complex multi-step YAML workflows
  • Remote Nodes — Connect to remote Calimero nodes with user/password or API key auth
  • Auth Integration — Traefik proxy (Docker) or embedded JWT auth (binary mode)
  • Fuzzy Testing — Long-duration randomized load tests with weighted operations
  • pytest Integration — cluster() and workflow() context managers for test harnesses

Requirements

  • Python: 3.9 – 3.11 (3.12+ not supported due to py-near / ed25519 dependency)
  • Docker: 20.10+ (for Docker mode)
  • OS: Linux, macOS (Windows via WSL only)

Documentation

All detailed documentation lives in the Documentation:

Topic Page
System architecture & data flow System Overview
WorkflowExecutor, BaseStep, step factory Workflow Engine
DockerManager, BinaryManager, Traefik Node Management
Remote node CLI & auth methods Remote Nodes
Complete YAML schema & all step types Workflow YAML
All CLI commands with flags & options CLI Reference
MeroboxError hierarchy, retry patterns Error Handling
cluster(), workflow(), pytest fixtures Testing Guide
Common issues & debugging tips Troubleshooting
Terms & definitions Glossary

Release Process

# Update version in ONE place
vim merobox/__init__.py  # Change __version__ = "X.Y.Z"

# Commit and push — automation handles tagging, builds, GitHub release, and PyPI
git add merobox/__init__.py
git commit -m "chore: bump version to X.Y.Z"
git push origin master

Contributing

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Submit a pull request

See the Testing Guide for development setup and adding new commands/step types.

License

MIT — see LICENSE for details.

Links

Release files for merobox 0.6.70

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for merobox 0.6.70
File Size Uploaded
merobox-0.6.70.tar.gz 352.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for merobox 0.6.70
File Interpreter ABI Platform
merobox-0.6.70-py3-none-any.whl Python 3 none any Details

Total release size: 764.9 kB

Release files / merobox-0.6.70.tar.gz

Download URL merobox-0.6.70.tar.gz
Size 352.5 kB
Tags Source
SHA-256 checksum
How to use checksums
116cca8ae463bf2d67560016ea2106eef917f38848205dbb2defdf5f9789fde7
BLAKE2b-256 checksum
How to use checksums
f0b23794625f5f5579b24ddd40806cabd4ab4d4f7a72c64c47c4a217bebf7e51
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.

Transparency log

Release files / merobox-0.6.70-py3-none-any.whl

Download URL merobox-0.6.70-py3-none-any.whl
Size 412.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
68c1360781a08a798a0ec98f65c7dc63b89a58e8512c5fc0d836f91f592dce4f
BLAKE2b-256 checksum
How to use checksums
e716c484b88d3891d8080145b4a578d6f2fb5fa5fae0511f2d7386664178a202
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 31, 2026.

Transparency log

Release history Release notifications | RSS feed

0.6.79

2 release files

0.6.78

2 release files

0.6.77

2 release files

0.6.76

2 release files

0.6.72

2 release files

0.6.71

2 release files

This release

0.6.70 This release

2 release files

0.6.69

2 release files

0.6.68

2 release files

0.6.67

2 release files

0.6.66

2 release files

0.6.65

2 release files

0.6.64

2 release files

0.6.63

2 release files

0.6.62

2 release files

0.6.61

2 release files

0.6.60

2 release files

0.6.59

2 release files

0.6.58

2 release files

0.6.57

2 release files

0.6.56

2 release files

0.6.55

2 release files

0.6.54

2 release files

0.6.53

2 release files

0.6.44

2 release files

0.6.43

2 release files

0.6.42

2 release files

0.6.40

2 release files

0.6.39

2 release files

0.6.38

2 release files

0.6.37

2 release files

0.6.32

2 release files

0.6.31

2 release files

0.6.30

2 release files

0.6.29

2 release files

0.6.28

2 release files

0.6.27

2 release files

0.6.26

2 release files

0.6.25

2 release files

0.6.24

2 release files

0.6.23

2 release files

0.6.22

2 release files

0.6.21

2 release files

0.6.20

2 release files

0.6.19

2 release files

0.6.18

2 release files

0.6.17

2 release files

0.6.16

2 release files

0.6.15

2 release files

0.6.14

2 release files

0.6.13

2 release files

0.6.12

2 release files

0.6.11

2 release files

0.6.10

2 release files

0.6.9

2 release files

0.6.8

2 release files

0.6.7

2 release files

0.6.6

2 release files

0.6.5

2 release files

0.6.4

2 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.4.6

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.3

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.3.7

2 release files

0.3.6

2 release files

0.3.5

2 release files

0.3.4

2 release files

0.3.3

2 release files

0.3.2

2 release files

0.3.1

1 release file

0.3.0

1 release file

0.2.18

1 release file

0.2.17

1 release file

0.2.16

1 release file

0.2.13

1 release file

0.2.12

1 release file

0.2.11

1 release file

0.2.10

1 release file

0.2.9

1 release file

0.2.8

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

2 release files

0.2.1

1 release file

0.2.0

1 release file

0.1.23

2 release files

0.1.22

2 release files

0.1.21

2 release files

0.1.18

2 release files

0.1.17

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.12

2 release files

0.1.11

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page