> ## Documentation Index
> Fetch the complete documentation index at: https://www.mintlify.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Commands

> Complete reference for every Mintlify CLI command and flag, including mint dev, mint build, mint validate, mint analytics, and more.

## Global flags

These flags are available on all commands.

| Flag                | Description                                        |
| ------------------- | -------------------------------------------------- |
| `--telemetry`, `-t` | Enable or disable anonymous usage telemetry.       |
| `--help`, `-h`      | Display help for the command.                      |
| `--version`, `-v`   | Display the CLI version. Alias for `mint version`. |

## `mint dev`

Start a local preview of your documentation.

```bash theme={null}
mint dev [flags]
```

| Flag                | Description                                              |
| ------------------- | -------------------------------------------------------- |
| `--port`            | Port to run the local preview on. Defaults to `3000`.    |
| `--no-open`         | Do not open the browser automatically.                   |
| `--groups`          | Comma-separated list of user groups to mock for preview. |
| `--disable-openapi` | Skip OpenAPI file processing to improve performance.     |
| `--local-schema`    | Allow locally hosted OpenAPI files served over HTTP.     |

***

## `mint login`

Authenticate with your Mintlify account.

```bash theme={null}
mint login
```

Opens a browser window to complete authentication. If the browser does not open, the CLI displays a URL to open manually and a prompt to paste the authorization code. Credentials save in `~/.config/mintlify/config.json`.

If you have more than one deployment, the CLI prompts you to select a default after you log in. You can change the default project later with `mint config set subdomain <subdomain>`.

***

## `mint logout`

Remove stored credentials.

```bash theme={null}
mint logout
```

***

## `mint status`

Display your current session details including CLI version, account email, organization, and configured subdomain.

```bash theme={null}
mint status
```

***

## `mint analytics`

View analytics data for your documentation. Requires authentication with `mint login`.

```bash theme={null}
mint analytics <subcommand> [flags]
```

All subcommands accept these shared flags:

| Flag          | Description                                                                                                                |
| ------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `--subdomain` | Documentation subdomain. Defaults to the value set with `mint config set subdomain`, or the first project on your account. |
| `--from`      | Start date in `YYYY-MM-DD` format. Defaults to 7 days ago, or the value set with `mint config set dateFrom`.               |
| `--to`        | End date in `YYYY-MM-DD` format. Defaults to today, or the value set with `mint config set dateTo`.                        |
| `--format`    | Output format: `plain` (default), `table`, `json`, or `graph`.                                                             |

### `mint analytics stats`

Display a summary of views, visitors, searches, feedback, and assistant usage.

```bash theme={null}
mint analytics stats [flags]
```

| Flag     | Description                     |
| -------- | ------------------------------- |
| `--page` | Filter to a specific page path. |

### `mint analytics search`

Display search queries with hit counts and click-through rates.

```bash theme={null}
mint analytics search [flags]
```

| Flag      | Description                       |
| --------- | --------------------------------- |
| `--query` | Filter by search query substring. |
| `--page`  | Filter by top clicked page.       |

### `mint analytics feedback`

Display feedback submitted by users.

```bash theme={null}
mint analytics feedback [flags]
```

| Flag     | Description                                                                  |
| -------- | ---------------------------------------------------------------------------- |
| `--type` | Feedback type: `page` (aggregate by page) or `code` (code snippet feedback). |
| `--page` | Filter to a specific page path.                                              |

### `mint analytics conversation`

View assistant conversation data.

```bash theme={null}
mint analytics conversation <subcommand> [flags]
```

#### `mint analytics conversation list`

List assistant conversations. Each entry includes a conversation ID.

```bash theme={null}
mint analytics conversation list [flags]
```

| Flag     | Description                                                     |
| -------- | --------------------------------------------------------------- |
| `--page` | Filter conversations that reference a specific page in sources. |

#### `mint analytics conversation view <conversation-id>`

View a single conversation by ID. Use `mint analytics conversation list` to get IDs.

```bash theme={null}
mint analytics conversation view <conversation-id>
```

#### `mint analytics conversation buckets list`

List grouped conversation categories. Each entry includes a bucket ID.

```bash theme={null}
mint analytics conversation buckets list
```

#### `mint analytics conversation buckets view <bucket-id>`

View conversations in a category bucket. Use `mint analytics conversation buckets list` to get IDs.

