Changelog
Organization-wide CLI version policy
Admins can now bound the Fern CLI version that every project in an organization runs. Set a minimum, a maximum, or an exact version with fern org set cli-version, and each project runs the nearest allowed version. The bounds live on the organization, so no fern.config.json has to change. fern org get reports the policy and fern org unset cli-version clears it. fern upgrade respects the same bounds when it writes a new version.
Index external sitemaps in search
You can now surface pages hosted outside your docs site in search. List one or more external sitemap.xml files under the experimental external-sitemaps key in docs.yml, and Fern indexes their pages into the same search index as your documentation. External results are flagged as third-party, so they always rank below your first-party pages and open in a new tab when selected.
Preview docs as a role
Teams can now preview a role-gated docs site as a specific viewer to validate their gating before publishing. On a preview link, a role selector lets you pick one or more roles (or anonymous) and re-renders the site with that viewer’s role-based visibility applied, including nav pruning, <If /> blocks, and role-gated tabs and products. With no selection, the preview continues to show all content.
SSO now supports role-based access control
You can now gate content by role when authenticating with SSO. Fern reads each user’s roles from the token your identity provider issues, then applies the roles and viewers rules in your docs.yml. Previously, role-based access control was limited to JWT and OAuth.
To use it, assign roles through your WorkOS organization, either directly or by mapping your SSO/directory groups to roles.
Opt remote scripts out of SRI
Fern adds a Subresource Integrity (SRI) integrity attribute to remote js scripts by default. You can now disable SRI on a specific remote script without turning it off globally. Disable it for scripts that update in place, such as auto-updating or CDN-rolled scripts, which SRI would otherwise block.
Availability badges in the sidebar navigation
Availability set on a page, section, folder, or API Reference section or endpoint now automatically shows as a badge in the sidebar navigation, so you no longer need to hardcode a status like “(Beta)” in the title. beta, pre-release, and in-development render a badge; deprecated renders a badge and strikes through the title.
更新日志布局配置
更新日志现在支持两种布局:
timeline(默认)渲染可搜索的精简条目卡片时间线。classic渲染内联堆叠的完整条目,保留代码格式、复制按钮和链接。
在 docs.yml 中通过 layout.changelog-layout 设置站点范围的值:
禁用 MCP 服务器端点
现在可以通过在 docs.yml 中设置 page-actions.options.mcp: false 来完全禁用文档站点上的 MCP 服务器。禁用后,/_mcp/server 端点返回 404,MCP URL 从 llms.txt 和代理提示中移除,“Connect to Claude Code”/“Connect to Cursor”按钮也会隐藏。
这对于已认证的文档站点尤其有用,因为未认证的 AI 代理可能会发现端点但无法使用它。
Local library docs generation
You can now generate library documentation from local source code using the --local flag. Instead of pushing to a remote repository and parsing on Fern’s servers, fern docs md generate --local parses the source locally. This doesn’t require you to be logged in to Fern.
To use local generation, set your library’s input to a path instead of a git URL:
Custom llms-full.txt files are deprecated
Fern no longer generates llms-full.txt, and the llms-full-txt configuration in docs.yml is deprecated. Concatenating an entire site into one file exceeded most model context windows, added heavy serving overhead, and saw little use next to llms.txt combined with per-page Markdown.
Use llms.txt to discover page URLs and fetch individual pages via their .md URLs.
fern-docs agent skill
You can now install the fern-docs agent skill to teach coding agents like Claude Code, Cursor, and Copilot how to work with Fern Docs. The skill covers docs.yml configuration, navigation, MDX pages, components, and changelog entries, with task-specific references that agents load on demand.
Host agent skills from your docs site
Fern docs sites can now serve author-supplied Agent Skills at the standard /.well-known/skills/ and /.well-known/agent-skills/ endpoints. Place your skill bundle under fern/.well-known/agent-skills/ and the CLI uploads it during fern generate --docs. Users install with npx skills add https://<your-domain>.
"Install skills" page action
You can now add an “Install skills” button to the page action bar via page-actions.options.skills in docs.yml. The button opens a modal showing a copyable install command, the list of available skills, and a link to the skill source. The modal fetches the site’s served well-known manifest on first open, so the skill list stays in sync with what npx skills add installs.