diff --git a/fern/assets/styles.css b/fern/assets/styles.css
index d36199433..ccd04d8d7 100644
--- a/fern/assets/styles.css
+++ b/fern/assets/styles.css
@@ -282,6 +282,10 @@ h1, h2, h3 {
content: url("https://fern-docs.s3.us-east-2.amazonaws.com/product-switcher/grpc-dark.png") !important;
}
+:is(.dark) .fern-product-selector-radio-group a[href*="cli-generator"] img {
+ content: url("https://fern-docs.s3.us-east-2.amazonaws.com/product-switcher/product-switcher-cli-generator-dark.png") !important;
+}
+
/*** END -- PRODUCT SELECTOR STYLING ***/
/*** START -- DOCS HOMEPAGE STYLING ***/
diff --git a/fern/docs.yml b/fern/docs.yml
index 077b5db90..307ba9750 100644
--- a/fern/docs.yml
+++ b/fern/docs.yml
@@ -36,7 +36,14 @@ products:
image: ./images/product-switcher/product-switcher-sdks-light.png
slug: sdks
subtitle: Generate client libraries in multiple languages
-
+
+ - display-name: CLI Generator
+ path: ./products/cli-generator/cli-generator.yml
+ icon: fa-regular fa-rectangle-terminal
+ image: ./images/product-switcher/product-switcher-cli-generator-light.png
+ slug: cli-generator
+ subtitle: Generate a CLI from your API definition
+
- display-name: Docs
path: ./products/docs/docs.yml
icon: fa-regular fa-browser
@@ -51,7 +58,7 @@ products:
slug: dashboard
subtitle: Manage your Fern projects and settings
- - display-name: CLI Reference
+ - display-name: Fern CLI
subtitle: Manage and configure your Fern projects
path: ./products/cli-api-reference/cli-api-reference.yml
icon: fa-regular fa-terminal
diff --git a/fern/images/product-switcher/product-switcher-cli-generator-dark.png b/fern/images/product-switcher/product-switcher-cli-generator-dark.png
new file mode 100644
index 000000000..ae650aca0
Binary files /dev/null and b/fern/images/product-switcher/product-switcher-cli-generator-dark.png differ
diff --git a/fern/images/product-switcher/product-switcher-cli-generator-light.png b/fern/images/product-switcher/product-switcher-cli-generator-light.png
new file mode 100644
index 000000000..351d69f04
Binary files /dev/null and b/fern/images/product-switcher/product-switcher-cli-generator-light.png differ
diff --git a/fern/products/cli-generator/cli-generator-launch-video_web.mp4 b/fern/products/cli-generator/cli-generator-launch-video_web.mp4
new file mode 100644
index 000000000..3de70e63f
Binary files /dev/null and b/fern/products/cli-generator/cli-generator-launch-video_web.mp4 differ
diff --git a/fern/products/cli-generator/cli-generator.yml b/fern/products/cli-generator/cli-generator.yml
new file mode 100644
index 000000000..7519597cd
--- /dev/null
+++ b/fern/products/cli-generator/cli-generator.yml
@@ -0,0 +1,7 @@
+navigation:
+ - section: Get started
+ contents:
+ - page: Overview
+ path: ./overview.mdx
+ slug: overview
+
diff --git a/fern/products/cli-generator/overview.mdx b/fern/products/cli-generator/overview.mdx
new file mode 100644
index 000000000..b86ea5c4b
--- /dev/null
+++ b/fern/products/cli-generator/overview.mdx
@@ -0,0 +1,53 @@
+---
+title: CLI generator
+description: "Generate a production CLI from your API definition that's built for AI agents and human developers."
+availability: beta
+---
+
+
+The CLI generator is in early access. [Reach out](https://buildwithfern.com/contact) to get started.
+
+
+Fern's CLI generator produces a fully functional command-line tool from the same API spec you already use for SDKs. It ships alongside your Docs and SDKs as a single binary with no runtime dependencies, serving AI agents that need deterministic output and runtime-introspectable schemas as well as human developers who script, debug, and explore.
+
+Building a CLI by hand is a multi-quarter project — commands, auth, pagination, retries, output formatting, cross-platform builds, shell completions, and keeping it all in sync as the API evolves. The generator handles that automatically.
+
+
+
+
+
+## How it works
+
+The CLI generator plugs into the same Fern workflow as your Docs and SDKs. When your spec changes, Fern opens a PR against your CLI repo with the generated source. On release, Fern automatically publishes the CLI to npm, Homebrew, and GitHub Releases so your users can install it with their package manager of choice. The CLI stays in sync with your Docs and SDKs, and you never need to write CLI code by hand.
+
+The output is a single statically linked Rust binary. Users drop it onto their PATH and run it. There's no language runtime and no dependencies.
+
+## Built for agents and humans
+
+
+
+ Schema and help available as structured JSON.
+
+
+ Double-encoded URLs and other malformed inputs are caught before any request is sent.
+
+
+ The same binary serves MCP over stdio or streamable HTTP.
+
+
+ Colored help, tabular output, and shell completions.
+
+
+ Preview a request without sending it.
+
+
+ Each release maps to a specific API version.
+
+