ZenML

Orchestrate, track, and deploy ML, LLM, and agent workflows on your existing infrastructure.

Source repo
zenml-io/zenml
Stars
★ 5.6k
Last updated
4d ago
License
Apache-2.0
Primary language
Python

At a glance

How it runs
CLILibrary / SDKSelf-hosted service
Works with
Universal · cross-platformClaude.ai (Partial support)
Cost
Free tier plus a paid hosted plan
Setup effort
Medium · a few setup steps
You'll need
PythonZenML server for remote or production useShell / CLINetwork accessLocal filesystem
Typical use
An enterprise ML engineer needs a traceable production pipeline spanning feature engineering, training, evaluation, deployment, and monitoring.
Not a fit if
  • Teams that only need LLM tracing or basic experiment tracking
  • Teams that must keep all data fully offline and local
  • Teams unwilling to configure orchestrators, compute, and object storage

What does this agent do, and when should you use it?

ZenML is a workflow platform for ML and AI engineers running conventional machine-learning systems, LLM applications, or agents in company environments. Developers express Python logic as pipelines and steps, while ZenML containerizes the code and records run metrics, logs, metadata, and artifacts. Its client-server architecture includes a Python client, CLI, ZenML Server, and a separate integrated web dashboard; client and server can run locally, while production uses a separately deployed server. Stacks separate workflow code from infrastructure and connect it to systems such as MLflow, Weights & Biases, LangGraph, Langfuse, SageMaker, Google Cloud Vertex AI, Kubernetes, and Kubeflow. The platform's boundary extends beyond experiment tracking to pipeline execution, evaluation, deployment, and monitoring, but adopters must still supply and configure the underlying compute, storage, and external services.

A user initializes a ZenML repository with zenml init, then places Python operations such as training, evaluation, inference, or an agent loop inside pipelines and steps. During execution, ZenML containerizes and tracks the code, producing run records with artifacts, snapshots, metrics, logs, and metadata; the selected stack sends the work to the configured local or cloud backend. It can support deployments of conventional ML models and agent services while reusing systems including MLflow, Weights & Biases, LangGraph, Langfuse, SageMaker, Vertex AI, Kubernetes, and Kubeflow. ZenML Server stores operational metadata, and the web dashboard exposes that information for inspection and management. With the separately installed zenml-io/mcp-zenml project, Claude Desktop, Cursor, or another MCP client can query runs, investigate failures, and trigger deployments through natural-language requests; that MCP server is not installed as part of this repository's core setup.

  1. An enterprise ML engineer needs a traceable production pipeline spanning feature engineering, training, evaluation, deployment, and monitoring.
  2. An LLM application team wants to run RAG and evaluation workflows while retaining logs, metrics, metadata, and artifacts for every execution.
  3. An agent developer already using LangGraph, LlamaIndex, or raw Python wants to wrap existing logic in @step instead of rewriting the application.
  4. A platform team needs the same Python workflow to run during local development and later target Kubernetes, Kubeflow, SageMaker, or Vertex AI through stacks.
  5. A team maintaining both classical models and AI agents wants one framework for development, evaluation, production deployment, and run observability.
  6. An operations or analysis user wants to query failed runs or trigger deployments from Claude Desktop or another MCP client through the separate ZenML MCP Server.

How do you install or deploy this agent?

A Python environment and shell are required. Install ZenML with server capabilities using:

pip install "zenml[server]"

For the slimmer client package, use:

pip install zenml

Then initialize the project and start or connect to a server:

zenml init
zenml login

The architecture section also documents a combined local client-server installation:

pip install "zenml[local]"

For production, deploy ZenML Server separately, install the client, and connect it:

pip install zenml
zenml login <server-url>

A remote connection requires the server URL. The supplied material does not specify the minimum Python version, a complete server deployment command, or full authentication parameters. For natural-language operations, separately download the .dxt package from zenml-io/mcp-zenml and configure the ZenML server URL and API key in Claude Desktop.

How do you use this agent?

The shortest documented path is to install ZenML in a Python project, run zenml init to initialize the repository, and use zenml login to start a local server or connect to a remote one. The recommended next step is examples/quickstart/, which demonstrates pipelines, steps, artifacts, snapshots, and deployments; the supplied material does not include a complete copyable pipeline definition or its first execution command. Existing model or agent code can be wrapped in @step and composed into a pipeline, while the selected stack determines the infrastructure backend. In production, connect the client to the separately deployed server with zenml login <server-url> and inspect runs, metrics, logs, and metadata through the dashboard. For conversational operations, install the separate MCP Server, configure its server URL and API key, then issue requests such as finding failed runs, comparing accuracy metrics, or triggering the latest deployment.

What are this agent's strengths and limitations?

