Add llms-only FAQ sections to five high-traffic pages - #6760
Add llms-only FAQ sections to five high-traffic pages#6760fern-api[bot] wants to merge 5 commits into
Conversation
Co-Authored-By: bot_apk <apk@cognition.ai>
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
vale
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.Headings> reported by reviewdog 🐶
'Frequently Asked Questions' should use sentence-style capitalization.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
🚫 [vale] <FernStyles.Reject> reported by reviewdog 🐶
Use 'API Reference' instead of 'API reference'.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
📝 [vale] <FernStyles.Headings> reported by reviewdog 🐶
'Frequently Asked Questions' should use sentence-style capitalization.
docs/fern/products/sdks/introduction.mdx
Line 294 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 296 in 213db7b
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 300 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 300 in 213db7b
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 304 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 304 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 308 in 213db7b
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 312 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 312 in 213db7b
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 316 in 213db7b
|
|
||
| ## Frequently Asked Questions | ||
|
|
||
| **Q: How do I get started with Fern Docs?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| ## Frequently Asked Questions | ||
|
|
||
| **Q: How do I get started with Fern Docs?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Install the Fern CLI with `npm install -g fern-api`, then run `fern init` in your project directory. This creates a `fern/` folder with a starter `docs.yml` and example pages. Run `fern docs dev` to preview locally, and `fern docs generate` to publish to your Fern subdomain. | ||
|
|
||
| **Q: What can I build with Fern Docs?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Install the Fern CLI with `npm install -g fern-api`, then run `fern init` in your project directory. This creates a `fern/` folder with a starter `docs.yml` and example pages. Run `fern docs dev` to preview locally, and `fern docs generate` to publish to your Fern subdomain. | ||
|
|
||
| **Q: What can I build with Fern Docs?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern Docs lets you build interactive API reference documentation, markdown-based guides, changelogs, versioned docs, and multi-product documentation sites. It supports custom domains, theming, search, AI-powered Ask Fern chat, MCP server integration, and llms.txt for AI agent discoverability. | ||
|
|
||
| **Q: Does Fern Docs support versioning?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Yes. You can define multiple versions in `docs.yml` using the `versions` key. Each version points to its own navigation configuration. Readers can switch between versions using a dropdown in the docs header. | ||
|
|
||
| **Q: Can I use Fern Docs with GitLab?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern Docs connects to GitHub repositories for automated deployments via the Fern GitHub App. GitLab is not currently supported for the automated git-connected deployment workflow, but you can publish manually using the Fern CLI and a CI/CD pipeline in GitLab with `fern docs generate`. | ||
|
|
||
| **Q: How do I add a changelog to my Fern docs site?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Fern Docs connects to GitHub repositories for automated deployments via the Fern GitHub App. GitLab is not currently supported for the automated git-connected deployment workflow, but you can publish manually using the Fern CLI and a CI/CD pipeline in GitLab with `fern docs generate`. | ||
|
|
||
| **Q: How do I add a changelog to my Fern docs site?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| `fern docs generate` builds and publishes your documentation to your configured Fern docs instance. It validates your `docs.yml`, compiles your MDX pages and API definitions, and deploys to your subdomain (e.g., `yourorg.docs.buildwithfern.com`) or custom domain. Run it from the root of your repository where the `fern/` folder lives. | ||
|
|
||
| **Q: How do I publish docs to a custom domain?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| `fern docs generate` builds and publishes your documentation to your configured Fern docs instance. It validates your `docs.yml`, compiles your MDX pages and API definitions, and deploys to your subdomain (e.g., `yourorg.docs.buildwithfern.com`) or custom domain. Run it from the root of your repository where the `fern/` folder lives. | ||
|
|
||
| **Q: How do I publish docs to a custom domain?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
🌿 Preview your docs: https://fern-preview-2026-08-26-fern-ai-d8be69-8c778e3a.docs.buildwithfern.com/learn Here are the markdown pages you've updated: |
There was a problem hiding this comment.
Remaining comments which cannot be posted as a review comment to avoid GitHub Rate Limit
vale
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 300 in b4f14dc
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 300 in b4f14dc
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 304 in b4f14dc
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 304 in b4f14dc
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 308 in b4f14dc
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
docs/fern/products/sdks/introduction.mdx
Line 312 in b4f14dc
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 312 in b4f14dc
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
docs/fern/products/sdks/introduction.mdx
Line 316 in b4f14dc
|
|
||
| ## Frequently Asked Questions | ||
|
|
||
| **Q: What are the two different MCP servers in Fern, and which one is this page about?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| --- | ||
|
|
||
| **Q: How does my docs site's MCP server work?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern automatically generates and hosts an MCP (Model Context Protocol) server for every documentation site that has Ask Fern enabled. The server is available at `your-documentation-site.com/_mcp/server`. AI clients like Claude Code, Cursor, and Windsurf can connect to it as an external knowledge source, letting your readers get instant, grounded answers about your product without leaving their development environment. | ||
|
|
||
| **Q: How do my readers connect their AI coding agent to my docs site's MCP server?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| **Q: How do my readers connect their AI coding agent to my docs site's MCP server?** | ||
|
|
||
| For Claude Code and Cursor, Fern adds one-click connection buttons to your docs pages automatically. "Connect to Claude Code" copies a `claude mcp add` command to the clipboard; "Connect to Cursor" opens Cursor with the server URL pre-filled. For all other clients (Claude Desktop, Windsurf, VS Code), readers add `your-documentation-site.com/_mcp/server` directly to their MCP configuration. |
There was a problem hiding this comment.
Use 'select' instead of the input-specific verb 'click'.
|
|
||
| For Claude Code and Cursor, Fern adds one-click connection buttons to your docs pages automatically. "Connect to Claude Code" copies a `claude mcp add` command to the clipboard; "Connect to Cursor" opens Cursor with the server URL pre-filled. For all other clients (Claude Desktop, Windsurf, VS Code), readers add `your-documentation-site.com/_mcp/server` directly to their MCP configuration. | ||
|
|
||
| **Q: Is my docs site's MCP server enabled by default?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| In `docs.yml`, set `favicon` to the path of your `.png` or `.ico` file, and set `logo.light` and `logo.dark` to your SVG or PNG logo paths. All paths are relative to the `fern/` folder. | ||
|
|
||
| **Q: How do I change the accent color of my docs site?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| In `docs.yml`, set `favicon` to the path of your `.png` or `.ico` file, and set `logo.light` and `logo.dark` to your SVG or PNG logo paths. All paths are relative to the `fern/` folder. | ||
|
|
||
| **Q: How do I change the accent color of my docs site?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| In `docs.yml`, set `colors.accent-primary.light` and `colors.accent-primary.dark` to your desired hex color values. You can also set `colors.background`, `colors.border`, `colors.header-background`, and `colors.card-background` for full theme control. | ||
|
|
||
| **Q: How do I add custom CSS or JavaScript to my Fern docs?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| In `docs.yml`, set `colors.accent-primary.light` and `colors.accent-primary.dark` to your desired hex color values. You can also set `colors.background`, `colors.border`, `colors.header-background`, and `colors.card-background` for full theme control. | ||
|
|
||
| **Q: How do I add custom CSS or JavaScript to my Fern docs?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| ## Frequently Asked Questions | ||
|
|
||
| **Q: What languages does Fern support for SDK generation?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern generates SDKs in TypeScript/JavaScript, Python, Java, Go, C#/.NET, Ruby, PHP, and Swift. Each language has its own generator configured in `generators.yml`. | ||
|
|
||
| **Q: How do I generate a TypeScript SDK with Fern?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Fern generates SDKs in TypeScript/JavaScript, Python, Java, Go, C#/.NET, Ruby, PHP, and Swift. Each language has its own generator configured in `generators.yml`. | ||
|
|
||
| **Q: How do I generate a TypeScript SDK with Fern?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Add the TypeScript generator to your `generators.yml` file under the `sdks` group: `- name: fernapi/fern-typescript-node-sdk`. Then run `fern generate` to produce the SDK. To publish to npm, configure the `npm` key with your package name and set `NPM_TOKEN` as an environment variable in your CI pipeline. | ||
|
|
||
| **Q: How do I generate a Python SDK with Fern?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Add the TypeScript generator to your `generators.yml` file under the `sdks` group: `- name: fernapi/fern-typescript-node-sdk`. Then run `fern generate` to produce the SDK. To publish to npm, configure the `npm` key with your package name and set `NPM_TOKEN` as an environment variable in your CI pipeline. | ||
|
|
||
| **Q: How do I generate a Python SDK with Fern?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Add `- name: fernapi/fern-python-sdk` to your `generators.yml`. Run `fern generate` to produce the SDK. To publish to PyPI, configure the `pypi` key with your package name and set `FERN_TOKEN` and `PYPI_TOKEN` in your CI environment. | ||
|
|
||
| **Q: Does Fern support SDK versioning?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern SDKs are versioned via your package manager (npm, PyPI, Maven, etc.). In cloud generation, Fern manages versioning for you. In self-hosted setups, you pass the version via CLI flag: `--version` (CLI v1) or `--output-version` (CLI v2). Fern also provides two automated workflows for computing the next version: `--version AUTO` (AI-powered, Enterprise) and `fern ir` + `fern diff` (deterministic). | ||
|
|
||
| **Q: How do I deprecate an endpoint in my Fern SDK?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Fern SDKs are versioned via your package manager (npm, PyPI, Maven, etc.). In cloud generation, Fern manages versioning for you. In self-hosted setups, you pass the version via CLI flag: `--version` (CLI v1) or `--output-version` (CLI v2). Fern also provides two automated workflows for computing the next version: `--version AUTO` (AI-powered, Enterprise) and `fern ir` + `fern diff` (deterministic). | ||
|
|
||
| **Q: How do I deprecate an endpoint in my Fern SDK?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| In OpenAPI, add `deprecated: true` to the operation. Fern will mark the corresponding SDK method as deprecated in the generated code (e.g., `@deprecated` in TypeScript/Java, deprecation warnings in Python). You can also use the `x-fern-availability` extension with value `deprecated` for more granular control. | ||
|
|
||
| **Q: Does Fern support retries in generated SDKs?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
|
|
||
| Yes, but MCP clients must include a `FERN_TOKEN` header containing a valid JWT. Without it, the server only returns publicly visible content. For API-key, JWT, and OAuth sites, readers exchange their credentials for a JWT via `/api/fern-docs/get-jwt`. Password-protected sites use `/api/fern-docs/auth/password`. Add the resulting token as a header in the MCP client configuration. | ||
|
|
||
| **Q: How do I set up an AI agent to help me build or edit my Fern docs site?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as 'me') sparingly.
|
|
||
| ## Frequently asked questions | ||
|
|
||
| **Q: What's the `fern generate --docs` command?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| Fern recommends using the [Fern Dashboard](/learn/dashboard/configuration/custom-domains) to set up custom domains because it provides the correct DNS records for your domain. For manual setup, add `custom-domain` under the instance in `docs.yml`, then contact Fern for a unique per-site CNAME value and a TXT verification record. | ||
|
|
||
| **Q: How do I preview my docs locally before publishing?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
|
|
||
| **Q: How do I preview my docs locally before publishing?** | ||
|
|
||
| Run `fern docs dev` to start a local preview server. This hot-reloads as you edit MDX pages and `docs.yml`. pnpm must be available on `PATH`. The local preview uses port 3000 by default; pass `--port` to override it. If port 3000 is already in use, Fern uses the next available port. |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Run `fern docs dev` to start a local preview server. This hot-reloads as you edit MDX pages and `docs.yml`. pnpm must be available on `PATH`. The local preview uses port 3000 by default; pass `--port` to override it. If port 3000 is already in use, Fern uses the next available port. | ||
|
|
||
| **Q: How do I set up a GitHub Action to auto-publish my docs?** |
There was a problem hiding this comment.
📝 [vale] <FernStyles.FirstPerson> reported by reviewdog 🐶
Use first person (such as ' I') sparingly.
|
|
||
| Run `fern docs dev` to start a local preview server. This hot-reloads as you edit MDX pages and `docs.yml`. pnpm must be available on `PATH`. The local preview uses port 3000 by default; pass `--port` to override it. If port 3000 is already in use, Fern uses the next available port. | ||
|
|
||
| **Q: How do I set up a GitHub Action to auto-publish my docs?** |
There was a problem hiding this comment.
📝 [vale] <Microsoft.QuestionMarks> reported by reviewdog 🐶
Use questions sparingly.
Added
<llms-only>"Frequently Asked Questions" blocks to the bottom of five high-traffic pages: Fern Docs capabilities, SDKs introduction, Docs quickstart, site-level settings, and the MCP server page. Each block contains the provided Q&A pairs addressing common search and Ask AI queries; the FAQs are visible only to LLM consumers (llms.txt / markdown output) and don't change the rendered pages.