Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

logo-kiso

Kiso

Describe your experiment in a YAML file — Kiso handles provisioning, software setup, execution, and result collection.

Tests License Latest Python Versions PyPi Downloads Code Style Contributors Documentation

Why Kiso

Setting up experiments across cloud and edge testbeds typically means writing custom provisioning scripts, manually installing software on remote nodes, and stitching together execution logic for each new environment. This work is repetitive, error-prone, and hard to reproduce.

Kiso replaces that with a single declarative configuration file. The same experiment definition runs on Chameleon Cloud, FABRIC, or a local Vagrant VM — no changes to your experiment code required.

Quick Start

Install Kiso with the extra for your testbed:

pip install kiso[vagrant]    # local VMs — good for development
pip install kiso[fabric]     # FABRIC testbed
pip install kiso[chameleon]  # Chameleon Cloud and Chameleon Edge (same package, different OpenRC files)
pip install kiso[all]        # all testbeds

Then run your experiment:

# 1. Validate the config
kiso check experiment.yml

# 2. Provision and configure
kiso up experiment.yml

# 3. Run experiments
kiso run experiment.yml

# 4. Collect results, then tear down
kiso down experiment.yml

See the Your first experiment tutorial for a complete walkthrough, or use the experiment template to scaffold a new experiment.

What's Supported

Category Options
Testbeds Vagrant, FABRIC, Chameleon Cloud, Chameleon Edge
Software Docker, Apptainer, Ollama
Deployment HTCondor
Experiments Pegasus workflows, Shell scripts

New testbeds, software, and experiment types can be added as plugins via Python entry points. See Extending Kiso.

Documentation

Contributing

Contributions are welcome. To get started:

git clone https://github.com/pegasus-isi/kiso.git
cd kiso
pip install -e ".[all]"
pre-commit install

Please follow conventional commits for commit messages. Open an issue before submitting large changes.

References

  • Pegasus Workflow Management System — scientific workflow engine used to define and execute experiments in Kiso
  • EnOSlib — infrastructure management library that Kiso builds on for provisioning and remote execution
  • Chameleon Cloud — NSF-funded cloud testbed supported by Kiso; includes both bare-metal nodes (CHI@UC, CHI@TACC) and edge devices (CHI@Edge) under the same project allocation, each with its own OpenRC credentials file
  • FABRIC — nationwide programmable research infrastructure supported by Kiso
  • Vagrant — tool for managing local VMs; used by Kiso for local development without a cloud account
  • VirtualBox — virtualization platform used as the default Vagrant backend

Funding

Kiso is funded by the National Science Foundation (NSF) under award 2403051.

License

Apache 2.0 © Pegasus ISI

Metadata

Release files for kiso 0.1.0b1

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

Source distribution (sdist)

Source distribution for kiso 0.1.0b1
File Size Uploaded
kiso-0.1.0b1.tar.gz 89.2 kB Details

Built distribution (wheel)

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

Total release size: 194.0 kB

Release files / kiso-0.1.0b1.tar.gz

Download URL kiso-0.1.0b1.tar.gz
Size 89.2 kB
Tags Source
SHA-256 checksum
How to use checksums
d85de37db975e03afefc1eafe4a09ea78fc5b0c667a012b3c475854103e6c58a
BLAKE2b-256 checksum
How to use checksums
fc03d94bea41da2b80c3cf58ef74408f87acc0f0b17c0eee14f65fcc5419fd2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Sep 2, 2026.

Transparency log

Release files / kiso-0.1.0b1-py3-none-any.whl

Download URL kiso-0.1.0b1-py3-none-any.whl
Size 104.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
294f40d66c4d7eb911c4248cbd8a42025eede9487730e6aaaed471a89aca77a6
BLAKE2b-256 checksum
How to use checksums
e49ebd31da96081abec93de0ba1a6c31200df6d348a748acc30bdece5bbe6830
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

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 Sep 2, 2026.

Transparency log
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