# Mockoon CLI vs Powerduck CLI

**Short answer:** Both run in CI, but the mock source differs. A dedicated mock CLI runs a separately maintained file; a studio CLI generates the mock from the spec, so CI always runs the current contract. The first executes a snapshot; the second derives the target.

## What a dedicated mock CLI does

Starts the mock from its file in a container or pipeline. It is a reliable runner and is only as current as the file.

## What a studio CLI does

| Property | Mock CLI | Studio CLI |
| --- | --- | --- |
| Mock source | Mock file | Spec |
| On change | Update file | Generate |
| Other surfaces | Separate | Shared |
| Drift | Common | Rare |

## Why the source matters in CI

A generated mock cannot be a stale snapshot, so the tests run against the current contract. A separate file has to be kept in sync by hand.

## How they fit

Keep the dedicated CLI for a fixed, bespoke mock and the studio CLI for a spec-derived target. The runner and the source are different concerns.

This is part of the [Powerduck vs Mockoon comparison](https://www.powerduck.com/blog/powerduck-vs-mockoon/). Next, read [templating vs examples](https://www.powerduck.com/blog/templating-mockoon-vs-openapi-examples/).