Pros
  • One pipeline-and-step abstraction covers conventional ML, LLM workflows, and agent loops, which suits teams with mixed AI workloads.
  • ZenML goes beyond experiment records by containerizing code and tracking runs, metrics, logs, metadata, artifacts, and snapshots.
  • Stacks let teams reuse existing systems such as MLflow, Weights & Biases, Kubernetes, Kubeflow, SageMaker, and Vertex AI.
  • It documents both an all-local client-server setup and a separately deployed production server, with an integrated web dashboard.
  • Existing scikit-learn, PyTorch, LangGraph, LlamaIndex, or raw API code can be introduced by wrapping it in @step.
Limitations
  • Production adoption still requires deploying and operating ZenML Server and configuring the actual orchestrator, compute, and object storage.
  • Stacks and third-party integrations introduce configuration work, while the supplied README does not give complete production deployment, authentication, or recovery procedures.
  • The material does not state a minimum Python version or provide a complete first pipeline and execution command that can be copied verbatim.
  • Natural-language access from Claude Desktop depends on a separate repository, a .dxt package, a ZenML server URL, and an API key.
  • Teams needing only LLM tracing or basic experiment tracking may take on more server and orchestration scope than their use case requires.

How does this agent compare with similar options?

Compared with LangSmith or Langfuse, ZenML positions itself as more than LLM observability: it orchestrates a broader MLOps lifecycle from development and evaluation through production deployment, covering both classical models and agents. Compared with MLflow, which the README characterizes as experiment tracking, ZenML covers training, evaluation, deployment, and monitoring orchestration; MLflow and Weights & Biases can remain in place as ZenML integrations.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
ZenML This agent 59 · Major gaps CLIFreemium ★ 5.6k 4d ago Python —
TrustGraph 62 · Some gaps CLIFree + model costs ★ 2.8k 1d ago Python OpenAI API · Claude API
Kestra Workflow Orchestration Platform 53 · Major gaps Self-hosted serviceFreemium ★ 30k today Java —
Eko Agentic Workflow 43 · Major gaps Library / SDKFree + model costs ★ 5k 7mo ago TypeScript OpenAI API · Claude API

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
59/ 100 5-point scale 3.0 / 5
This review covers the source as of Aug 14, 2026. The project has shipped 3 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 11/29
Reliability 9/14
Adaptability 14/18
Convention 14/18
Effectiveness 7/13
Verifiability 4/8
Why each dimension lost points
Trust11 / 29 · 1.9/5

The evidence shows optional dependency groups, client/server deployment modes, analytics disabled in the displayed CI job, a private vulnerability-reporting channel, a three-day exclusion window for newly published packages, and commit-pinned GitHub Actions. These support limited privilege separation, some sensitive-data awareness, and adequate dependency safeguards. Deductions apply because there is no runtime permission inventory, secret-storage or redaction policy, telemetry-default disclosure, destination-level data-flow map, confirmation mechanism before agent actions, or comprehensive account of external effects. Tracking and versioning are described, but the cited crash recovery belongs to the separate Kitaru sister project and does not establish complete ZenML rollback. Organization, package author, contact paths, and licensing provide attribution, although publisher identity remains unverified by the stated registry.

Reliability9 / 14 · 3.2/5

The README, package metadata, and CI are broadly consistent about supported Python versions, client/server architecture, and installation modes. CI builds a server image and checks a client connection, while dependencies carry version constraints. Deductions apply because no run results, lockfile, or evidence covering availability of all integrations is supplied, and Windows with Python 3.11 and 3.12 is explicitly excluded from the shown workflow. Link and connection workflows emit actionable failures, but the supplied files do not demonstrate messages for agent-loop, deployment, or remote-infrastructure failures.

Adaptability14 / 18 · 3.9/5

The audience and scenarios are thoroughly identified across enterprise ML/AI engineers, classical ML, LLMs, agents, local development, and production, with many cloud, orchestrator, and tool integrations. Capability boundaries receive support from the pipeline/step model and the statement that ZenML orchestrates rather than replaces existing tools, but agent-versus-platform boundaries remain mostly conceptual. Trigger precision is thin: MCP examples include natural-language queries and production deployment triggers without showing ambiguity handling, authorization scope, intent matching, or confirmation conditions. Environment fit is strongly supported by Python 3.10–3.14 metadata, multi-OS CI inputs, containers, Kubernetes, and cloud-specific extras.

Convention14 / 18 · 3.9/5

The README has clear onboarding, architecture, resources, examples, FAQ, contribution, support, and licensing sections. Installation distinguishes slim client, local, and server modes, and examples span pipelines and agents. The full Apache-2.0 license matches package metadata. Deductions apply because the package is marked Beta, this revision's changes are not included and only an external changelog is linked, and known limitations are scattered across Python constraints, CI exclusions, and warranty text rather than collected for agent or deployment risks. The organization, email addresses, issue tracker, and security-reporting route make maintenance responsibility reasonably clear, but the stated unverified publisher identity prevents treating it as fully established.

