Observed since 20 Oct, 19:45 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
ado is a unified platform for executing computational experiments at scale and analysing their results. It can be easily extended with new experiments or new analysis tools. It allows distributed teams of researchers and engineers to collaborate on projects, execute experiments, and share data.
ado provides tools for executing computational experiment
campaigns. Coding Agents can use ado to autonomously formulate, run, and
analyze your experiments.
ado is built on three concepts:
| Concept | Role |
|---|---|
| Discovery Space | Defines what to measure (Entities), how to measure them (Experiments) and where to store results. |
| Operation | You explore or analyse a Discovery Space using Operations. You can select from different Operators to perform different types of Operations. |
| Sample Store | Stores the results of measurements, and enables Operations to transparently reuse existing results (memoization). |
In ado the research loop involves defining a Discovery Space, exploring it with an Operation, analyzing the results with additional Operations, and repeating.
You can create your own Experiments to use in a Discovery Space. ado
provides many advanced exploration and analysis Operators you can
use, or you can define your own.
The following toy example runs a small experiment campaign that samples combinations of mass and volume, computes density at each point, and stores the results.
Install ado-core (a virtual environment is recommended). For complete
instructions see the
install guide:
pip install ado-core
Clone the repository and install the density example package:
git clone https://github.com/IBM/ado.git
cd ado
pip install -e examples/density_example/
Run the experiment campaign:
ado create space -f examples/density_example/space.yaml
ado create operation -f examples/density_example/operation.yaml --use-latest space
Once the operation finishes, inspect the collected measurements:
ado show measurements operation --use-latest
For a deeper walkthrough, see the density example tutorial.
ado's structured, verifiable schemas
for expressing research intent enable a tight
generate → validate → fix → run cycle. This reduces hallucinations and the
need for free-form code.ados structured databases enable agents
to understand what has been done, and to access the relevant data, beyond
their context window.Here are some examples of what the team has built with ado:
Contributions are welcome — new actuators, operators, bug fixes, and documentation improvements. To set up a development environment, run the test suite, or understand code style and commit conventions, see CONTRIBUTING.md, DEVELOPING.md and tests/README.md.
For an overview of the design and architecture of ado, see
our Journal of Open Source Software paper.
If ado has been useful in your research, please cite us using:
@article{Johnston_ado_a_Python_2026,
author = {Johnston, Michael A. and Pomponio, Alessandro},
doi = {10.21105/joss.10304},
journal = {Journal of Open Source Software},
month = may,
number = {121},
pages = {10304},
title = {{ado: a Python framework for computational experimentation and benchmarking}},
url = {https://joss.theoj.org/papers/10.21105/joss.10304},
volume = {11},
year = {2026}
}
You can also click "Cite this repository" in the GitHub sidebar for alternative formats such as APA.
This project is partially funded by the European Union through the Smart Networks and Services Joint Undertaking (SNS JU) under grant agreement No. 101192750 (Project 6G-DALI).
Download counts and popularity will appear here as the collector receives them.
| Version | Published | Direct dependencies | Open version |
|---|---|---|---|
| 2.3.0 | 20 Oct 2026 | 12 |
This describes our collected data; it is not a security assessment.
Observed since 20 Oct, 19:45 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package:575c2508efb650f5115a66b7619a792e0b847e00e6d2a91b8a0ddf8b7c1e416a