Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions mint-instructions/automate.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@

- Fail a PR on broken builds or links, in any CI, any plan: add `mint validate` and `mint broken-links` to the user's own CI (below).
- Broken internal links and Vale prose linting on GitHub PRs, no CI file: Mintlify CI checks (Pro or Enterprise, GitHub only).
- Recurring or triggered doc updates (code merged, content pushed, schedule, integration event, webhook): an automation (Pro or Enterprise).
- "Just keep docs up to date", no prompts or triggers to configure: Autopilot (Pro or Enterprise, GitHub or GitLab including self-hosted).
- Recurring or triggered doc updates (code merged, content pushed, schedule, integration event, webhook): an automation (Enterprise).
- "Just keep docs up to date", no prompts or triggers to configure: Autopilot (Pro or Enterprise, on GitHub, GitLab including self-hosted, or Azure Repos).

Check warning on line 15 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L15

Commas and periods go inside quotation marks.
- One-off or exploratory change: the Mintlify agent in Slack, the web editor, or the dashboard.

## Workflow
Expand All @@ -20,32 +20,32 @@
1. Run `mint status` to confirm account and subdomain. Ask the plan if a step needs Pro or Enterprise.
2. CI in their repo: add the Examples job yourself.
3. Mintlify CI checks: tell the user to enable them on the dashboard **Site** settings page (https://app.mintlify.com/settings/project/site), choosing `Warning` (never fails) or `Blocking` (fails on errors or suggestions). Needs the Mintlify GitHub App. Optional: commit a `.vale.ini` in the content root (use relative `StylesPath = styles`, no absolute paths or `..`) and `styles/config/vocabularies/Mintlify/accept.txt` / `reject.txt`.
4. Agent guidance: write `.mintlify/AGENTS.md`. A root `AGENTS.md` also works but is served publicly at `/agents.md` unless you add it to `.mintignore`. The Mintlify agent reads only `AGENTS.md`, not `CLAUDE.md`, `.cursorrules` or similar, so copy shared rules in. The editor agent ignores `AGENTS.md`; it uses **AI instructions** in editor settings.

Check warning on line 23 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L23

Use 'Claude' instead of 'CLAUDE'.
5. Automations: you can manage them from the terminal when the user is logged in (`mint login`): `mint automations list`, `mint automations delete <id>`, and `mint automations create` with `--name`, `--prompt`, `--type` (predefined: `changelog`, `source-code-agent`, `translations`, `writing-style`, `typo-check`, `broken-link-detection`, `seo-metadata-audit`, `assistant-docs-updates`, `contextual-feedback-docs-updates`), a trigger (`--cron "<5-field cron>"` or `--push-repo owner/repo`), optional `--context-repo`, `--automerge`, or `--file <json|yaml>`. Confirm name, trigger, and prompt with the user before creating. Otherwise the user uses **Automations** in the dashboard. Prompts: one task, numbered steps, exact paths, done state.

Check warning on line 24 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L24

In general, use active voice instead of passive voice ('is logged').

Check warning on line 24 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L24

Use 'signed in' instead of 'logged in'.
6. Test: user clicks **Test run** / **Run now** and picks a scope (**Since a date**, **Everything**, **Specific pull request**). Not available for Integration or Webhook triggers. Check the **Runs** tab.
7. Autopilot: user opens https://app.mintlify.com/products/autopilot, switches on the toggle, picks **Additional repositories** under GitHub **Configure** (GitLab: **Additional projects**, after connecting projects through GitLab OAuth in Git settings), and uses **Chat to configure** to change reviewers, target branch, or schedule.
8. Slack agent: user clicks **Connect Slack** on the Automations page and installs the `mintlify` app (workspace admin approval may be needed; on Enterprise Grid install to the specific workspace). Test with a DM or `@mintlify` in a channel. Not available for Bitbucket Cloud projects.
7. Autopilot: user opens https://app.mintlify.com/products/autopilot, switches on the toggle, picks **Additional repositories** under GitHub **Configure** (GitLab: **Additional projects**, after connecting projects through GitLab OAuth in Git settings. Azure Repos: **Configure** in the **Azure Repos** row), and uses **Chat to configure** to change reviewers, target branch, or schedule.
8. Slack agent: user clicks **Connect Slack** on the Automations page and installs the `mintlify` app (workspace admin approval may be needed; on Enterprise Grid install to the specific workspace). Test with a DM or `@mintlify` in a channel. The Slack agent also chats with Autopilot: ask about its work or change what it works on. Not available for Bitbucket Cloud projects.

Check warning on line 27 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L27

In general, use active voice instead of passive voice ('be needed').

## What each piece does

- The Mintlify agent: researches docs, connected repos and the web, plans, writes, runs Mintlify CLI checks, then opens a PR or commits to the deploy branch (**Review process** in Slack settings: **Create a pull request** or **Push to main**; branch protection forces a PR). Name another branch in the prompt to target it. Only reads repos with the Mintlify GitHub App (GitLab: Git Settings); other repos are read-only context. Slack viewers get read-only.

Check warning on line 31 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L31

In general, use active voice instead of passive voice ('are read').
- Web editor agent: **Ask agent** or Cmd/Ctrl+J; edits the current branch.
- Automations: one trigger each. **Content update** (push to docs repo), **Code change** (PR merged in source repos; per-repo path filters and excluded authors, up to 50 repos), **Custom schedule** (presets or 5-field cron), **Integration** (Enterprise, custom only), **Webhook** (custom only, `POST` with `Authorization: Bearer <api-key>`, an organization API key with write access).
- Predefined: Update from code changes (needs a source repo, default twice weekly), Draft changelog, Fill gaps from assistant conversations, Improve docs from user feedback (feedback collection on), Update from support feedback (Intercom, Plain, Pylon, or Zendesk), Translate content (needs a target language, direct merge), Fix broken links, Fix SEO issues, Fix grammar & typos, Enforce your style guide. Custom: your own prompt.
- Output: PRs against the deploy branch, titled with the automation name. No per-automation base branch; to land elsewhere, change the project's deploy branch in Git Settings or use a separate project. Update mode: **Modify and wait for review** (PR) or **Update and merge changes** (GitHub needs the Mintlify GitHub App on the bypass list, mode **Always**, of every ruleset on the deploy branch). Up to 10 context repos.
- Autopilot: decides what to update itself, avoids duplicating active automations, never pushes to the deploy or default branch, assigns the code owner as reviewer. Default: updates on code changes plus a daily quality check.
- Autopilot: decides what to update itself, avoids duplicating active automations, never pushes to the deploy or default branch, assigns the code owner as reviewer (not on Azure Repos). Default: updates on code changes plus a daily quality check.
- Integrations (Enterprise): read-only tools and triggers for automations (Confluence, Jira, Linear, Notion, Stripe, Zendesk, Slack).

## Plans and credits

- Starter has no AI features and cannot buy credits.
- Each Pro plan adds 10,000 credits per month to one organization-wide balance.
- Each Pro plan adds 10,000 credits per month to one organization-wide balance. A project with a credit allocation (Pro or Enterprise) spends it first.
- Automation run that updates docs: 250 credits. Autopilot run that opens or updates a PR: 250. Runs that find nothing or fail: 0. Editor and Slack agent: no credits.
- Scheduled runs batch changes into one 250-credit update; push triggers vary with change volume. Max 500 runs per automation per day. Autopilot pauses itself when credits run out.

## Rules

- Never claim Autopilot, Mintlify CI checks, or the Slack app are set up: only the user can do those in the dashboard. Confirm an automation exists with `mint automations list`.

Check warning on line 48 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L48

In general, use active voice instead of passive voice ('are set').
- For other `mint automations` flags, run `mint automations create --help`.
- Do not invent `mint publish`. Mintlify CI checks do not check external links; use `mint broken-links --check-external`.
- If the Git provider uses an IP allow list, the user emails support@mintlify.com to route through `54.242.90.151`, then allows that IP.
Expand Down Expand Up @@ -85,5 +85,5 @@
- `mint instructions publish` for deploys, previews, and CI context.
- https://www.mintlify.com/docs/automations/index
- https://www.mintlify.com/docs/automations/reference
- https://www.mintlify.com/docs/deploy/ci

Check warning on line 88 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L88

Use 'CI' instead of 'ci'.
- https://www.mintlify.com/docs/agent/slack

Check warning on line 89 in mint-instructions/automate.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/automate.mdx#L89

Use 'Slack' instead of 'slack'.
12 changes: 7 additions & 5 deletions mint-instructions/new-site.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
when: "New docs site, first publish, no account, claim a site, login, no docs.json yet"
related: false
---
Use this when the user wants a docs site or wants docs live on a URL. Run the whole workflow yourself; ask only for what you cannot supply.

Check warning on line 8 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L8

Use semicolons judiciously.

## Checklist

Expand All @@ -16,6 +16,7 @@
- [ ] scaffold or add docs.json, write real pages
- [ ] mint dev --no-open, report the local URL
- [ ] mint validate and mint broken-links pass
- [ ] offer mint agent setup --agent <agent>
- [ ] go live: mint deploy (no account) or mint login (existing account)
- [ ] docs pushed to the hosted or connected repository
- [ ] https://<subdomain>.mintlify.site loads with the new docs
Expand All @@ -27,33 +28,34 @@
1. **Check tools.** `node --version` must be v20.17.0 or newer. Run `mint --version`; if missing, `npm i -g mint`. If present, `mint update`.
2. **Build locally first if the user wants a preview.**
- Existing repo with docs (a `docs/` folder or Markdown files): keep that content. Create the Mintlify project in a new, empty directory (for example `docs/` if it does not exist) and port the existing Markdown into it.
- Scaffold with `mint new <directory> --name <name> --theme <theme>` or `mint new <directory> --template <template>`. Agents must pass `--name` and `--theme`, or `--template`. If the user did not choose a theme, ask, or say which one you picked and why. Theme names are listed in https://www.mintlify.com/docs/customize/themes.

Check warning on line 31 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L31

In general, use active voice instead of passive voice ('are listed').
- Write real pages from the repo (README, code, existing docs). No placeholder pages. See `mint instructions write`.

Check warning on line 32 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L32

Use 'ReadMe' instead of 'README'.
- Run `mint dev --no-open` in the background from the directory with `docs.json`, confirm the local URL loads, and report it.
- Run `mint validate` and `mint broken-links`. Fix what you caused.
3. **Go live.** Run `mint status`.
- **Logged in with an organization:** keep that session and use its repository (step 4).
3. **Offer to connect the user's coding agent.** If they agree and Node.js is v22.20 or newer, run `mint agent setup --agent <agent>` from the project directory, where `<agent>` is `claude-code`, `codex`, or `cursor`. It installs Mintlify skills and adds the admin MCP to the agent's project configuration. Always pass `--agent`: without an interactive terminal the command configures every agent it detects. The user completes OAuth sign-in in the agent afterward.
4. **Go live.** Run `mint status`.
- **Logged in with an organization:** keep that session and use its repository (step 5).
- **No account, or the user wants it live now: `mint deploy`.** From the directory with `docs.json`, run `mint deploy --subdomain <name>`. It provisions `https://<subdomain>.mintlify.site` and a hosted Git repository with a short-lived write token, and prints the Git commands. Clone that repository into a separate directory, copy the docs in (never `.env`, `.git` or `node_modules`), commit, and push to `main` with the token as a Bearer header for that Git command only. The push starts the build.
- To keep the token out of your transcript, save the output to a file outside the repository and read the repository URL and token into shell variables from it. If you lose the token or it expires (see `Write token expires` in the output), run `mint deploy` again from the same directory: it reuses the site and prints a fresh token.
- The site expires unless a person claims it. Ask the user which email address should own it (never invent one), then run `mint claim --email <email>` from the same directory (or pass `--directory`) and give them the claim link. They open it, sign in or create an account, and read you a code. Run `mint claim --code <code>` to finish. Do not sign in for them, and do not read or print the credentials the CLI stores; it reads them itself.
- To create a second site instead of reusing this one, run `mint deploy --new --subdomain <name>`.
- If `mint deploy` fails with `HTTP 429` (`rate_limit_exceeded`), nothing was created. Tell the user, and retry once a few minutes later. Do not loop: repeated attempts keep the limit in place.

Check warning on line 42 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L42

In general, use active voice instead of passive voice ('was created').
- **The user has a Mintlify account:** run `mint login` and use their repository (step 4).
- **The user has a Mintlify account:** run `mint login` and use their repository (step 5).
- **The docs live in the user's GitHub repository and they want every push to deploy:** from the repository root, with a GitHub `origin` remote and the GitHub CLI signed in, run `mint deploy --github --subdomain <name>` (add `--directory docs` if the docs are in a subfolder). It writes `.github/workflows/mintlify.yml`; commit and push it. This works only for unclaimed sites; after the user claims the site, they connect the repository from the dashboard instead. Pass `--force` only if the user agrees to overwrite an existing workflow file.

Check warning on line 44 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L44

Did you really mean 'subfolder'?
- **The user wants their own account now:** you cannot create it for them. Publish with `mint deploy` and let them claim the site (claiming creates the account), or send them to web onboarding at https://mintlify.com/start.
4. **Own repository (login path).** Mintlify deploys from the Git repository connected during onboarding.
5. **Own repository (login path).** Mintlify deploys from the Git repository connected during onboarding.
- After onboarding, run `mint status` again. It should show email, organization, and subdomain. If there is an organization but no subdomain, ask the user to finish selecting or connecting a GitHub repository in the onboarding tab, then retry.
- If the docs live in a subfolder of the user's code repo (for example `docs/`), the user must turn on **docs.json is in a subdirectory** in Git Settings (https://app.mintlify.com/settings/project/git-settings) and enter the path, like `/docs` (no trailing slash). See `mint instructions publish repo`.

Check warning on line 48 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L48

Did you really mean 'subfolder'?

Check warning on line 48 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L48

Use 'Git' instead of 'git'.
- Ask for the connected repository URL (`mint status` does not show it). If it is the user's repo, add your docs project to it. If Mintlify created a starter repo, clone it and replace the starter pages with the docs you built. Do not overwrite a user's existing repository with starter content.
- Commit and push to the deployment branch. A push triggers a deployment.
5. **Confirm live.** Check that `https://<subdomain>.mintlify.site` loads before you tell the user it is live. Until then, say what is left (push, build, claim link, connect GitHub).
6. **Confirm live.** Check that `https://<subdomain>.mintlify.site` loads before you tell the user it is live. Until then, say what is left (push, build, claim link, connect GitHub).

Check warning on line 51 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L51

In general, use active voice instead of passive voice ('is left').

## Rules

- The user needs a browser only to open a claim link, approve the CLI login, or connect GitHub.
- "Get it live, I don't have an account": use `mint deploy`, then offer the claim link. Do not stop at "sign up in the browser".

Check warning on line 56 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L56

Avoid first-person pronouns such as ' I '.

Check warning on line 56 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L56

Commas and periods go inside quotation marks.
- Never invent an email, use a placeholder like `YOUR_EMAIL`, or take one from Git config or the environment. Ask, then run `mint claim` yourself with exactly what the user gave you.
- Never tell the user a verification email was sent: no agent step sends one.

Check warning on line 58 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L58

In general, use active voice instead of passive voice ('was sent').
- Never show the write token to the user, put it in a Git remote URL, or save it in Git config.
- The live URL is `https://<subdomain>.mintlify.site`, not `.mintlify.app`. Use `mint status` for the exact subdomain after `mint login`, or the URL `mint deploy` printed.
- Do not use `--force` on a directory with user files.
Expand All @@ -61,7 +63,7 @@

## Example handoff to the user

> Your docs are live at `https://<subdomain>.mintlify.site` (I deployed them with `mint deploy`, no account needed). The site is temporary until you claim it: what email should I use? I'll send you a claim link so you can sign in and keep it.

Check warning on line 66 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L66

Avoid first-person pronouns such as ' I '.

## Verify

Expand All @@ -77,4 +79,4 @@
- Pages and components: `mint instructions write`
- docs.json and navigation: `mint instructions configure`
- Custom domain and later deploys: `mint instructions publish`
- Docs: https://www.mintlify.com/docs/quickstart , https://www.mintlify.com/docs/cli/install

Check warning on line 82 in mint-instructions/new-site.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/new-site.mdx#L82

Use 'CLI' instead of 'cli'.
4 changes: 2 additions & 2 deletions mint-instructions/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@

| Task | Command |
|---|---|
| New docs site, first publish (`mint deploy`, `mint claim`, `mint login`) | `mint instructions new-site` |
| New docs site, first publish (`mint deploy`, `mint claim`, `mint login`), connect a coding agent (`mint agent setup`) | `mint instructions new-site` |
| Write or edit pages, components, snippets, changelogs, images | `mint instructions write` (subtopic: `components`) |
| docs.json: theme, colors, logo, fonts, navigation, tabs, versions, languages, redirects, SEO, search, integrations, contextual menu, custom CSS/JS, 404 | `mint instructions configure` (subtopics: `navigation`, `settings`, `customization`) |
| API reference from OpenAPI, AsyncAPI, or GraphQL, API playground, SDK examples | `mint instructions api-docs` (subtopic: `sdk`) |
Expand All @@ -31,7 +31,7 @@
- `configure settings`: redirects for renamed or moved pages, navbar, footer, banner, SEO, search, analytics integrations, contextual menu, 404
- `configure customization`: fonts, custom CSS and JavaScript, React components (colors and logo are in `configure`)
- `api-docs sdk`: SDK code samples (x-codeSamples), SDK reference pages, oneOf/anyOf, multiple responses, hiding endpoints
- `publish assistant`: the AI assistant, embeddable widget, Assistant.md, narration, bring your own model

Check warning on line 34 in mint-instructions/overview.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/overview.mdx#L34

Did you really mean 'embeddable'?
- `publish analytics`: `mint analytics`, page feedback, search terms, analytics and consent integrations
- `publish domain`: custom domain (`mint add-domain`), /docs subpath, reverse proxy, CSP
- `publish repo`: monorepo, multi-repo, Git providers, offline zip export (`mint export`), self-hosting
Expand All @@ -42,7 +42,7 @@
- **No account? `mint deploy --subdomain <name>`** puts the docs live with no login. The site expires unless claimed: ask the user for their email and run `mint claim --email <email>`. With an account: `mint login`. Without the CLI: https://mintlify.com/auth.md.
- **Guidance for AI tools reading the docs** ("use our SDK", "prefer v2"): `markdown.instructions` in `docs.json`. Not a page, not a root `AGENTS.md`.
- **Instructions for the Mintlify agent** (Autopilot, automations, Slack): `.mintlify/AGENTS.md`. The web editor's agent uses **AI instructions** in editor settings instead.
- **Scheduled or triggered doc updates** (weekly changelog, sync on merge): a Mintlify automation, `mint automations create` (Pro or Enterprise). Do not build a GitHub Action, cron job or script for it unless the user asks.
- **Scheduled or triggered doc updates** (weekly changelog, sync on merge): a Mintlify automation, `mint automations create` (Enterprise). Do not build a GitHub Action, cron job or script for it unless the user asks.
- **Private docs on the free plan:** yes, private authentication (organization members only). Customer login (OAuth or JWT) is Enterprise.
- **Auth does not work on a `/docs` subpath** like `example.com/docs`. It needs `<subdomain>.mintlify.site` or a custom domain like `docs.example.com`.

Expand All @@ -51,7 +51,7 @@
1. **Find the project.** The project root is the directory with `docs.json`. Run commands from there.
2. **Read the topic** for the task.
3. **Edit** MDX pages and `docs.json`. Preserve the user's existing content and style. Never invent product facts, endpoints, or features.
4. **Preview** with `mint dev --no-open` as a background process. Report the local URL (default `http://localhost:3000`). Stop it when you are done.

Check warning on line 54 in mint-instructions/overview.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/overview.mdx#L54

In general, use active voice instead of passive voice ('are done').
5. **Check** with `mint validate` (fails on errors, prints warnings) and `mint broken-links`. Fix issues your changes caused.
6. **Ship** by committing and pushing to the connected repository, or with `mint deploy` when there is no account. Confirm the live site loads before you say it is live.

Expand All @@ -73,4 +73,4 @@
- `mint dev` keeps running. Start it in the background.
- `mint validate` exits non-zero only on errors. Warnings print without failing, so read the output too.
- Never guess a command or flag: run `mint <command> --help`.
- For detail these topics do not cover, read the docs page as Markdown with `curl -sL https://www.mintlify.com/docs/<path>.md` (for example https://www.mintlify.com/docs/autopilot.md). curl returns the full page; fetch tools may summarize. Index: https://www.mintlify.com/docs/llms.txt.

Check warning on line 76 in mint-instructions/overview.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/overview.mdx#L76

Use 'cURL' instead of 'curl'.
6 changes: 3 additions & 3 deletions mint-instructions/publish.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
when: "Deploying, \"is it live\", previews, rollbacks, MCP, llms.txt, skill.md, Markdown export"
related: false
---
Use this when the project already exists and you need to deploy changes, confirm they are live, connect a domain, or tell the user how readers and agents consume the docs. There is no `mint publish`: a Git push deploys a site with an account. For a first site with no account, use `mint deploy` (see `mint instructions new-site`). To update a site created with `mint deploy` that is not claimed yet, run `mint deploy` again from the same directory for a fresh write token, then fetch the hosted repository, commit on top of `main`, and push. Do not force-push. `mint status` does not show these sites; use the URL `mint deploy` printed.

Check warning on line 8 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L8

Use semicolons judiciously.

## Workflow

Expand All @@ -16,11 +16,11 @@
- Optional: `mint a11y` (contrast, missing alt text).
Fix every issue your changes caused.
3. Commit and push to the deployment branch (the branch set in Git Settings, typically `main`). The push triggers a deploy automatically.
- GitHub: the Mintlify GitHub App must be installed on the account or org that owns the repo, with access to the docs repo. Repos in the `mintlify-community` org already have it.

Check warning on line 19 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L19

In general, use active voice instead of passive voice ('be installed').

Check warning on line 19 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L19

Use 'repos?' instead of 'Repos'.
- GitLab: connected with an access token plus webhooks. Bitbucket Cloud: OAuth plus webhook, Enterprise plan only.
- GitLab: connected with an access token plus webhooks. Bitbucket Cloud: OAuth plus webhook, Enterprise plan only. Azure Repos: Microsoft Entra ID plus service hooks, Enterprise plan only.
- Branch protection: the app cannot push to protected branches. Open a PR instead.
4. Confirm it is live: load `https://<subdomain>.mintlify.site` (or the custom domain) and check the changed page. Deploys typically take 30 seconds to a few minutes. Deploy history and build status: dashboard **Publishes** page (https://app.mintlify.com/publishes). Do not report "deployed" until the page shows the change.
5. If nothing deployed: check the GitHub App is installed on the right repo, check you pushed to the configured branch, then the user can click the deploy button in the dashboard to trigger a manual deploy.

Check warning on line 23 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L23

In general, use active voice instead of passive voice ('is installed').

## Previews, rollbacks, CI

Expand All @@ -32,26 +32,26 @@
## Custom domain

For `mint add-domain`, DNS records, TLS, subpaths (`--basePath`), reverse proxies, CSP and iframes, run `mint instructions publish domain`.
For monorepos, multi-repo, Git providers, export and self-hosting, run `mint instructions publish repo`.

Check warning on line 35 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L35

Did you really mean 'monorepos'?

## AI and agent access (what is automatic)

- Search MCP server: automatic, hosted at `<site-url>/mcp` (sites with authentication: `/authed/mcp`, must be enabled first). Tools: search, query docs filesystem, submit feedback. Discovery at `/.well-known/mcp`. Users connect it themselves:

Check warning on line 39 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L39

In general, use active voice instead of passive voice ('be enabled').
- Claude Code: `claude mcp add --transport http <name> <site-url>/mcp`
- Claude: Settings, Connectors, **Add custom connector**, name and URL.
- Cursor: `mcp.json` with `{"mcpServers": {"<name>": {"url": "<site-url>/mcp"}}}`
- VS Code: `.vscode/mcp.json` with `{"servers": {"<name>": {"type": "http", "url": "<site-url>/mcp"}}}`
- Admin MCP (for the team, write access): `https://mcp.mintlify.com`, OAuth login. Its `deployment_status` tool reports whether a published commit is `live`. Different from the search MCP.
- Admin MCP (for the team, write access): `https://mcp.mintlify.com`, OAuth login. Its `deployment_status` tool reports whether a published commit is `live`. Different from the search MCP. Connect Claude Code, Codex, or Cursor with `mint agent setup --agent <agent>` (also installs Mintlify skills). For a read-only connection (search and read tools only), send the header `x-mintlify-toolset: knowledge`.
- `llms.txt` and `llms-full.txt`: automatic at the site root. A root `llms.txt`/`llms-full.txt` file in the repo overrides the generated one (must start with an H1). If `llms.txt` returns 404: `mint instructions troubleshoot`.
- `skill.md`: auto-generated at `/skill.md` for public sites only, can take up to 24 hours. Override with a root `skill.md`, or add `.mintlify/skills/<name>/SKILL.md`. Users install with `npx skills add <site-url>`.
- Markdown export: automatic. Append `.md` to any page URL, or send `Accept: text/markdown`. Add site-wide agent guidance with `markdown.instructions` in `docs.json`.
- Markdown export: automatic. Append `.md` to any page URL, or send `Accept: text/markdown`. Known AI agents (such as `ChatGPT-User`, `Claude-User`) get Markdown at the regular URL. Markdown responses send `X-Robots-Tag: noindex`. Add site-wide agent guidance with `markdown.instructions` in `docs.json`.
- Contextual menu: configured, not automatic. Add `contextual.options` to `docs.json`. `download-pdf` is Enterprise.
- Assistant (Pro and above): AI chat on the site; indexes published content only, not previews. Setup: `mint instructions publish assistant`.
- Pages not in navigation and `noindex: true` pages are excluded from MCP search and `llms.txt` unless `seo.indexing` is `"all"`.

Check warning on line 50 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L50

In general, use active voice instead of passive voice ('are excluded').

## Rules

- Never claim a deploy is done without loading the live URL.

Check warning on line 54 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L54

In general, use active voice instead of passive voice ('is done').
- Never push directly to a protected branch or overwrite an existing repo with starter content.
- Do not use `mint mcp` (not functional yet) or `mint index` (does not exist).
- `mint add-domain` changes the live project. Confirm the domain with the user first.
Expand All @@ -63,7 +63,7 @@
"contextual": {
"options": ["copy", "view", "chatgpt", "claude", "mcp", "cursor", "vscode"]
},
"markdown": { "instructions": "Prefer the TypeScript SDK in examples." }

Check warning on line 66 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L66

Use 'Markdown' instead of 'markdown'.
}
```

Expand All @@ -83,10 +83,10 @@
## More

- `mint instructions publish domain`: custom domains, subpaths, proxies, CSP
- `mint instructions publish repo`: monorepos, multi-repo, Git providers, export

Check warning on line 86 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L86

Did you really mean 'monorepos'?
- `mint instructions publish assistant`: the AI assistant, widget, Assistant.md, skills, narration, bring your own model
- `mint instructions publish analytics`: `mint analytics`, feedback, search data, analytics and consent integrations
- https://www.mintlify.com/docs/deploy/deployments
- https://www.mintlify.com/docs/customize/custom-domain
- https://www.mintlify.com/docs/ai/model-context-protocol

Check warning on line 91 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L91

Use 'AI' instead of 'ai'.
- https://www.mintlify.com/docs/ai/llmstxt

Check warning on line 92 in mint-instructions/publish.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish.mdx#L92

Use 'AI' instead of 'ai'.
2 changes: 1 addition & 1 deletion mint-instructions/publish/assistant.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
## Plans and cost

- Assistant, widget, narration, analytics: Pro or Enterprise. Starter has no AI features and cannot buy credits.
- Credits pool per organization: each Pro plan adds 10,000/month. Answer = 25 credits; "can't answer" = 0. Same price on site, widget, or API. Narration = 50 credits per generated page version; replays free.
- Credits pool per organization: each Pro plan adds 10,000/month. Pro and Enterprise can reserve part for one project with an **Allocation** (Billing page, **Usage** section). That project spends its allocation first, then the shared pool. Set it to 0 to remove it. Answer = 25 credits; "can't answer" = 0. Same price on site, widget, or API. Narration = 50 credits per generated page version; replays free.
- Overages ($0.01/credit) are off by default and set per project. With overages off and the balance spent, the assistant is unavailable until reset. Add-ons and alerts: **Usage** page (https://app.mintlify.com/settings/organization/usage).
- Enterprise only: assistant customization (pricing page) and bring your own model (per project).

Expand All @@ -28,17 +28,17 @@
- Deflection, **Link** mode: full `http`/`https` URL, no credentials. Mintlify appends `threadId` as a query parameter. No sales deflection in this mode.
- Search domains for web search: public, no JavaScript-rendered sites. Patterns: `example.com`, `docs.example.com`, `*.example.com`, `docs.example.com/api`.
- Up to three starter questions.
- Bot protection: **Assistant settings** (https://app.mintlify.com/products/assistant/settings) > **Bot Protection** > **Invisible Captcha**. Up to 10 minutes to apply. With custom CSP, allow `hcaptcha.com` and `*.hcaptcha.com`.

Check warning on line 31 in mint-instructions/publish/assistant.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish/assistant.mdx#L31

Use 'hCaptcha' instead of 'hcaptcha'.
4. Instructions for every answer (repo): write `.mintlify/Assistant.md` (`ASSISTANT.md` also accepted). It adds to the system prompt, never replaces defaults. Delete the file to remove.
5. Topic skills (repo): one `skill.md` per directory under `.mintlify/assistant/skills/<slug>/`. Redeploy after adding or changing.
6. Contextual menu entry: add `"assistant"` to `contextual.options` in `docs.json`.
7. Widget (another site or app): see Examples.
8. Narration: user opens **Site** settings (https://app.mintlify.com/settings/project/site), **Narration** section, enables **Page narration**.
9. Bring your own model: user selects the project, opens **API keys** (https://app.mintlify.com/settings/organization/api-keys), **AI model** section (only appears if the contract includes it), enables **Bring your own model**, picks provider (OpenRouter, Anthropic, OpenAI, Amazon Bedrock plus **Region**), **Assistant model**, optional **Agent model**, enters the key, clicks **Save**. Bedrock needs an Amazon Bedrock API key (no AWS access keys or IAM roles). Usage on that project bills to the provider, not credits. Disable to delete the key and return to defaults.

Check warning on line 37 in mint-instructions/publish/assistant.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish/assistant.mdx#L37

Use 'API' instead of 'api'.

## Rules

- Never put `Assistant.md` at the repo root: it would be served at `/assistant.md`. If it must live elsewhere, add it to `.mintignore`.

Check warning on line 41 in mint-instructions/publish/assistant.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish/assistant.mdx#L41

In general, use active voice instead of passive voice ('be served').
- Skill frontmatter needs `name` and `description`. The description decides when the skill loads, so state when it applies. Keep descriptions distinct.
- Skill directory slugs: lowercase letters, numbers, hyphens only. Duplicate slugs publish only one (warning in deployment log).
- Skills: truncated at about 6,000 tokens, max three per response, self-contained, prose and code (no screenshots). Delete `.mintlify/assistant/skills/` and redeploy to remove all.
Expand Down Expand Up @@ -81,7 +81,7 @@
}
```

Widget. The user enables it on https://app.mintlify.com/settings/project/widget, adds allowed origins, and copies the widget ID. Install code comes from the playground on that page (do not invent the loader URL). Then initialize; `id` is the only required option:

Check warning on line 84 in mint-instructions/publish/assistant.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish/assistant.mdx#L84

Use semicolons judiciously.
```js
await window.MintlifyAssistant.init({
id: "YOUR_WIDGET_ID",
Expand All @@ -93,7 +93,7 @@
void window.MintlifyAssistant.open({ source: "help-button", focus: true });
});
```
Other methods: `ask(question, options)`, `update(config)` (pass `null` to reset a field), `close()`, `reset()`, `destroy()`. `identity` takes a signed end-user token; omit for anonymous visitors. Widget `supportEmail` and `starterQuestions` do not inherit from the dashboard. CSP: `script-src` and `connect-src` `https://widget.mintlify.com`, `connect-src` `https://api.mintlify.com` and `https://ph.mintlify.com`, plus hCaptcha (`https://js.hcaptcha.com`, `https://*.hcaptcha.com`) when bot protection is on. Pass `nonce` for a strict `style-src`.

Check warning on line 96 in mint-instructions/publish/assistant.mdx

View check run for this annotation

Mintlify / Mintlify Validation (mintlify) - vale-spellcheck

mint-instructions/publish/assistant.mdx#L96

Use semicolons judiciously.

## Verify

Expand Down
Loading
Loading