CLI reference

Commands and flags of the Mistral CLI, grouped by task.

Tip

Run mistral --help or mistral COMMAND --help for the options in your installed version. Some commands, such as mistral deploy, appear only after you sign in with mistral login.

Usage and global flags

Usage and global flags

mistral

mistral

Usage:

mistral <subcommand> [flags]

Global flags (available on every command):

  • -h, --help: Show help information.
  • -v, --version: Show version information.
  • --completions <bash|zsh|fish|sh>: Print shell completion script.
  • --log-level <all|trace|debug|info|warn|warning|error|fatal|none>: Sets the minimum log level.

Subcommands:

  • init: Scaffold a new app, selecting capabilities from a registry (asks Workflow, App or Custom on a terminal; --preset, --caps or --yes choose without asking).
  • dev: Start the app's local dev stack
  • deploy: Deploy the app
  • apps: Scaffold and manage Mistral apps
  • workflows: Build Mistral workflows
  • login: Sign in to Mistral in your browser
  • logout: Sign out and remove stored credentials
  • whoami: Show the signed-in identity
  • context: Show or set the active organization and workspace
  • evals: Run, optimize, and manage offline evaluations
  • observability: Inspect traces and observability data
  • upgrade: Upgrade this CLI to the latest release

Aliases: obs is an alias for observability.

Create, run, and deploy

Create, run, and deploy

mistral init

mistral init

Scaffold a new app, selecting capabilities from a registry (asks Workflow, App or Custom on a terminal; --preset, --caps or --yes choose without asking).

Usage:

mistral init [flags] [<app>]

Arguments:

  • <app> (string): The project directory / name to create (prompted when omitted).