```bash theme={null}
mint analytics conversation buckets view <bucket-id>
```

***

## `mint workflow`

Create, list, and delete [workflows](/workflows) from the terminal. Requires authentication with `mint login`.

```bash theme={null}
mint workflow <subcommand> [flags]
```

All subcommands accept these shared flags:

| Flag          | Description                                                                                                                |
| ------------- | -------------------------------------------------------------------------------------------------------------------------- |
| `--subdomain` | Documentation subdomain. Defaults to the value set with `mint config set subdomain`, or the first project on your account. |
| `--format`    | Output format: `table` (default, pretty) or `json` (raw, machine-readable).                                                |

When `--format json` is set, errors print to stderr as `Error: <message>` and the command exits with a non-zero status, so you can pipe successful output into other tools.

### `mint workflow create`

Create a new workflow. You can pass the workflow definition inline with flags, or point at a JSON or YAML file with `--file`.

```bash theme={null}
mint workflow create [flags]
```

| Flag             | Description                                                                                                                                                                                                                                        |
| ---------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `--name`         | Workflow name. Required unless `--file` is provided.                                                                                                                                                                                               |
| `--prompt`       | Instructions appended to the workflow's base prompt on every run.                                                                                                                                                                                  |
| `--type`         | Workflow type. One of `changelog`, `source-code-agent`, `translations`, `writing-style`, `typo-check`, `broken-link-detection`, `seo-metadata-audit`, `assistant-docs-updates`, or `contextual-feedback-docs-updates`. Omit for a custom workflow. |
| `--cron`         | Cron expression for a scheduled trigger. Mutually exclusive with `--push-repo`.                                                                                                                                                                    |
| `--push-repo`    | Repository (`owner/repo`) for a push trigger. Repeatable to listen to multiple repositories. Mutually exclusive with `--cron`.                                                                                                                     |
| `--context-repo` | Additional context repository (`owner/repo`) the agent reads when the workflow runs. Repeatable, up to 10 total.                                                                                                                                   |
| `--automerge`    | Automatically merge pull requests opened by this workflow. See [Configure automerge](/guides/configure-automerge) for setup requirements.                                                                                                          |
| `--file`         | Path to a JSON or YAML file containing the full workflow body. Overrides the inline flags.                                                                                                                                                         |

Exactly one trigger is required: pass `--cron` for a scheduled workflow or one or more `--push-repo` flags for a push-triggered workflow.

#### Examples

```bash theme={null}
# Scheduled translations workflow
mint workflow create \
  --name "Translate content" \
  --type translations \
  --cron "0 6 * * *"

# Push-triggered workflow with extra context
mint workflow create \
  --name "Sync API reference" \
  --type source-code-agent \
  --push-repo my-org/api \
  --context-repo my-org/shared-types \
  --automerge

# Create from a file
mint workflow create --file workflow.yaml
```

A workflow file uses the same shape as the inline flags. The `on` field holds the trigger:

```yaml theme={null}
name: Translate content
type: translations
on:
  cron: "0 6 * * *"
prompt: Prefer formal tone in French translations.
automerge: false
context:
  - repo: my-org/shared-content
```

### `mint workflow list`

List workflows for the current deployment.

```bash theme={null}
mint workflow list [flags]
```

The default table output shows each workflow's ID, name, type, trigger, and status. Use `--format json` to get the full workflow objects.

### `mint workflow delete`

Delete a workflow by ID. Use `mint workflow list` to get the ID.

```bash theme={null}
mint workflow delete <id> [flags]
```

| Argument | Description                   |
| -------- | ----------------------------- |
| `id`     | Workflow schema ID to delete. |

***

## `mint config`

Manage persistent default values for CLI commands. The configuration saves in `~/.config/mintlify/config.json`.

```bash theme={null}
mint config <subcommand> <key> [value]
```

| Subcommand          | Description                    |
| ------------------- | ------------------------------ |
| `set <key> <value>` | Set a configuration value.     |
| `get <key>`         | Display a configuration value. |
| `clear <key>`       | Remove a configuration value.  |

### Configuration keys