Effectiveness7 / 13 · 2.7/5

Code, run, metric, log, metadata, and infrastructure tracking can produce usable engineering outputs, while orchestration across existing tools offers plausible marginal value over manual integration. Deductions apply because these benefits are chiefly product claims: the supplied files contain no representative agent output, quality benchmark, user study, or executed result. The free open-source edition reduces license cost, but required infrastructure and remote services can carry operational expense, and no deployment, maintenance, compute, or third-party API costs are quantified.

Verifiability4 / 8 · 2.5/5

Several concrete claims are traceable to configuration and workflow files, including package version, Python range, dependencies, CLI entry point, image construction, and a server-connection check. README, pyproject, and CI also corroborate parts of the architecture and install story. Deductions apply because claims such as use by thousands of companies, five-minute onboarding, full-lifecycle coverage, and economic benefit lack local supporting evidence, while linked examples and external documentation were not supplied as source content. Marketing claims, current facts, and forward-looking positioning are not consistently separated.

Risks and how to mitigate them
  • Not found in source: confirmation before actingTurn on (or add) a confirmation step before it acts, and try it in a sandbox or test environment before real data.
  • This is a low-confidence static review: no installation, tests, agent workflow, or deployment was executed, and external links and product claims were not independently verified.
  • The MCP examples can trigger production deployments through natural language, but the supplied evidence does not show per-action confirmation, authorization boundaries, audit constraints, or safe defaults; verify these separately before production access.
  • The README loads external images and describes remote documentation and third-party integrations; assess telemetry, network egress, credential handling, and data-residency behavior.
  • Although dependencies have ranges, a new-package quarantine, and some exact pins, no resolved lockfile or vulnerability-scan result is supplied, so the evidence cannot establish an absence of known supply-chain risk.
  • Crash recovery and human approval are explicitly presented as Kitaru sister-project features and should not be treated as guarantees of the ZenML core agent runtime.
Evidence confidence: Low Reviewed Aug 14, 2026 Reviewed revision b34ca804b2b4 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. 0.98.0
    Release notes excerpt
    <!-- ZENML_GITBOOK_RELEASE_NOTES_START tag=0.98.0 --> Breaking Changes * The langchain integration now supports langchain>=0.3.5,<1.0 instead of the previously pinned 0.3.0. If you rely on a fixed LangChain version, update your environment constraints accordingly, and note that LangChain 1.x is still not supported by ZenML and may require you to stay on a compatible pre-1.0 release. [PR #5341](https://github.com/zenml-io/zenml/pull/5341) Triggers and automation …
    View on GitHub ↗
  2. 0.97.0
    Release notes excerpt
    <!-- ZENML_GITBOOK_RELEASE_NOTES_START tag=0.97.0 --> Breaking Changes * Resource pools have been reworked to use ZenML Pro Resource Manager v2, and the old OSS resource-pool control-plane objects and related API/CLI/RBAC behavior have been removed. If you used legacy resource pool management in OSS or automation built on those endpoints/commands, you will need to migrate to the new resource request model and update any scripts or integrations accordingly. [PR #4977](https://github.com/zenml-io/zenml/pull/4977) …
    View on GitHub ↗
  3. 0.96.4
    Release notes excerpt
    <!-- ZENML_GITBOOK_RELEASE_NOTES_START tag=0.96.4 --> Webhook-driven automation - Webhook triggers for pipeline snapshots: ZenML now supports first-class webhook-driven automation for secure, project-scoped integrations with GitHub or custom systems [PR #5169](https://github.com/zenml-io/zenml/pull/5169). You can attach webhook triggers to pipeline snapshots and launch them when matching external events arrive, including typed GitHub filters for merged pull requests, completed workflow runs, pushes, and published releases. …
    View on GitHub ↗

FAQ

Does the open-source edition cost money?
The material says the open-source version is free forever. Users still pay for and operate their selected infrastructure, such as Kubernetes and object storage.
Must we rewrite existing models or agents?
No. Existing code can be wrapped in @step, while teams continue using scikit-learn, PyTorch, LangGraph, LlamaIndex, or raw API calls.
Is a server required in production?
Yes under the documented production architecture. ZenML Server is deployed separately, and clients connect with zenml login <server-url>.
Does ZenML provide the compute cluster and object storage?
The source does not say that it does. It describes using existing infrastructure, including Kubernetes clusters and object storage, through stacks and integrations.
Is MCP required to run pipelines?
No. Core pipelines use the ZenML client, server, and stacks. The separate MCP Server is optional and adds conversational access from Claude Desktop, Cursor, or another MCP-compatible client.
View on GitHub ↗ Install ↓

Related agents