站点级设置
站点级设置
在 docs.yml 中自定义颜色、字体、Logo、布局、导航栏链接和分析配置
docs.yml 文件是您自定义文档站点颜色、字体、布局、分析等内容的主要工具。在考虑 自定义 CSS 和 JavaScript 来满足高级需求之前,大多数自定义需求都可以从这里开始。
YAML Schema 校验
如需在编辑器中启用智能 YAML 校验和自动补全,请在 docs.yml 文件顶部添加以下这一行:
这将基于 Fern 的完整 schema 提供实时校验和自动补全。
核心配置
每个 Fern 文档网站都需要一个 docs.yml 文件,其中包含核心配置项。以下是您可以配置的关键顶层属性:
title
用作标签栏标题的字符串。
logo
为您的站点设置自定义 Logo。了解更多请参阅 logo 配置。
favicon
favicon 的相对路径。路径相对于设置该字段的 YAML 文件(例如 docs.yml)。
colors
配置 primaryAccent 和 background 颜色。了解更多请参阅 colors 配置。
redirects
一个路径数组,配置后这些路径会永久重定向到其他路径。了解更多请参阅
redirects 配置。
navbar-links
作为操作号召(CTA)显示的链接的名称和 URL 数组。了解更多请参阅
navbar-links 配置。
background-image
设置在每个页面背后显示的自定义背景图片。了解更多请参阅
background-image 配置。
typography
自定义文档站点中使用的字体。了解更多请参阅 typography 配置。
layout
自定义文档站点的布局。了解更多请参阅
layout 配置。
settings
自定义文档站点的设置。了解更多请参阅
settings 配置。
landing-page
为您的文档站点创建一个落地页。了解更多请参阅
landing-page 配置。
default-language
设置 API Reference 中代码片段默认显示的语言。
可选项包括:typescript、python、java、go、ruby、csharp、php、swift、curl
metadata
为您的文档站点配置 SEO 元数据。了解更多请参阅
metadata 配置。
global-theme
应用于本站点的全局主题 名称。发布时,CLI 会从 Fern 注册表中拉取指定主题,并将其品牌字段(Logo、颜色、字体、布局、CSS、JS 等)合并到本地的 docs.yml。使用此功能可在多个文档站点之间共享一致的视觉风格。
header
自定义 React 组件文件(TSX 或 JSX)的路径,用于替换 Fern 默认的页头。该组件必须有一个默认导出。了解更多请参阅自定义页头和页脚组件。
footer
自定义 React 组件文件(TSX 或 JSX)的路径,用于替换 Fern 默认的页脚。该组件必须有一个默认导出。了解更多请参阅自定义页头和页脚组件。
Instances 配置
instance 是一个独立文档网站的后端。每个 instance 使用 --instance 标志发布到一个唯一的域名。最常见的用法是使用 instances 配置发布到不同 URL 的预发布和生产文档。
instances
配置一个或多个文档网站。
instances.url
您的 Fern 文档发布的 URL。必须包含 docs.buildwithfern.com 后缀。
instances.custom-domain
托管文档的自定义域名。了解更多请参阅设置自定义域名。
instances.edit-this-page
如果指定,会在每个页面底部添加”编辑此页面”链接,指向给定的公开 GitHub 仓库。您可以选择性地设置 launch 目标,以控制链接的跳转方式。了解更多请参阅 edit-this-page 配置。
instances.audiences
指定本 instance 面向哪些受众(例如内部开发者、Beta 测试者、公开客户)。
您可以使用受众来控制哪些版本和产品出现在每个文档 instance 中,从而为不同用户群体创建独立的站点。当内容的 audience 标签与 instance 的 audience 匹配时,该内容会被包含在内;未设置 audience 标签的内容默认会被包含。了解更多请参阅为 products 和/或 versions 配置 instance audiences。
Colors 配置
为浅色和深色模式分别配置文档的调色板。仅 accent-primary 是必填项——其他颜色都有合理的默认值。这些颜色还会自动作为 CSS 自定义属性 在您的自定义样式表中可用。
accent-primary
用于交互元素(如链接、按钮和高亮文本)的主要品牌色。请为浅色和深色模式分别配置颜色,以确保合适的对比度和可读性。
background
所有文档页面的主背景色。选择与文本对比良好的颜色,并与您的品牌颜色相协调。深色模式的颜色应能减轻眼部疲劳。
border
用于分隔线、元素边框和视觉分隔。请选择能清晰划分边界但不过于醒目的细腻颜色。
sidebar-background
导航侧边栏的背景色。指定时,会在右侧添加 1 像素的边框。如果省略,侧边栏将使用透明背景且不带边框。
header-background
顶部导航头部的背景色。指定时,会在底部添加 1 像素的实线边框。如果省略,头部将使用带有微妙渐变边框的透明背景。
card-background
卡片、代码块及其他容器元素的背景色。应与主背景色略有差异,以营造视觉层次感同时保持可读性。
Logo 配置
配置站点 Logo,可分别为浅色和深色模式设置不同的图片,并可设置点击跳转链接和可选的显示文本。
logo.href
用户点击 Logo 时跳转到的 URL。通常是您公司的主页或应用。
logo.dark
深色模式 Logo 文件的路径,相对于设置该字段的 YAML 文件(例如 docs.yml)。建议使用 SVG 格式以获得最佳质量。示例:assets/images/logo-dark.svg
logo.light
浅色模式 Logo 文件的路径,相对于设置该字段的 YAML 文件(例如 docs.yml)。建议使用 SVG 格式以获得最佳质量。示例:assets/images/logo-light.svg
logo.right-text
显示在 Logo 图片右侧的文本。可用于在 Logo 旁添加诸如 “Docs” 或 “API” 之类的标签。
logo.height
Logo 的自定义高度(像素)。如果默认高度不符合您的设计,可使用此项调整 Logo 大小。
Redirects 配置
The redirects object allows you to redirect traffic from one path to another. You can redirect exact paths or use dynamic patterns with regex parameters like :slug to handle bulk redirects. You can redirect to internal paths within your site or external URLs.
If your docs are hosted on a subpath (like buildwithfern.com/learn), include the subpath in both the source and destination paths.
Parameters suffixed with an asterisk (*) match zero or more path segments, capturing everything that follows in the URL. Use this when redirecting entire folder structures while preserving nested paths.
The relative path you want to redirect from (e.g., /old-path). Must be a relative path, not an absolute URL. Must not include search parameters (e.g., ?key=value).
The path you want to route to. Can be an internal path (/new-path) or an external URL (https://example.com). External URLs must include the full address, including https.
By default, uses the 308 status code to instructs clients and search engines to cache the redirect forever. Set to false only if you need a temporary redirect using the 307 status code, which won’t be cached.
Best practices
For optimal site performance, only add redirects when necessary. Avoid using redirects for behavior that Fern already handles automatically, such as 404 handling and version routing.
404 handling
Don’t create redirects to send broken links to your homepage:
Instead, enable automatic homepage redirects in your docs.yml to send broken links to your homepage rather than showing a 404 page:
Versioning and redirects
If you have versions configured, your default version uses unversioned paths (/docs/getting-started), while other versions use versioned paths (/docs/getting-started/v2). Fern automatically handles version routing by redirecting broken versioned links to the default version and managing canonical URLs.
Avoid redirecting from unversioned to versioned URLs:
Manually overriding the default versioning behavior can lead to unexpected redirect patterns.
If you frequently need to redirect from the default version to another version, consider changing which version is set as default in your versions configuration.
导航栏链接配置
为文档站点的顶部导航栏添加导航链接和按钮。
type
取值为 outlined、minimal、filled、github 或 dropdown 之一。该值控制按钮的样式。
href
点击按钮后跳转的 URL。示例:https://buildwithfern.com/contact
value
指向 GitHub 仓库的 URL。与 href 类似,但专用于 GitHub 仓库链接。当 type 设为 github 时使用此字段。示例:https://github.com/example-company/fern
text
按钮内显示的文本。
rounded
当为 true 时,按钮边角将完全圆角化。
icon
按钮中使用的图标。该图标会出现在文本内容的左侧。
Icons can be in three formats:
- Font Awesome icons: Use icon names like
fa-solid fa-rocket. Pro and Brand Icons from Font Awesome are supported. - Custom image files: Use relative paths to image files (e.g.,
./assets/icons/my-icon.svgor../assets/icons/my-icon.png). Paths are relative to the YAML file where the icon is referenced (e.g.,docs.yml). For example, if you set an icon infern/products/my-product.yml, the path./assets/icon.svgresolves tofern/products/assets/icon.svg. If you set it infern/docs.yml, the same path resolves tofern/assets/icon.svg. - Inline SVG: Provide an SVG string wrapped in quotes (e.g.,
"<svg>...</svg>").
rightIcon
按钮中使用的图标。该图标会出现在文本内容的右侧。
Icons can be in three formats:
- Font Awesome icons: Use icon names like
fa-solid fa-rocket. Pro and Brand Icons from Font Awesome are supported. - Custom image files: Use relative paths to image files (e.g.,
./assets/icons/my-icon.svgor../assets/icons/my-icon.png). Paths are relative to the YAML file where the icon is referenced (e.g.,docs.yml). For example, if you set an icon infern/products/my-product.yml, the path./assets/icon.svgresolves tofern/products/assets/icon.svg. If you set it infern/docs.yml, the same path resolves tofern/assets/icon.svg. - Inline SVG: Provide an SVG string wrapped in quotes (e.g.,
"<svg>...</svg>").
默认情况下,filled 按钮的 rightIcon 会被设置为 arrow-right。
target
指定在哪里打开链接的 URL。对于典型的文档站点,链接可以在同一标签页(_self)或新标签页(_blank)中打开。对于嵌入在仪表板或 iframe 中的文档,链接可以在父框架(_parent)或最顶层框架(_top)中打开。
links
当 type 设为 dropdown 时,下拉菜单中显示的项。
links.text
链接显示的文本。
links.href
链接指向的 URL。
links.icon
显示在文本左侧的 Font Awesome 图标。
links.rightIcon
显示在文本右侧的 Font Awesome 图标
links.rounded
当为 true 时,链接将具有完全圆角的边框。
links.target
指定在哪里打开链接的 URL。
页脚链接配置
为文档站点的页脚添加可点击的社交媒体和社区链接,以提升发现度和用户参与度。
页脚链接为您的社交渠道提供视觉化导航。要在页面级或站点级配置 SEO 元数据和社交媒体标签,请参阅元数据配置。
footer-links.github
您的 GitHub 仓库或组织的 URL。
footer-links.slack
您的 Slack 社区或工作区的 URL。
footer-links.x
您的 X(前 Twitter)个人主页 URL。
footer-links.twitter
您的 Twitter 个人主页 URL。如使用新的 X 品牌,请改用 footer-links.x。
footer-links.linkedin
您的 LinkedIn 公司主页或个人资料的 URL。
footer-links.youtube
您的 YouTube 频道 URL。
footer-links.instagram
您的 Instagram 主页 URL。
footer-links.facebook
您的 Facebook 主页 URL。
footer-links.discord
您的 Discord 服务器邀请 URL。
footer-links.hackernews
您的 Hacker News 个人主页 URL。
footer-links.medium
您的 Medium 出版物或个人主页的 URL。
footer-links.website
您的主网站或主页的 URL。
背景图片配置
设置在文档站点每个页面背后显示的自定义背景图片。
background-image.light
浅色模式背景图片的相对路径。路径相对于设置该字段的 YAML 文件(例如 docs.yml)。
background-image.dark
深色模式背景图片的相对路径。路径相对于设置该字段的 YAML 文件(例如 docs.yml)。
字体配置
自定义文档站点中正文、标题和代码块所使用的字体。
typography.bodyFont
用于所有正文内容(包括段落、列表和一般文本)的字体。为获得最佳性能,请使用 WOFF2 格式。
typography.headingsFont
用于标题及其他突出文本元素的字体。如果您希望视觉风格统一,可以使用与正文字体相同的字体。支持为不同标题级别配置多种字重。
typography.codeFont
用于代码块和行内代码的字体。建议使用等宽字体以提高代码可读性。常用选择包括 JetBrains Mono、Fira Code 和 Source Code Pro。
字体细节配置
Single Weight
Variable Font
Multiple Files
name
字体名称。默认为自动生成的名称,用于在最终注入的 CSS 中引用您的自定义字体。
path
字体文件的路径,相对于设置该字段的 YAML 文件(例如 docs.yml)。当您只有一个字体文件时使用此项。对于多个字体文件(例如分别的 bold、italic 等),请改用 paths。
weight
字体的字重。可以是数字(400、700),或可变字体的范围(400 700)。常用值:400(normal)、700(bold)。
style
字体样式,可选 “normal” 或 “italic”。如未指定,默认为 “normal”。
paths
针对特定字重的字体文件列表。列表中的每个元素都包含 path、weight 和 style 属性。
布局配置
控制头部、侧边栏、内容区域和搜索栏等结构元素的尺寸和位置。
layout.header-height
设置头部的高度。默认为 4rem(64px)。可选值为 {number}rem 或 {number}px。
layout.page-width
设置文档布局的最大宽度,包括侧边栏和内容。默认为 88rem(1408px)。可选值为 {number}rem、{number}px 或 full。
layout.content-width
设置 Markdown 文章内容的最大宽度。默认为 44rem(704px)。可选值为 {number}rem 或 {number}px。
layout.sidebar-width
设置桌面模式下侧边栏的宽度。默认为 18rem(288px)。可选值为 {number}rem 或 {number}px。
layout.searchbar-placement
设置搜索栏的位置。可选值为 header、sidebar 或 header-tabs(将搜索栏放在头部,但位于标签栏所在行)。
disable-header 设为 true 时,此设置将被忽略。layout.tabs-placement
设置标签页的位置。可选值为 header 或 sidebar。
disable-header 设为 true 时,此设置将被忽略。layout.switcher-placement
设置产品切换器和版本切换器的位置。可选值为 header 或 sidebar。
disable-header 设为 true 时,此设置将被忽略。layout.content-alignment
设置 Markdown 内容的对齐方式。可选值为 center 或 left。默认为 center。
layout.disable-header
设为 true 时不会渲染头部。Logo 将作为侧边栏的一部分渲染,并由 1 像素边框将侧边栏与内容分隔开。
layout.hide-nav-links
设为 true 时不会渲染页面底部的导航链接(上一页/下一页)。可通过 frontmatter 在单个页面上覆盖此设置。
layout.hide-feedback
设为 true 时不会渲染反馈表单。可通过 frontmatter 在单个页面上覆盖此设置。
layout.mobile-toc
设为 true 时,在移动端和平板端视口(xl 断点以下)头部下方显示一个固定的目录栏。该栏会显示滚动进度指示器和当前所在标题,点击后可展开为完整的目录。
仅适用于使用 guide 和 overview 布局 的页面。当页面少于两个标题,或在 页面 frontmatter 中设置了 hide-toc: true 时,该目录栏会被隐藏。
主题配置
自定义文档站点中特定 UI 元素的视觉样式。
theme.sidebar
设置导航侧边栏的视觉样式。default 显示带有分组标题和图标的完整侧边栏;minimal 显示更简洁、不含装饰性元素的简化侧边栏。
theme.body
设置主内容区的视觉样式。default 使用平铺背景;canvas 在内容区域周围添加微妙的卡片式容器。
theme.tabs
配置导航标签页。接受字符串(default 或 bubble)作为仅样式配置,或接受带有 style、alignment 和 placement 属性的对象进行完整控制。
当设置为字符串时,default 使用下划线样式的标签页,bubble 显示带圆角药丸状背景的标签页。
theme.tabs.style
设置导航标签页的视觉样式。default 使用下划线样式;bubble 显示带圆角药丸状背景的标签页。
theme.tabs.alignment
当 placement 为 header 时,设置标签页的水平对齐方式。left 表示左对齐;center 表示水平居中。当 placement 为 sidebar 时,对齐方式无效。
theme.tabs.placement
设置标签页的位置。header 表示在顶部导航头部显示标签页;sidebar 表示在左侧边栏显示。
当同时设置时,此项优先于 layout.tabs-placement。当 layout.disable-header 为 true 时,此设置将被忽略。
theme.page-actions
设置页面操作按钮的视觉样式。default 显示独立的图标按钮;toolbar 将这些操作合并为一个紧凑的水平工具栏。
theme.footer-nav
设置页脚导航链接的视觉样式。default 显示带有标题和说明的完整上一页/下一页卡片;minimal 显示简单的文字链接。
theme.product-switcher
设置 产品切换器 的视觉样式。default 显示下拉选择器;toggle 显示水平切换条。
Settings 配置
配置站点范围的行为,例如搜索、代码显示、404 处理和环境变量替换。
settings.search-text
搜索栏中显示的文本。
settings.disable-search
设为 true 时将禁用搜索栏。如果您想使用自定义搜索方案,请设为 true。
settings.disable-explorer-proxy
设为 true 时,API Explorer 会绕过代理直接将请求发送到您的 API。
启用此功能时,您的 API 必须启用跨源资源共享(CORS),以允许来自文档域名的请求。
settings.dark-mode-code
设为 true 时,无论当前选择的主题如何,代码块都将以深色模式显示。
settings.default-search-filters
控制搜索结果是否默认限定为用户当前的产品和版本。
设为 false(默认)时,搜索会跨所有产品和版本返回结果。设为 true 时,搜索 UI 会自动筛选结果以匹配用户当前浏览的产品和版本。用户可以在搜索 UI 中移除这些筛选条件以扩大搜索范围。
settings.http-snippets
控制 API Reference 中的 HTTP 代码片段 的显示。默认情况下所有语言的 HTTP 代码片段都会启用。
- 设为
false可完全禁用 HTTP 代码片段 - 提供语言列表,仅为特定语言启用代码片段
settings.hide-404-page
设为 true 时,用户导航到不存在的页面时将被重定向到首页。
默认情况下会显示 404 页面。
settings.use-javascript-as-typescript
设为 true 时,API Reference 中的 TypeScript 代码片段将以 JavaScript 代码片段的形式显示。
settings.disable-analytics
设为 true 时,将禁用 analytics 配置 中配置的所有分析集成。包括 Google Analytics 4、Google Tag Manager、PostHog 以及您配置的任何其他分析服务商。
settings.folder-title-source
设置所有 文件夹导航 中页面和分组标题的默认派生方式。默认(filename)从文件名派生标题。设为 frontmatter 时改用每个文件 frontmatter 中的 title 字段(如未设置则回退到文件名)。每个文件夹可使用文件夹级 title-source 设置覆盖此全局默认值。
settings.substitute-env-vars
设为 true 时,会在构建时将 ${ENV_VAR} 表达式替换为对应环境变量的值。可用于在文档中注入 API 密钥、基础 URL 或版本号。
替换适用于 Markdown/MDX 文件和 API 规范(OpenAPI、Fern definitions)。JavaScript 文件已被排除,以避免与模板字符串冲突。
要输出字面意义的 ${VAR},请将其转义为 \$\{VAR\}。
在本地预览(fern docs dev)期间,未定义的变量会解析为空字符串。在发布期间,未定义的变量会导致构建失败。
页面操作配置
配置在文档中显示的页面操作按钮。默认启用 复制页面(copy-page)、以 Markdown 格式查看(view-as-markdown)、询问 AI(ask-ai)、ChatGPT(chatgpt)、Claude(claude)、Claude Code(claude-code)和 Cursor(cursor)。
如需在单个页面上隐藏页面操作,请使用 hide-page-actions frontmatter 属性。
page-actions.default
默认显示的页面操作。可选值:copy-page、view-as-markdown、ask-ai、chatgpt、claude、claude-code、cursor、vscode。
page-actions.options.copy-page
启用时会显示一个按钮,允许用户将整个页面内容复制到剪贴板,便于分享或参考。如需控制复制输出中包含哪些内容,请使用 <llms-ignore> 标签。
page-actions.options.view-as-markdown
启用时会显示一个按钮,允许用户查看当前页面的原始 Markdown 源代码。用户也可以在页面 URL 后追加 .md 来查看 Markdown。如需控制 Markdown 输出中包含哪些内容,请使用 <llms-ignore> 标签。
page-actions.options.ask-ai
启用时会显示一个”Ask AI”按钮,允许用户使用 AI 助手就页面内容进行提问。
page-actions.options.chatgpt
控制”Open in ChatGPT”按钮,该按钮会将页面内容发送给 ChatGPT 以便进一步探索和问答。设为 false 可隐藏该按钮。
page-actions.options.claude
控制”Open in Claude”按钮,该按钮会将页面内容发送给 Claude 以便进一步探索和问答。设为 false 可隐藏该按钮。
page-actions.options.claude-code
page-actions.options.cursor
page-actions.options.vscode
启用时会显示一个”Open in VS Code”按钮,允许用户在 Visual Studio Code 中打开页面内容进行编辑和开发。需启用 Ask Fern。
自定义页面操作
使用您自己的标题、图标和 URL 定义自定义页面操作按钮。自定义操作会与内置页面操作一起显示,可链接到外部工具、编辑器或任意 URL。
page-actions.options.custom
自定义页面操作配置数组。每个自定义操作会作为按钮显示在页面操作菜单中。
page-actions.options.custom[].title
自定义操作按钮显示的标题。
page-actions.options.custom[].subtitle
可选的辅助说明文本,显示在操作菜单中标题下方。
page-actions.options.custom[].url
点击该操作时跳转的 URL。支持以下占位符:
{slug}:当前页面的 slug(例如getting-started/quickstart){domain}:当前域名(例如docs.example.com){url}:当前页面的完整 URL(例如https://docs.example.com/getting-started/quickstart)
page-actions.options.custom[].icon
自定义操作显示的图标。
Icons can be in three formats:
- Font Awesome icons: Use icon names like
fa-solid fa-rocket. Pro and Brand Icons from Font Awesome are supported. - Custom image files: Use relative paths to image files (e.g.,
./assets/icons/my-icon.svgor../assets/icons/my-icon.png). Paths are relative to the YAML file where the icon is referenced (e.g.,docs.yml). For example, if you set an icon infern/products/my-product.yml, the path./assets/icon.svgresolves tofern/products/assets/icon.svg. If you set it infern/docs.yml, the same path resolves tofern/assets/icon.svg. - Inline SVG: Provide an SVG string wrapped in quotes (e.g.,
"<svg>...</svg>").
page-actions.options.custom[].default
设为 true 时,此自定义操作将成为在页面操作区域突出显示的默认操作。
如果您在某个自定义操作上设置了 default: true,请不要同时设置 page-actions.default,以免冲突。
“编辑此页面” 配置
在每个文档页面底部添加”编辑此页面”链接,方便读者提出修改建议。可在 docs.yml 文件中按 instance 进行配置。
单个 Instance
多个 Instances
使用 launch: github 时,GitHub 仓库必须是 公开 的,“编辑此页面”链接才能正常工作。使用 launch: dashboard 时,无论仓库的可见性如何,具有编辑器访问权限的用户都可以通过 Fern Editor 进行编辑。
github.owner
拥有该文档仓库的 GitHub 组织。
github.repo
包含您 fern 文件夹的 GitHub 仓库名称。
github.branch
您希望 GitHub 编辑器提交 PR 到的仓库分支。默认为 main。
launch
控制 “编辑此页面”按钮 的行为。设为 dashboard 时,点击按钮会打开一个界面,用户可以选择为该页面启动 Fern Editor 会话,或直接跳转到 GitHub 上的源文件(最适合内部站点)。默认为 github,即直接链接到 GitHub 上的文件(最适合面向公众的站点)。
落地页配置
设置一个专门的落地页,作为文档站点的入口。
page
落地页的名称。
目标落地页 Markdown 文件的相对路径。路径相对于设置该字段的 YAML 文件(例如 docs.yml)。
slug
落地页的 slug。默认使用页面名称。
也可以在落地页 Markdown 文件的 frontmatter 中覆盖该 slug。
SEO 元数据配置
配置站点范围的 Open Graph 和 Twitter Card 元数据,控制您的文档在社交媒体预览和搜索结果中的呈现方式。
需要为单个页面设置元数据?
Open Graph 标签中显示的网站名称。
社交媒体预览中显示的标题。
社交媒体预览中显示的描述。
您文档的规范 URL。
社交媒体预览中显示的图片。推荐尺寸为 1200x630 像素。
Open Graph 图片的宽度(像素)。
Open Graph 图片的高度(像素)。
您内容的 locale(例如 “en_US”)。
您公司 Logo 的 URL。
Twitter Card 预览中显示的标题。
Twitter Card 预览中显示的描述。
您公司的 Twitter 用户名。
Twitter Card 预览中显示的图片。
您网站的 Twitter 用户名。
Twitter Card 类型。可选值:summary、summary_large_image、app 或 player。
设为 true 时,对未设置自定义 og:image 的页面启用动态 OG 图像生成。
动态生成的 OG 图像所使用的自定义背景图。可以是 URL 或相对文件路径。相对路径相对于设置该字段的 YAML 文件(例如 docs.yml)解析。
您文档站点的主机名。将用于设置元数据标签和站点地图等文档的规范 URL。
默认使用 instances 配置中定义的 URL。
分析配置
集成第三方分析服务,以追踪文档站点的使用情况。
analytics.ga4.measurement-id
您的 Google Analytics 4 measurement ID。必须以 “G-” 开头。
analytics.gtm.container-id
您的 Google Tag Manager container ID。必须以 “GTM-” 开头。
analytics.posthog
PostHog Analytics 集成的配置。
analytics.posthog.api-key
您的 PostHog 项目 API 密钥。默认使用 api-host “https://us.i.posthog.com”。
集成配置
配置需要在文档站点上托管验证文件的第三方集成。
integrations.context7
指向 Context7 验证文件的相对路径。设置后,Fern 会将该文件托管在您文档站点的 /context7.json 路径上。了解更多请参阅 Context7 集成。
Ask Fern 配置
指定 Ask Fern 的显示位置和可访问内容。
ai-search.datasources
Ask Fern 应索引和搜索的其他内容源。更多详情请参阅 其他内容源。
datasources.url
要索引的网站 URL。Ask Fern 将抓取并索引该 URL 的内容。
datasources.title
此数据源的可选显示名称。当 Ask Fern 引用该数据源的内容时,显示名称可帮助用户了解信息的来源。
ai-search.system-prompt
默认情况下,Ask Fern 使用系统提示对 AI 搜索结果进行微调。可添加自定义 prompt 进行覆盖。
灵感和示例请参阅 Anthropic 的 提示工程指南。
Agents 配置
为供 AI 代理使用 配置指令和自定义文件。默认情况下,Fern 会自动生成 llms.txt 和 llms-full.txt,并在向 AI 代理提供的每个页面前添加一条指令。使用 agents 键可以自定义此行为:
agents.page-directive
当向 AI 代理提供页面的 Markdown 输出时,添加在每个页面前面的文本。该指令会注入到 frontmatter 元数据段之后、页面正文之前。面向人类的文档不受影响。未设置时使用默认指令,将代理指向您站点的 .md URL、llms.txt 和 llms-full.txt。设为空字符串可完全禁用该指令。
agents.page-description-source
控制在 llms.txt 中优先使用哪个 frontmatter 字段作为页面的一行描述。默认为 description。如果首选字段在页面 frontmatter 中不存在,Fern 会回退到其他字段(description、subtitle、og:description、headline、excerpt)。
agents.llms-txt
自定义 llms.txt 文件的路径,相对于 docs.yml。设置后,该文件会在站点根级别的 /llms.txt 端点提供,替代自动生成的版本。嵌套路径仍使用自动生成的输出。
agents.llms-full-txt
自定义 llms-full.txt 文件的路径,相对于 docs.yml。设置后,该文件会在站点根级别的 /llms-full.txt 端点提供,替代自动生成的版本。嵌套路径仍使用自动生成的输出。
AI 示例配置
为您的 API Reference 页面配置 AI 生成的示例。
ai-examples.enabled
控制 API Reference 页面的 AI 生成示例。启用时,会生成贴近实际的示例值,替代 "string" 之类的占位值。x-fern-examples 或 OpenAPI example 属性中的手动示例始终优先。设为 false 可完全禁用 AI 示例。
ai-examples.style
用于指导 API Reference 中 AI 生成示例的内容和风格的说明。可用此项让示例符合您的品牌或领域风格。最多 500 个字符。
Check 配置
配置 fern check 运行的校验规则的严重级别。每条规则可设置为 "warn"(非阻塞)或 "error"(阻塞)。
check.rules.broken-links
失效链接检测的严重级别。对失效的内部链接默认为 error,对格式错误的 URL 默认为 warn。替代已弃用的 --broken-links 和 --strict-broken-links CLI 标志。
check.rules.example-validation
OpenAPI 示例校验的严重级别。
check.rules.no-non-component-refs
非组件 OpenAPI 引用校验的严重级别。会标记指向 OpenAPI 规范 #/components 段以外位置的 $ref 值。
check.rules.valid-local-references
本地 OpenAPI 引用校验的严重级别。检查本地 $ref 值是否指向已存在的定义。
check.rules.no-circular-redirects
循环重定向校验的严重级别。检测重定向链路是否回到先前访问过的路径。
check.rules.valid-docs-endpoints
文档端点 URL 校验的严重级别。检查 docs.yml 中引用的端点 URL 是否格式正确。
check.rules.missing-redirects
缺失重定向检测的严重级别。将当前文档导航与之前发布的状态进行对比,标记被删除或移动到新 URL 但未在 docs.yml 中配置 redirect 的页面。需要进行身份验证(fern login 或 FERN_TOKEN 环境变量)。在首次发布、未登录或网络不可用时会跳过此检查。
实验性功能配置
在 docs.yml 的 experimental 段中配置实验性功能。
experimental.dynamic-snippets
控制动态 SDK 代码片段——允许用户修改参数并实时查看代码示例的更新。动态代码片段默认启用,并支持所有语言。请按照 SDK 代码片段配置说明 进行配置。设为 false 可改用静态 SDK 代码片段。