Flags:

  • --registry-url string: The npm registry base URL (e.g. an npm mirror), or the git remote (optionally with #<ref>), the capabilities live in. For an npm registry, resolves @mistralai-capabilities/registry against it by default unless --registry-package names another package, or the URL itself ends in .json (a plain descriptor URL, fetched as-is). Defaults to MISTRAL_APPS_REGISTRY_URL, then BUN_CONFIG_REGISTRY, then the built-in registry.
  • --source choice: Force the registry source kind instead of auto-detecting it. (choices: git, npm)
  • --scope string: The capability package scope for the npm bootstrap (e.g. @your-scope).
  • --registry-package string: The index package carrying descriptor.json (default <scope>/registry).
  • --ref string: The git ref (tag/branch) for a git registry, if not embedded in the URL.
  • --descriptor-path string: The descriptor path within a git registry repo (default registry.json).
  • --refresh-registry: Ignore the cached registry descriptor and fetch it again.
  • --tags string: Comma-separated categories to filter the selectable capabilities.
  • --caps string: Comma-separated capability roots to select without prompting (explicit selection) — each a qualified registry-id/kind/capability-id, or bare when unambiguous. List the valid ids with mistral apps capability list (it runs outside an app).
  • --preset choice: Pick the capabilities for what you are building without asking: workflow for a template workflow you can deploy to Studio (the same as mistral workflows init), app for a full-stack app with a database. Cannot be combined with --caps. (choices: workflow, app)
  • --no-save-config: Do not persist the resolved registry coordinates to the global config.
  • --no-git: Do not create a git repo for the app; reuse the enclosing repo when inside one (a git registry vendors its subtree there). Errors for a git registry with no enclosing repo.
  • --here: Scaffold into the current directory instead of a new <app> subdir (also implied by init .).
  • -y, --yes: Quick selection: take the registry's default capabilities (plus required and their dependencies) and accept defaults without prompting.
  • --json: Never prompt, print progress to stderr, and write the result to stdout as JSON ({ app, projectDir, capabilities, warnings }).
  • --force: Skip (warn) an unresolvable cross-registry capability dependency at scaffold time instead of failing; add the registry that provides it later with mistral apps capability add.
  • --from string: Start from the code an app deployed from disk runs in production, by app name or id, instead of selecting capabilities from a registry.
  • --organization string: With --from, look for the app in this organization, by id or name, instead of the one selected at login.
  • --workspace string: With --from, look for the app in this workspace, by id or name, instead of the one selected at login.

Pass --json for machine-readable output.

mistral dev

mistral dev

Start the app's local dev stack

Usage:

mistral dev [flags]

Flags:

  • --filter string: Run only these app modules, comma-separated (e.g. --filter server).
  • --gateway: Start the gateway even when no module in this run serves HTTP
  • --json: Print the run as one JSON event per line
  • --no-gateway: Run the app modules without the gateway in front
  • --no-open: Do not open the app in the browser once every module is ready

Pass --json for machine-readable output.

mistral deploy

mistral deploy

Deploy the app

Usage:

mistral deploy [flags]

Flags:

  • --organization string: Deploy into this organization, by id or name. Required off a terminal.
  • --workspace string: Deploy into this workspace, by id or name.
  • --name string: Name a new app, with up to 63 lowercase letters, digits and hyphens. Without it, deploy makes a name from the project directory.
  • --json: Emit the output as JSON.
  • -y, --yes: After creating the app, commit mistral.json and push it without asking.
  • --from-disk: Upload the working directory and deploy that, instead of the pushed commit. Experimental.

Pass --json for machine-readable output.

Apps

Apps

mistral apps

mistral apps

Scaffold and manage Mistral apps

Usage:

mistral apps <subcommand> [flags]

Subcommands:

  • init: Scaffold a new app composed from the capabilities in a registry, picked kind by kind on a terminal (--preset, --caps or --yes choose without asking).
  • config: Read and write the global CLI config that supplies the default registry coordinates.
  • capability: Create capabilities and manage the ones this app uses.
  • modules: Print the resolved modules from mistral.json
  • dev: Start the app's local dev stack
  • install: Install any app's dependencies (uv lock, then bun install), first restoring the managed capabilities its lock pins, if any (run it after cloning)
  • list: List the apps in your organization and workspace
  • deploy: Deploy the app
  • logs: Print a deployed app's build or runtime logs, for a module or the gateway
  • publish: Publish a deployed app alias to the Vibe catalog
  • unpublish: Remove a deployed app alias from the Vibe catalog
  • delete: Delete a deployed app with its modules and databases
mistral apps init

mistral apps init

Scaffold a new app composed from the capabilities in a registry, picked kind by kind on a terminal (--preset, --caps or --yes choose without asking).

Usage:

mistral apps init [flags] [<app>]

Arguments:

  • <app> (string): The project directory / name to create (prompted when omitted).

Flags:

  • --registry-url string: The npm registry base URL (e.g. an npm mirror), or the git remote (optionally with #<ref>), the capabilities live in. For an npm registry, resolves @mistralai-capabilities/registry against it by default unless --registry-package names another package, or the URL itself ends in .json (a plain descriptor URL, fetched as-is). Defaults to MISTRAL_APPS_REGISTRY_URL, then BUN_CONFIG_REGISTRY, then the built-in registry.
  • --source choice: Force the registry source kind instead of auto-detecting it. (choices: git, npm)
  • --scope string: The capability package scope for the npm bootstrap (e.g. @your-scope).
  • --registry-package string: The index package carrying descriptor.json (default <scope>/registry).
  • --ref string: The git ref (tag/branch) for a git registry, if not embedded in the URL.
  • --descriptor-path string: The descriptor path within a git registry repo (default registry.json).
  • --refresh-registry: Ignore the cached registry descriptor and fetch it again.
  • --tags string: Comma-separated categories to filter the selectable capabilities.
  • --caps string: Comma-separated capability roots to select without prompting (explicit selection) — each a qualified registry-id/kind/capability-id, or bare when unambiguous. List the valid ids with mistral apps capability list (it runs outside an app).
  • --preset choice: Pick the capabilities for what you are building without asking: workflow for a template workflow you can deploy to Studio (the same as mistral workflows init), app for a full-stack app with a database. Cannot be combined with --caps. (choices: workflow, app)
  • --no-save-config: Do not persist the resolved registry coordinates to the global config.
  • --no-git: Do not create a git repo for the app; reuse the enclosing repo when inside one (a git registry vendors its subtree there). Errors for a git registry with no enclosing repo.
  • --here: Scaffold into the current directory instead of a new <app> subdir (also implied by init .).
  • -y, --yes: Quick selection: take the registry's default capabilities (plus required and their dependencies) and accept defaults without prompting.
  • --json: Never prompt, print progress to stderr, and write the result to stdout as JSON ({ app, projectDir, capabilities, warnings }).
  • --force: Skip (warn) an unresolvable cross-registry capability dependency at scaffold time instead of failing; add the registry that provides it later with mistral apps capability add.
  • --from string: Start from the code an app deployed from disk runs in production, by app name or id, instead of selecting capabilities from a registry.
  • --organization string: With --from, look for the app in this organization, by id or name, instead of the one selected at login.
  • --workspace string: With --from, look for the app in this workspace, by id or name, instead of the one selected at login.

Pass --json for machine-readable output.

mistral apps config

mistral apps config

Read and write the global CLI config that supplies the default registry coordinates.

Usage:

mistral apps config <subcommand> [flags]

Subcommands:

  • path: Print the path of the config file the CLI reads and writes.
  • get: Print the whole config, or the value of one key.
  • set: Set one config key.
  • unset: Remove one config key, falling back to the built-in default.
mistral apps config path

mistral apps config path

Print the path of the config file the CLI reads and writes.

Usage:

mistral apps config path [flags]
mistral apps config get

mistral apps config get

Print the whole config, or the value of one key.

Usage:

mistral apps config get [flags] [<key>]

Arguments:

  • <key> (string): The key to print (registry.url, registry.registryPackage, registry.ref, registry.descriptorPath). Omitted, the whole config is printed.
mistral apps config set

mistral apps config set

Set one config key.

Usage:

mistral apps config set [flags] <key> <value>

Arguments:

  • <key> (string): The key to set (registry.url, registry.registryPackage, registry.ref, registry.descriptorPath).
  • <value> (string): The value to store against that key.
mistral apps config unset

mistral apps config unset

Remove one config key, falling back to the built-in default.

Usage:

mistral apps config unset [flags] <key>

Arguments:

  • <key> (string): The key to remove (registry.url, registry.registryPackage, registry.ref, registry.descriptorPath).
mistral apps capability

mistral apps capability

Create capabilities and manage the ones this app uses.

Usage:

mistral apps capability <subcommand> [flags]

Subcommands:

  • add: Vendor a capability into this app.
  • list: List the capabilities available to this app, or (outside an app) to a registry.
  • update: Re-pin installed capabilities of npm registries to their declared versions (<id> <version> moves one), refresh their vendored files and list the CHANGELOG entries they add.
  • remove: Remove installed capabilities from this app.
  • select: Reconcile this app to a complete set of capability roots.
  • merge: Re-derive the generated files, merging your edits with the templates.
mistral apps capability add

mistral apps capability add

Vendor a capability into this app.

Usage:

mistral apps capability add [flags] <name> [<version>]

Arguments:

  • <name> (string): The capability to vendor — a qualified registry-id/kind/capability-id, a kind/capability-id, or a bare capability-id when unambiguous across configured registries.
  • <version> (string): An optional version pin for the capability package.

Flags:

  • -y, --yes: Run non-interactively, skipping every confirmation and modified-file prompt.
  • --json: Emit the reconciliation plan as JSON on stdout ({ applied, roots, derived, additions, removals, … }); progress goes to stderr.

Pass --json for machine-readable output.

mistral apps capability list

mistral apps capability list

List the capabilities available to this app, or (outside an app) to a registry.

Usage:

mistral apps capability list [flags]

Flags:

  • --tags string: Filter capabilities by category tags, comma-separated.
  • --json: Emit the capabilities as JSON ({ capabilities: [{ ref, kind, required, default, categories, installed, installedVersion }] }).
  • --registry-url string: The npm registry base URL (e.g. an npm mirror), or the git remote (optionally with #<ref>), the capabilities live in. For an npm registry, resolves @mistralai-capabilities/registry against it by default unless --registry-package names another package, or the URL itself ends in .json (a plain descriptor URL, fetched as-is). Defaults to MISTRAL_APPS_REGISTRY_URL, then BUN_CONFIG_REGISTRY, then the built-in registry.
  • --source choice: Force the registry source kind instead of auto-detecting it. (choices: git, npm)
  • --registry-package string: The index package carrying descriptor.json (default <scope>/registry).
  • --ref string: The git ref (tag/branch) for a git registry, if not embedded in the URL.
  • --descriptor-path string: The descriptor path within a git registry repo (default registry.json).
  • --refresh-registry: Ignore the cached registry descriptor and fetch it again.

Pass --json for machine-readable output.

mistral apps capability update

mistral apps capability update

Re-pin installed capabilities of npm registries to their declared versions (<id> <version> moves one), refresh their vendored files and list the CHANGELOG entries they add.

Usage:

mistral apps capability update [flags] [<id>] [<version>]

Arguments:

  • <id> (string): An installed capability id to scope the re-pin to.
  • <version> (string): The version to move the scoped capability to. Requires an id.

Flags:

  • -y, --yes: Run non-interactively, skipping every confirmation and modified-file prompt.
  • --json: Emit the reconciliation plan as JSON on stdout ({ applied, roots, derived, additions, removals, … }); progress goes to stderr.

Pass --json for machine-readable output.

mistral apps capability remove

mistral apps capability remove

Remove installed capabilities from this app.

Usage:

mistral apps capability remove [flags] [<name...>]

Arguments:

  • <name...> (string): The selected root(s) to remove (prompted when omitted) — qualified registry-id/kind/capability-id, kind/capability-id, or bare when unambiguous.

Flags:

  • -y, --yes: Run non-interactively, skipping every confirmation and modified-file prompt.
  • --json: Emit the reconciliation plan as JSON on stdout ({ applied, roots, derived, additions, removals, … }); progress goes to stderr.

Pass --json for machine-readable output.

mistral apps capability select

mistral apps capability select

Reconcile this app to a complete set of capability roots.

Usage:

mistral apps capability select [flags]

Flags:

  • --caps string: Complete set of desired capability roots, comma-separated. Each is a qualified registry-id/kind/capability-id, a kind/capability-id, or bare when unambiguous.
  • --tags string: Filter capabilities by category tags, comma-separated.
  • -y, --yes: Skip the apply confirmation (non-interactive).
  • --json: Emit the reconciliation plan as JSON on stdout ({ applied, roots, derived, additions, removals, … }); progress goes to stderr.

Pass --json for machine-readable output.

mistral apps capability merge

mistral apps capability merge

Re-derive the generated files, merging your edits with the templates.

Usage:

mistral apps capability merge [flags]

Flags:

  • --continue: Resume a stalled merge: promote each now-resolved file, then re-derive. Also finishes a paused registry update (install, lock, snapshot, commit).
  • --abort: Discard the pending merge and restore your files. Does NOT uninstall the capability. A paused registry update is undone entirely: files and git HEAD return to before the update.
  • --ours: With --continue: keep your version of a file you resolved back to its pre-merge state, declining the template's change instead of being asked again on every wire.
  • --json: Emit the merge state as JSON on stdout ({ mode, wired, cleanFiles, conflictedFiles, … }); progress goes to stderr.

Pass --json for machine-readable output.

mistral apps modules

mistral apps modules

Print the resolved modules from mistral.json

Usage:

mistral apps modules [flags]

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral apps dev

mistral apps dev

Start the app's local dev stack

Usage:

mistral apps dev [flags]

Flags:

  • --filter string: Run only these app modules, comma-separated (e.g. --filter server).
  • --gateway: Start the gateway even when no module in this run serves HTTP
  • --json: Print the run as one JSON event per line
  • --no-gateway: Run the app modules without the gateway in front
  • --no-open: Do not open the app in the browser once every module is ready

Pass --json for machine-readable output.

mistral apps install

mistral apps install

Install any app's dependencies (uv lock, then bun install), first restoring the managed capabilities its lock pins, if any (run it after cloning)

Usage:

mistral apps install [flags]

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral apps list

mistral apps list

List the apps in your organization and workspace

Usage:

mistral apps list [flags]

Flags:

  • --organization string: List this organization instead of the logged-in one, by id or name.
  • --workspace string: List this workspace instead of the logged-in one, by id or name.
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral apps deploy

mistral apps deploy

Deploy the app

Usage:

mistral apps deploy [flags]

Flags:

  • --organization string: Deploy into this organization, by id or name. Required off a terminal.
  • --workspace string: Deploy into this workspace, by id or name.
  • --name string: Name a new app, with up to 63 lowercase letters, digits and hyphens. Without it, deploy makes a name from the project directory.
  • --json: Emit the output as JSON.
  • -y, --yes: After creating the app, commit mistral.json and push it without asking.
  • --from-disk: Upload the working directory and deploy that, instead of the pushed commit. Experimental.

Pass --json for machine-readable output.

mistral apps logs

mistral apps logs

Print a deployed app's build or runtime logs, for a module or the gateway

Usage:

mistral apps logs [flags] [<module>]

Arguments:

  • <module> (string): The module to read, as named in mistral.json. Leave it out to read the gateway, which handles sign-in and routing.

Flags:

  • --build: Read the module's latest build instead of the running service.
  • --run string: Read one deploy run's build and startup, by the runId in apps deploy --json. Services only.
  • --since string: How far back to read, such as 30m or 6h, up to 24h. Defaults to 1h for a running service and to the start of the build with --build.
  • -n, --lines integer: How many of the latest lines to print, from 1 to 500.
  • -f, --follow: Keep printing new lines until Ctrl-C.
  • --json: Write one JSON object per line on stdout: { timestamp, module, type, message, stream?, level? }.

Pass --json for machine-readable output.

mistral apps publish

mistral apps publish

Publish a deployed app alias to the Vibe catalog

Usage:

mistral apps publish [flags]

Flags:

  • --alias string: Deployed alias name or id. Defaults to production.
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral apps unpublish

mistral apps unpublish

Remove a deployed app alias from the Vibe catalog

Usage:

mistral apps unpublish [flags]

Flags:

  • --alias string: Deployed alias name or id. Defaults to production.
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral apps delete

mistral apps delete

Delete a deployed app with its modules and databases

Usage:

mistral apps delete [flags] [<app>]

Arguments:

  • <app> (string): The app to delete, by name or id. Leave it out to delete the app mistral.json points at.

Flags:

  • --organization string: Look for the named app in this organisation instead of the logged-in one, by id or name.
  • --workspace string: Look for the named app in this workspace instead of the logged-in one, by id or name.
  • -y, --yes: Delete without typing the app's name to confirm. Required off a terminal and with --json.
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

Workflows

Workflows

mistral workflows

mistral workflows

Build Mistral workflows

Usage:

mistral workflows <subcommand> [flags]

Subcommands:

  • init: Scaffold a Mistral workflows app, the same as mistral init --preset workflow.
mistral workflows init

mistral workflows init

Scaffold a Mistral workflows app, the same as mistral init --preset workflow.

Usage:

mistral workflows init [flags] [<app>]

Arguments:

  • <app> (string): The project directory / name to create (prompted when omitted).

Flags:

  • --registry-url string: The npm registry base URL (e.g. an npm mirror), or the git remote (optionally with #<ref>), the capabilities live in. For an npm registry, resolves @mistralai-capabilities/registry against it by default unless --registry-package names another package, or the URL itself ends in .json (a plain descriptor URL, fetched as-is). Defaults to MISTRAL_APPS_REGISTRY_URL, then BUN_CONFIG_REGISTRY, then the built-in registry.
  • --source choice: Force the registry source kind instead of auto-detecting it. (choices: git, npm)
  • --scope string: The capability package scope for the npm bootstrap (e.g. @your-scope).
  • --registry-package string: The index package carrying descriptor.json (default <scope>/registry).
  • --ref string: The git ref (tag/branch) for a git registry, if not embedded in the URL.
  • --descriptor-path string: The descriptor path within a git registry repo (default registry.json).
  • --refresh-registry: Ignore the cached registry descriptor and fetch it again.
  • --no-save-config: Do not persist the resolved registry coordinates to the global config.
  • --no-git: Do not create a git repo for the app; reuse the enclosing repo when inside one (a git registry vendors its subtree there). Errors for a git registry with no enclosing repo.
  • --here: Scaffold into the current directory instead of a new <app> subdir (also implied by init .).
  • -y, --yes: Scaffold the workflows capabilities and accept defaults without prompting.
  • --json: Never prompt, print progress to stderr, and write the result to stdout as JSON ({ app, projectDir, capabilities, warnings }).
  • --force: Skip (warn) an unresolvable cross-registry capability dependency at scaffold time instead of failing; add the registry that provides it later with mistral apps capability add.

Pass --json for machine-readable output.

Offline evaluations

Offline evaluations

mistral evals

mistral evals

Run, optimize, and manage offline evaluations

Usage:

mistral evals <subcommand> [flags]

Subcommands:

  • optimize: Turn an eval file into an optimization search over its System params, or apply these flags to the eval's own optimize()
  • exec: Discover and execute eval files
  • project: Manage evaluation projects
  • evaluation: Manage evaluations
  • runs: Inspect and manage evaluation runs
  • dataset: Manage evaluation datasets
  • judge: Manage LLM judges
  • open: Open (and print) an AI Studio evaluations deep link
mistral evals optimize

mistral evals optimize

Turn an eval file into an optimization search over its System params, or apply these flags to the eval's own optimize()

Usage:

mistral evals optimize [flags] <file> [<args...>]

Arguments:

  • <file> (string): Path to the eval file to optimize (e.g. summarization.eval.py)
  • <args...> (string): Arguments passed to the eval file, after -- (e.g. -- --limit 10)

Flags:

  • --tune string: Comma-separated params to optimize, e.g. instruction,temperature
    ..1. Default: all System.params. Not for an eval that calls optimize() itself
  • --steer string: Free-text problem to fix, e.g. 'reduce hallucinations when the context lacks the answer'. Steers the optimizer (max 4000 chars)
  • --name string: Human-friendly optimization name (auto-generated from the goal when omitted)
  • --description string: Human-friendly optimization description (auto-generated from the goal when omitted)
  • --algo choice: Search strategy (default: gepa, or the algo the eval passes to optimize()) (choices: gepa, simple)
  • --iterations integer: Search budget (algo-specific default when omitted)
  • --holdout number: Fraction reserved for the honest baseline-vs-winner delta
  • --local: Run candidates without uploading to AI Studio
  • --concurrency integer: Cap concurrent task/scorer calls (lower it to avoid provider rate limits)
mistral evals exec

mistral evals exec

Discover and execute eval files

Usage:

mistral evals exec [flags] [<paths...>]

Arguments:

  • <paths...> (string): Eval files or directories to run (directories are scanned for *.eval.py; default: .). Arguments after -- are passed to each eval file

Flags:

  • --local: Run without uploading to AI Studio
  • --tag string: Tag to attach to each run (repeatable); merged with the eval's own tags
  • --max-concurrency integer: Cap concurrent task/scorer calls (lower it to avoid provider rate limits)
  • --fail-fast: Stop on the first eval file that fails
  • --dry-run: List the discovered eval files without running them
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals project

mistral evals project

Manage evaluation projects

Usage:

mistral evals project <subcommand> [flags]

Subcommands:

  • ls: List evaluation projects
  • get: Show one project by slug
  • create: Create a project
  • delete: Delete a project by slug
mistral evals project ls

mistral evals project ls

List evaluation projects

Usage:

mistral evals project ls [flags]

Flags:

  • --q string: Filter projects by name or slug
  • --limit integer: Maximum number of projects to return, favorites first, then yours, then newest (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals project get

mistral evals project get

Show one project by slug

Usage:

mistral evals project get [flags] <slug>

Arguments:

  • <slug> (string): The project slug

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals project create

mistral evals project create

Create a project

Usage:

mistral evals project create [flags] <name>

Arguments:

  • <name> (string): The project name

Flags:

  • --description string: A human-friendly project description
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals project delete

mistral evals project delete

Delete a project by slug

Usage:

mistral evals project delete [flags] <slug>

Arguments:

  • <slug> (string): The project slug

Flags:

  • --yes: Confirm the deletion (required)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals evaluation

mistral evals evaluation

Manage evaluations

Usage:

mistral evals evaluation <subcommand> [flags]

Subcommands:

  • ls: List a project's evaluations
  • get: Show one evaluation by slug
  • create: Create an evaluation under a project
  • delete: Delete an evaluation by slug
mistral evals evaluation ls

mistral evals evaluation ls

List a project's evaluations

Usage:

mistral evals evaluation ls [flags] <project>

Arguments:

  • <project> (string): The project slug to list evaluations for

Flags:

  • --limit integer: Maximum number of evaluations to return, favorites first, then newest (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals evaluation get

mistral evals evaluation get

Show one evaluation by slug

Usage:

mistral evals evaluation get [flags] <slug>

Arguments:

  • <slug> (string): The evaluation slug

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals evaluation create

mistral evals evaluation create

Create an evaluation under a project

Usage:

mistral evals evaluation create [flags] <project> <name>

Arguments:

  • <project> (string): The project slug to create the evaluation in
  • <name> (string): The evaluation name

Flags:

  • --description string: A human-friendly evaluation description
  • --tag string: Tag to attach to the evaluation (repeatable)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals evaluation delete

mistral evals evaluation delete

Delete an evaluation by slug

Usage:

mistral evals evaluation delete [flags] <slug>

Arguments:

  • <slug> (string): The evaluation slug

Flags:

  • --yes: Confirm the deletion (required)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs

mistral evals runs

Inspect and manage evaluation runs

Usage:

mistral evals runs <subcommand> [flags]

Subcommands:

  • ls: List an evaluation's runs
  • get: Show one run by id (stats, scores, evaluators, system)
  • records: List a run's records (goal, scores, status, input), optionally filtered to the ones worth debugging
  • record: Show one record of a run in full: input, then per generation its output, status, and scores with rationales
  • delete: Delete a run by id
  • export: Export a run's records to a file (CSV or JSONL)
mistral evals runs ls

mistral evals runs ls

List an evaluation's runs

Usage:

mistral evals runs ls [flags] <evaluation>

Arguments:

  • <evaluation> (string): The evaluation slug to list runs for

Flags:

  • --limit integer: Maximum number of runs to return, newest first (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs get

mistral evals runs get

Show one run by id (stats, scores, evaluators, system)

Usage:

mistral evals runs get [flags] <run-id>

Arguments:

  • <run-id> (string): The run id

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs records

mistral evals runs records

List a run's records (goal, scores, status, input), optionally filtered to the ones worth debugging

Usage:

mistral evals runs records [flags] <run-id>

Arguments:

  • <run-id> (string): The run id

Flags:

  • --goal choice: Only records whose goals passed, failed, or were not evaluated (choices: passed, failed, not-evaluated)
  • --score string: Score filter '<evaluator>[.<metric>] <op> <value>' (op: < <= > >= =; metric defaults to avg), e.g. 'exact < 1' (repeatable)
  • --input-contains string: Only records whose input contains this text, case-insensitive (repeatable)
  • --output-contains string: Only records whose output contains this text, case-insensitive (repeatable)
  • --sort string: Sort by 'created_at' or by a score '<evaluator>[.avg|min|max|std]'
  • --desc: Sort descending (newest first without --sort)
  • --limit integer: Maximum number of records to return (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs record

mistral evals runs record

Show one record of a run in full: input, then per generation its output, status, and scores with rationales

Usage:

mistral evals runs record [flags] <run-id> <record-id>

Arguments:

  • <run-id> (string): The run id
  • <record-id> (string): The record id (from runs records)

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs delete

mistral evals runs delete

Delete a run by id

Usage:

mistral evals runs delete [flags] <run-id>

Arguments:

  • <run-id> (string): The run id

Flags:

  • --yes: Confirm the deletion (required)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals runs export

mistral evals runs export

Export a run's records to a file (CSV or JSONL)

Usage:

mistral evals runs export [flags] <run-id>

Arguments:

  • <run-id> (string): The run id

Flags:

  • --format choice: Export file format (default: jsonl) (choices: jsonl, csv)
  • --output string: Download the export to this path instead of printing the signed URL
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset

mistral evals dataset

Manage evaluation datasets

Usage:

mistral evals dataset <subcommand> [flags]

Subcommands:

  • ls: List datasets
  • get: Show one dataset by id
  • create: Create an empty dataset
  • records: List a dataset's records
  • add-record: Add one record to a dataset from a JSON file
  • import: Import records into a dataset from a JSONL file and wait for the import to finish
  • tasks: List a dataset's import tasks
  • task: Show one import task (status, progress, message)
  • export: Export a dataset to JSONL (returns a presigned download URL)
  • delete: Delete a dataset by id
mistral evals dataset ls

mistral evals dataset ls

List datasets

Usage:

mistral evals dataset ls [flags]

Flags:

  • --q string: Filter datasets by name
  • --limit integer: Maximum number of datasets to return (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset get

mistral evals dataset get

Show one dataset by id

Usage:

mistral evals dataset get [flags] <dataset-id>

Arguments:

  • <dataset-id> (string): The dataset id

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset create

mistral evals dataset create

Create an empty dataset

Usage:

mistral evals dataset create [flags] <name>

Arguments:

  • <name> (string): The dataset name (5 to 50 characters)

Flags:

  • --description string: A human-friendly dataset description
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset records

mistral evals dataset records

List a dataset's records

Usage:

mistral evals dataset records [flags] <dataset-id>

Arguments:

  • <dataset-id> (string): The dataset id

Flags:

  • --limit integer: Maximum number of records to return (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset add-record

mistral evals dataset add-record

Add one record to a dataset from a JSON file

Usage:

mistral evals dataset add-record [flags] <dataset-id> <file>

Arguments:

  • <dataset-id> (string): The dataset id
  • <file> (string): Path to a JSON file with the record: {"payload": {...}, "properties": {...}} (properties optional)

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset import

mistral evals dataset import

Import records into a dataset from a JSONL file and wait for the import to finish

Usage:

mistral evals dataset import [flags] <dataset-id> <file>

Arguments:

  • <dataset-id> (string): The dataset id
  • <file> (string): Path to a JSONL file, one {"payload": {...}, "properties": {...}} record per line

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset tasks

mistral evals dataset tasks

List a dataset's import tasks

Usage:

mistral evals dataset tasks [flags] <dataset-id>

Arguments:

  • <dataset-id> (string): The dataset id

Flags:

  • --limit integer: Maximum number of tasks to return (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset task

mistral evals dataset task

Show one import task (status, progress, message)

Usage:

mistral evals dataset task [flags] <dataset-id> <task-id>

Arguments:

  • <dataset-id> (string): The dataset id
  • <task-id> (string): The import task id

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset export

mistral evals dataset export

Export a dataset to JSONL (returns a presigned download URL)

Usage:

mistral evals dataset export [flags] <dataset-id>

Arguments:

  • <dataset-id> (string): The dataset id

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals dataset delete

mistral evals dataset delete

Delete a dataset by id

Usage:

mistral evals dataset delete [flags] <dataset-id>

Arguments:

  • <dataset-id> (string): The dataset id

Flags:

  • --yes: Confirm the deletion (required)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals judge

mistral evals judge

Manage LLM judges

Usage:

mistral evals judge <subcommand> [flags]

Subcommands:

  • ls: List judges
  • get: Show one judge by id
  • create: Create a judge from a JSON definition file
  • delete: Delete a judge by id
mistral evals judge ls

mistral evals judge ls

List judges

Usage:

mistral evals judge ls [flags]

Flags:

  • --q string: Filter judges by name
  • --limit integer: Maximum number of judges to return (default: 50)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals judge get

mistral evals judge get

Show one judge by id

Usage:

mistral evals judge get [flags] <judge-id>

Arguments:

  • <judge-id> (string): The judge id

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals judge create

mistral evals judge create

Create a judge from a JSON definition file

Usage:

mistral evals judge create [flags] <file>

Arguments:

  • <file> (string): Path to a JSON file with the judge definition (name, description, model_name, output, instructions, tools)

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals judge delete

mistral evals judge delete

Delete a judge by id

Usage:

mistral evals judge delete [flags] <judge-id>

Arguments:

  • <judge-id> (string): The judge id

Flags:

  • --yes: Confirm the deletion (required)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral evals open

mistral evals open

Open (and print) an AI Studio evaluations deep link

Usage:

mistral evals open [flags]

Flags:

  • --project string: Open a specific project by slug
  • --evaluation string: Open a specific evaluation by slug (needs --project)
  • --no-browser: Only print the URL; do not launch a browser
Observability

Observability

mistral observability

mistral observability

Inspect traces and observability data

Usage:

mistral observability <subcommand> [flags]

Subcommands:

  • traces: Search and inspect traces
  • spans: Search and inspect individual spans within traces
  • logs: Search log entries emitted by services and agents
mistral observability traces

mistral observability traces

Search and inspect traces

Usage:

mistral observability traces <subcommand> [flags]

Subcommands:

  • search: Search LLM traces by filter expression and time window
  • get: Fetch the full details of a single trace by ID

Search LLM traces by filter expression and time window

Usage:

mistral observability traces search [flags] [<filter>]

Arguments:

  • <filter> (string): SQL-like filter expression, e.g. 'agent_name = "vibe" AND status_code = "ERROR"'

Flags:

  • --from string: Start of the time window — ISO-8601 or relative (e.g. -1h, -7d); default: 1 hour ago
  • --to string: End of the time window — ISO-8601 or relative (e.g. -1h); default: now
  • --limit integer: Number of traces to return (1–100, default: 25)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral observability traces get

mistral observability traces get

Fetch the full details of a single trace by ID

Usage:

mistral observability traces get [flags] <trace-id>

Arguments:

  • <trace-id> (string): The trace ID to fetch

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral observability spans

mistral observability spans

Search and inspect individual spans within traces

Usage:

mistral observability spans <subcommand> [flags]

Subcommands:

  • search: Search spans by filter expression and time window
  • get: Fetch the full details of a single span by trace ID and span ID

Search spans by filter expression and time window

Usage:

mistral observability spans search [flags] [<filter>]

Arguments:

  • <filter> (string): SQL-like filter expression, e.g. 'span_type = "llm" AND status_code = "ERROR"'

Flags:

  • --from string: Start of the time window — ISO-8601 or relative (e.g. -1h, -7d); default: 1 hour ago
  • --to string: End of the time window — ISO-8601 or relative (e.g. -1h); default: now
  • --limit integer: Number of spans to return (1–100, default: 25)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral observability spans get

mistral observability spans get

Fetch the full details of a single span by trace ID and span ID

Usage:

mistral observability spans get [flags] <trace-id> <span-id>

Arguments:

  • <trace-id> (string): The trace ID that contains the span
  • <span-id> (string): The span ID to fetch

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral observability logs

mistral observability logs

Search log entries emitted by services and agents

Usage:

mistral observability logs <subcommand> [flags]

Subcommands:

  • search: Search log entries by filter expression and time window

Search log entries by filter expression and time window

Usage:

mistral observability logs search [flags] [<filter>]

Arguments:

  • <filter> (string): SQL-like filter expression, e.g. 'severity = "ERROR" AND service_name = "api"'

Flags:

  • --from string: Start of the time window — ISO-8601 or relative (e.g. -1h, -7d); default: 1 hour ago
  • --to string: End of the time window — ISO-8601 or relative (e.g. -1h); default: now
  • --limit integer: Number of log entries to return (1–100, default: 25)
  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

Account and context

Account and context

mistral login

mistral login

Sign in to Mistral in your browser

Usage:

mistral login [flags]

Flags:

  • --force: Re-authenticate even if already signed in
  • --device: Use device authorization flow (RFC 8628) for headless environments
  • --insecure-storage: Keep the sign-in in a file when no OS keychain is available
  • --api-key string: Save an API key instead of using the browser flow; pass - to read it from stdin
mistral logout

mistral logout

Sign out and remove stored credentials

Usage:

mistral logout [flags]
mistral whoami

mistral whoami

Show the signed-in identity

Usage:

mistral whoami [flags]

Flags:

  • --json: Emit the output as JSON.

Pass --json for machine-readable output.

mistral context

mistral context

Show or set the active organization and workspace

Usage:

mistral context <subcommand> [flags]

Subcommands:

  • show: Show the active organization and workspace
  • set: Select an organization and workspace
mistral context show

mistral context show

Show the active organization and workspace

Usage:

mistral context show [flags]
mistral context set

mistral context set

Select an organization and workspace

Usage:

mistral context set [flags]

Flags:

  • --organization string: Organization ID or name (skip the interactive prompt)
  • --workspace string: Workspace ID or name (skip the interactive prompt)
Upgrade

Upgrade

mistral upgrade

mistral upgrade

Upgrade this CLI to the latest release

Usage:

mistral upgrade [flags]

Flags:

  • --dry-run: Print the install command instead of running it