Dynamic OG images on by default
Sites that set no site-wide og:image or twitter:image now get a generated preview image for every page, so links shared in Slack, X, and LinkedIn show a card image instead of a blank placeholder. Pages with their own og:image in frontmatter keep it. Set og:dynamic: false under metadata in docs.yml to opt out.
Draggable Ask AI chat widget
Visitors can now move the standalone AskAiChat widget anywhere on the page. Drag the card by its header, or drag the launcher button itself and the card follows. The widget stays inside the viewport, and the card opens above or below the launcher depending on where there’s room. Dragging is on by default in @fern-api/search-widget 0.6.0; pass draggableCard={false} to keep the chat pinned to its placement corner.
Sort endpoints by availability
You can now order endpoints in your API Reference by their availability with the sort-by-availability option. Listed values come first, in the order you provide, followed by any remaining values in the default order. Use unset to position endpoints that have no availability. Combine it with alphabetized: true to sort endpoints alphabetically within each availability.
Exclude changelogs from llms.txt
You can now omit changelog sections from llms.txt by adding the excludeChangelog=true query parameter. This keeps the index small for sites with long release histories. It combines with the existing lang and excludeSpec parameters, for example /llms.txt?lang=python&excludeSpec=true&excludeChangelog=true.
Split response example selector
When an endpoint has multiple examples for the same status code, the response snippet now renders two dropdowns side by side instead of one flat list: a status code dropdown on the left and an example dropdown to its right. The example dropdown only appears when the selected status code has more than one example — status codes with a single example show only the status code dropdown, keeping the UI uncluttered for the common case.
Site-level changelog for multi-product sites
Multi-product sites can now have a single changelog shared by every product. Add a top-level changelog key in docs.yml next to products and the changelog is served at /changelog, without a product slug prefix and without appearing in the product switcher. This replaces the workaround of a dedicated “Changelog” product hidden with CSS.
Reference API specs directly from docs.yml
You can now point an api navigation item straight at your OpenAPI, AsyncAPI, or GraphQL specification files with a specs list, without creating a generators.yml. Each entry takes a type and a path (relative to the configuration file), plus optional overrides, overlays, and namespace. Existing api-name setups are unchanged.
Custom Ask Fern disclaimer
You can now replace the default Ask Fern disclaimer (“Responses are generated using AI and may contain mistakes.”) with your own wording. Set ai-search.disclaimer in docs.yml and the text appears beneath answers in the chat panel, standalone modal, mobile drawer, and search widget, so the disclaimer can match your legal or privacy requirements.
Playground-only authentication descriptions
You can now add auth instructions that appear only in the API Explorer, such as where to generate a token, without changing the Authorization description in your API Reference. Set x-fern-playground-description on a security scheme in your OpenAPI spec, or playground-docs on an auth scheme in a Fern Definition. The text renders as an info callout beneath the matching auth input and supports links, inline code, and paragraphs.
Per-deployment values in self-hosted docs
A self-hosted container can now resolve environment variables in the pages it serves, on each request. A ${VAR} whose name is listed in FERN_RUNTIME_ENV_VARS is deferred past generation instead of being substituted with its build-time value, so one image serves deployments that differ only in those values.
Fern Agent automations
You can now put Fern Agent on a schedule. Create an automation on the Automations page in the Fern Dashboard. You can also describe the recurring work in the chat panel or Slack, and Fern Agent will set up an automation for you. Automations can review your reader feedback, unanswered Ask Fern questions, search queries, or analytics, report back what it found, and open a pull request when the prompt asks for a change.
Blog layouts for changelogs
You can now present a changelog as a blog, with dated entries rendered as cards in a grid or list, tag filters, search, and author bylines on each post. Use this layout when a changelog functions more like a series of announcement posts than a list of releases. Set layout: blog and blog-layout in the changelog overview frontmatter.
Cards, tag filters, and search on a blog, with author bylines on the post page. Try the live example site.