| Key         | Description                                              | Used by                           |
| ----------- | -------------------------------------------------------- | --------------------------------- |
| `subdomain` | Default documentation subdomain.                         | `mint analytics`, `mint workflow` |
| `dateFrom`  | Default start date for analytics queries (`YYYY-MM-DD`). | `mint analytics`                  |
| `dateTo`    | Default end date for analytics queries (`YYYY-MM-DD`).   | `mint analytics`                  |

***

## `mint broken-links`

Check for broken internal links in your documentation.

```bash theme={null}
mint broken-links [flags]
```

The command excludes files matching [.mintignore](/organize/mintignore) patterns. Links that point to ignored files report as broken.

| Flag                | Description                                                                      |
| ------------------- | -------------------------------------------------------------------------------- |
| `--check-anchors`   | Also validate anchor links (for example, `/page#section`) against heading slugs. |
| `--check-external`  | Also check external URLs for broken links.                                       |
| `--check-redirects` | Also check that redirect destinations in `docs.json` resolve to valid paths.     |
| `--check-snippets`  | Also check links inside `<Snippet>` components.                                  |

***

## `mint a11y`

Check for accessibility issues in your documentation.

```bash theme={null}
mint a11y [flags]
```

Checks color contrast ratios and missing alt text on images and videos.

| Flag              | Description                   |
| ----------------- | ----------------------------- |
| `--skip-contrast` | Skip color contrast checks.   |
| `--skip-alt-text` | Skip missing alt text checks. |

***

## `mint validate`

Validate your documentation build in strict mode. Exits with an error if there are any warnings or errors. Includes automatic validation of OpenAPI specifications referenced in your `docs.json`.

```bash theme={null}
mint validate [flags]
```

| Flag                | Description                                                                                           |
| ------------------- | ----------------------------------------------------------------------------------------------------- |
| `--groups`          | Comma-separated list of user groups to mock for validation.                                           |
| `--disable-openapi` | Skip OpenAPI file processing and validation.                                                          |
| `--local-schema`    | Allow validation of locally hosted OpenAPI files served over HTTP. Only supports HTTPS in production. |

<Note>
  The standalone `mint openapi-check` command is deprecated. Use `mint validate` instead.
</Note>

***

## `mint export`

Export your documentation as a self-contained zip archive for offline viewing and distribution.

```bash theme={null}
mint export [flags]
```

| Flag                | Description                                                          |
| ------------------- | -------------------------------------------------------------------- |
| `--output`          | Output filename. Defaults to `export.zip`.                           |
| `--groups`          | Comma-separated list of user groups to include restricted pages for. |
| `--disable-openapi` | Skip OpenAPI processing.                                             |

See [Offline export](/deploy/export) for details.

***

## `mint score`

Run agent readiness checks against a public documentation site. Requires authentication with `mint login`.

```bash theme={null}
mint score [url] [flags]
```

| Argument | Description                                                                                                                                                                     |
| -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `url`    | Optional. URL of the docs site to check. If omitted, the command scores your configured subdomain (from `mint config` or the subdomain associated with your logged-in account). |

| Flag       | Description                                                                   |
| ---------- | ----------------------------------------------------------------------------- |
| `--format` | Output format: `table` (default, colored), `plain` (pipeable TSV), or `json`. |

The command displays an overall readiness score and a breakdown of individual checks with pass/fail indicators.

### Examples

```bash theme={null}
# Score your default subdomain
mint score

# Score a specific site
mint score docs.example.com
```

### Checks

The score evaluates the following areas:

