Practical overview
When it fits
Use CML when you want to run ML tasks through GitHub, GitLab or Bitbucket CI/CD and surface results in the repository’s review workflow.
Who it is for
- Machine-learning developers who use CI/CD to run training or evaluation.
- Teams that want experiment metrics and plots attached to code reviews.
- Practitioners who need to allocate cloud or self-hosted compute within ML workflows.
Documented uses
- Automate model training and evaluation when repository changes trigger CI.
- Publish Markdown reports with metrics and plots as pull-request comments or checks.
- Compare experiments across project history and track data or model changes through Git-based workflows.
- Monitor changing datasets and provision machine resources for ML workflows.
Requirements & limits
CML is described as open source under the Apache-2.0 license and is provided as a CLI. The setup instructions require an account with GitHub, GitLab or Bitbucket; GitLab setup calls for a personal access token.
- CML works within an existing CI/CD platform rather than providing a separate hosted ML platform.
- The selected runner determines the compute environment; CML documents self-hosted runners and cloud allocation options.
- The GitHub report example relies on a workflow token, while GitLab instructions specify a personal access token.
- The optional Docker image bundles CML, DVC, Node.js and Python 3 on Ubuntu LTS.
Check current requirements in the official documentation. Source-based guidance does not mean OpenViST has run or independently tested this project.
Add a CML report to a GitHub Actions workflow
Run a project’s training script in GitHub Actions and post metrics or plots as a pull-request comment.
Before you start
- A GitHub account and project repository.
- A training script and its dependency requirements.
- A
.github/workflows/cml.yamlworkflow using GitHub Actions. - A repository token available to the workflow.
Steps
Add a workflow that checks out the repository, sets up Python and CML, and runs the project’s training command.
Write metrics or plot references into a Markdown report in the workflow.
Set
REPO_TOKENto the GitHub ActionsGITHUB_TOKENsecret and callcml comment create report.md.Push a change and open a pull request to compare the branch; the documented example has the workflow publish the report there.
Expected outcome
A Markdown report containing project results can appear as a comment in the GitHub pull request.
Guide limitations
- The guide describes a GitHub Actions workflow; other CI providers have separate setup instructions.
- The project’s training code, dependencies and report contents must be supplied by the team.
Sources & review
Source record details
- Source availability
- Active
- Sources checked
- 13 October 2026
- Original website title
- iterative/cml · Official homepage title · retained in its source language

