Skip to content

MAS Lab packages

MAS Lab ships as a small set of installable Python packages. Most users interact with the CLIs; extension authors add plugins, pipeline steps, or libraries on top of the same contracts.

Install everything from a repository checkout with:

uv sync --all-packages

Requires Python 3.11+.


How the pieces fit together

Layer Package What it does
Runtime mas-runtime Executes agents and teams from YAML manifests — contracts, plugins, traces
Control plane mas-ctl Chat, validate, compose, and run multi-agent workflows (run-mas)
Lab mas-lab Benchmark experiments, pipelines, reports, and the web UI controller
Standard library mas-library-standard Flavours, overlays, infra bundles, and built-in runtime plugins
Samples mas-library-samples Reference apps (e.g. trip planner), datasets, and tutorial fixtures

Typical path: Tutorial 0mas-ctl for agents and teams → mas-lab benchmark run for experiments.

Supporting packages (mas-library-lab, mas-library-eval, and the mas-lab component libraries) provide shared types, evaluation metrics, and UI/backend code. They are installed automatically when you depend on mas-lab; you rarely import them directly unless you are extending the toolkit.


Package reference

Package Directory CLI Role
mas-runtime runtime/ mas-runtime Headless agent execution (CI, containers)
mas-ctl ctl/ mas-ctl Interactive and scripted orchestration
mas-lab lab/ mas-lab Benchmarks, pipelines, controller API
mas-library-standard library-standard/ Standard plugins, flavours, observability sinks
mas-library-samples library-samples/ Sample MAS apps and benchmark datasets
mas-library-lab library-lab/ Lab extension plugins (eval providers, helpers)
mas-library-eval library-eval/ Session-level evaluation metrics for benchmarks

Published from PyPI (when available): uv pip install mas-lab pulls the runtime, control plane, and lab stack transitively.


Where to read more

Goal Start here
First install Tutorial 0
Day-to-day use User guide
YAML manifests References
Paper reproduction Paper labs
Runtime development runtime/docs/ in the repository
Control plane ctl/docs/ in the repository

Site: outshift-open.github.io/mas-lab


Schemas

Workspace configuration: config.schema.yaml.

Experiment and benchmark manifests are validated by mas-lab validate against schemas under lab/components/bench/src/mas/lab/manifests/schema/. Manifest field reference: References.


Extending MAS Lab

Area Extend Entry points
Agent runtime Design patterns, tools, overlays, observability Runtime plugin registry — see runtime/docs/
Benchmark pipelines Custom step types (metrics, plots, reports) Pipeline type: in experiment.yaml — see lab manifests
Evaluation Session-level judges and metrics mas-library-eval / MCE integration — see Tutorial 3
Deployment Controller backends for the lab UI mas.lab.controller.plugins entry-point group

For local development, use editable installs only when you are patching packages in this repository:

uv pip install -e runtime -e ctl -e lab -e library-standard -e library-lab -e library-eval