| Check                         | What it verifies                                                                                                                                                                |
| ----------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `llmsTxtExists`               | Agents can reach an [llms.txt](/ai/llmstxt) file at the site root.                                                                                                              |
| `llmsTxtValid`                | The `llms.txt` file follows the expected format with headings, blockquote summary, and Markdown links.                                                                          |
| `llmsTxtSize`                 | The `llms.txt` file is within the size threshold so agents can consume it without truncation.                                                                                   |
| `llmsTxtLinksResolve`         | Links inside `llms.txt` resolve to live pages.                                                                                                                                  |
| `llmsTxtLinksMarkdown`        | Links inside `llms.txt` use Markdown syntax.                                                                                                                                    |
| `llmsTxtDirective`            | The `llms.txt` file contains usage directives.                                                                                                                                  |
| `llmsTxtFullExists`           | An [llms-full.txt](/ai/llmstxt/#llms-full-txt) file is available for agents that need the complete content. Runs independently of `llmsTxtExists`.                              |
| `llmsTxtFullSize`             | The `llms-full.txt` file is within a reasonable size for agents to process.                                                                                                     |
| `llmsTxtFullValid`            | The `llms-full.txt` file contains valid content with headings.                                                                                                                  |
| `llmsTxtFullLinksResolve`     | Links inside `llms-full.txt` resolve to live pages.                                                                                                                             |
| `skillMd`                     | Agents can reach a [skill.md](https://www.mintlify.com/docs/ai/skillmd) file for agent tool use.                                                                                |
| `contentNegotiationMarkdown`  | The site returns Markdown when agents request it through content negotiation.                                                                                                   |
| `contentNegotiationPlaintext` | The site returns plain text when agents request it through content negotiation.                                                                                                 |
| `mcpServerDiscoverable`       | Agents can discover an [MCP server](/ai/model-context-protocol) for tool-based agents.                                                                                          |
| `mcpToolCount`                | The MCP server exposes at least one tool.                                                                                                                                       |
| `openApiSpec`                 | There is an available OpenAPI or Swagger specification at a standard path.                                                                                                      |
| `robotsTxtAllowsAI`           | The `robots.txt` file does not block AI crawlers.                                                                                                                               |
| `sitemapExists`               | There is a sitemap available for page discovery.                                                                                                                                |
| `structuredData`              | The homepage contains [JSON-LD](https://json-ld.org/) structured data (`<script type="application/ld+json">`). Reports the number of JSON-LD blocks and the schema types found. |
| `responseLatency`             | The site responds within an acceptable time for agents.                                                                                                                         |

Some checks only run if a check they depend on passes. If a check fails, none of the checks that depend on it run. They automatically fail. For example, `llmsTxtValid` only passes if `llmsTxtExists` passes first.

The overall score uses weighted scoring, so higher-impact checks contribute more to your score.

***

## `mint new`

Create a new documentation project by picking a theme or cloning a pre-defined template from the [mintlify/templates](https://github.com/mintlify/templates) repository.

```bash theme={null}
mint new [directory] [flags]
```

| Flag         | Description                                                                                       |
| ------------ | ------------------------------------------------------------------------------------------------- |
| `--name`     | Project name. The CLI prompts for this if not provided in interactive mode.                       |
| `--theme`    | Project [theme](/customize/themes). The CLI prompts for this if not provided in interactive mode. |
| `--template` | Pre-defined template. The CLI prompts for this if not provided in interactive mode.               |
| `--force`    | Overwrite the directory without prompting.                                                        |

***

## `mint update`

Update the CLI to the latest version.

```bash theme={null}
mint update
```

***

## `mint version`

Display the current CLI and client versions.

```bash theme={null}
mint version
```

***

## Coming soon

These commands are available to run but are not yet functional. Running them records your interest through CLI telemetry and helps prioritize what ships next.

| Command       | Description                     |
| ------------- | ------------------------------- |
| `mint ai`     | AI-powered documentation tools. |
| `mint test`   | Documentation testing.          |
| `mint signup` | Account sign-up from the CLI.   |
| `mint mcp`    | MCP server for documentation.   |

***

## Telemetry

The CLI collects anonymous usage telemetry to help improve Mintlify. Telemetry data includes the command name, CLI version, operating system, and architecture. Mintlify does **not** collect personally identifiable information, project content, or file paths.

By default, the CLI collects telemetry data. You can opt out at any time using the `--telemetry` flag:

```bash theme={null}
# Disable telemetry
mint --telemetry false

# Re-enable telemetry
mint --telemetry true
```

You can also disable telemetry by setting one of these environment variables:

| Variable                      | Value | Description                                                                                  |
| ----------------------------- | ----- | -------------------------------------------------------------------------------------------- |
| `MINTLIFY_TELEMETRY_DISABLED` | `1`   | Disable Mintlify CLI telemetry.                                                              |
| `DO_NOT_TRACK`                | `1`   | Disable telemetry using the [Console Do Not Track](https://consoledonottrack.com/) standard. |

Your preference saves in `~/.config/mintlify/config.json` and persists across CLI sessions.


## Related topics

- [Write documentation with Claude Code](/docs/guides/claude-code.md)
- [How to create accessible documentation](/docs/guides/accessibility.md)
- [Mintlify CLI](/docs/cli/index.md)
