diff --git a/fern/docs.yml b/fern/docs.yml index b5582387ef..483d8e3e46 100644 --- a/fern/docs.yml +++ b/fern/docs.yml @@ -830,6 +830,11 @@ redirects: - source: /learn/ask-fern/:slug* destination: /learn/docs/ai-features/ask-fern/:slug* + - source: /learn/docs/ai-features/ask-fern/slack-app + destination: /learn/docs/ai-features/fern-slack + - source: /learn/docs/ai-features/fern-writer + destination: /learn/docs/ai-features/fern-slack + # Ask Fern new-location cleanup (/learn/docs/ai-features/ask-fern/*) - source: /learn/docs/ai-features/ask-fern/how-it-works destination: /learn/docs/ai-features/ask-fern/overview diff --git a/fern/products/docs/docs.yml b/fern/products/docs/docs.yml index c676cbfa61..d28b8e2233 100644 --- a/fern/products/docs/docs.yml +++ b/fern/products/docs/docs.yml @@ -182,8 +182,9 @@ navigation: contents: - page: Overview path: ./pages/ai/overview.mdx - - page: Fern Writer - path: ./pages/ai/writer.mdx + - page: Fern Agent + path: ./pages/ai/fern-agent.mdx + slug: fern-agent - page: AI-generated examples path: ./pages/ai/ai-examples.mdx slug: ai-examples @@ -207,6 +208,9 @@ navigation: - page: MCP server path: ./pages/ai/mcp-server.mdx slug: mcp-server + - page: Fern in Slack + path: ./pages/ai/fern-slack.mdx + slug: fern-slack - page: API catalog discovery path: ./pages/ai/api-catalog.mdx slug: api-catalog @@ -229,9 +233,6 @@ navigation: - section: Setup skip-slug: true contents: - - page: Slack app - path: ./pages/ask-fern/slack-app.mdx - slug: slack-app - page: Custom guidance path: ./pages/ask-fern/guidance.mdx slug: guidance diff --git a/fern/products/docs/pages/ai/fern-agent.mdx b/fern/products/docs/pages/ai/fern-agent.mdx new file mode 100644 index 0000000000..5a3ee46428 --- /dev/null +++ b/fern/products/docs/pages/ai/fern-agent.mdx @@ -0,0 +1,94 @@ +--- +title: Fern Agent +description: An AI assistant in the Fern Dashboard that edits your docs, answers questions about your analytics and readers, and points you to the right dashboard page. +--- + +Fern Agent is an AI assistant built into the [Fern Dashboard](https://dashboard.buildwithfern.com/). Describe what you want in plain language and Fern Agent either carries it out or links you to the dashboard page that does. It acts with your own permissions, so it reads and edits only the docs sites you already have access to. Fern Agent is in beta, so its capabilities change as the feature develops. + +## What you can do + +### Edit your docs + +Fern Agent reads your docs site's source repository and makes the changes you describe. It commits them to a new branch and hands the branch to the [Fern Editor](/learn/docs/writing-content/fern-editor) so you can review the draft, then opens a pull request when you ask for one. If you already have the site open in the editor, the changes go into your live draft instead. + + +Add a page about authentication to my getting-started guide. + + +
+ + +Rewrite the introduction on the overview page to be more concise. + + +
+ + +Move the changelog section to the top of the sidebar. + + +### Explore analytics + +Fern Agent queries pageviews, visitors, sessions, 404s, referring domains, search queries, reader feedback, and LLM bot traffic for any docs site in your organization. + + +List the pages with the most traffic last month. + + +
+ + +List the top 404 paths on my site over the last 30 days. + + +
+ + +Break down last week's traffic by referring domain. + + +### Review Ask Fern activity + +Fern Agent summarizes what readers ask [Ask Fern](/learn/docs/ai-features/ask-fern/overview), including resolution rates and individual conversations, so you can find topics that need better coverage. + + +Summarize what readers asked Ask Fern this week. + + +
+ + +List the unresolved Ask Fern conversations. + + +### Review configuration and deployments + +Fern Agent reports a site's deployment history, connected git repository, Fern CLI version, custom domain, and reader-facing settings such as search behavior and password protection. + + +List the recent deployments for docs.plantstore.com. + + +
+ + +List the features enabled on docs.plantstore.com. + + +### Manage your organization + +Fern Agent lists your organization's members and their roles. It can't create API keys, change members, or update billing; for those it links you to the dashboard page that does. + + +List the admins in my organization. + + +
+ + +Open the dashboard page for managing API keys. + + +## Getting started + +Open the [Fern Dashboard](https://dashboard.buildwithfern.com/) and start a conversation in the chat panel. No setup is required. diff --git a/fern/products/docs/pages/ai/fern-slack.mdx b/fern/products/docs/pages/ai/fern-slack.mdx new file mode 100644 index 0000000000..ac7400a470 --- /dev/null +++ b/fern/products/docs/pages/ai/fern-slack.mdx @@ -0,0 +1,258 @@ +--- +title: Fern in Slack +description: >- + Answer product questions and open documentation pull requests from Slack, without leaving the channel where the conversation happens. +--- + +`@Fern` brings your documentation into Slack. Tag it in any channel to get cited answers to questions about your product, or ask it to update your docs and it opens a GitHub pull request with the changes. + + + + Ask a question in any channel and Fern searches your documentation and replies with a cited answer in the thread. + + + Describe a docs change and Fern opens a GitHub pull request with the edits. Review and iterate in the thread, then merge when ready. + + + +Each capability has its own installation, and both require Slack admin access to add to a workspace. + +## Answering questions + +Fern searches your documentation database and replies in the thread with a cited answer. Questions and answers are stored for [analytics](/learn/docs/ai-features/ask-fern/overview#analytics). + +### Setup + + + +Use the [API Explorer](/learn/docs/ai-features/ask-fern/api-reference/slack-ask-fern/get-slack-install-link) to get a unique Slack installation link for your organization. Provide: +- Your [Fern API key](/learn/cli-api-reference/cli-reference/commands#fern-token) +- Your domain without protocol or path (e.g., `website.com`, not `https://website.com/docs`) + +You can alternatively use this cURL request: +```bash +curl -G https://fai.buildwithfern.com/slack/get-install \ + -H "Authorization: Bearer " \ + --data-urlencode domain= +``` + +Follow the URL returned in the `install_url` response field. + + +You'll be redirected to Slack to authorize the app. Select the workspace where you want to add it, then select **Allow**. + + + Allow Ask Fern for Slack workspace + + + +Add the bot to the channels where you want it available. Members see that the bot was added to the channel and can start asking questions immediately. + + + +### Channel settings + +Use the `/fern` slash command in any channel to control how the bot responds: + +| Command | Description | Example | +|---------|-------------|---------| +| **respond_to** | Controls whether the bot responds to all messages (`all`), responds only when directly mentioned (`mentions_only`), or determines when to respond depending on context (`auto`). Set to `auto` by default. | `/fern respond_to all` | +| **roles** | Specifies which RBAC roles (comma-separated) filter the bot's answers, for sites with [role-based access control](/learn/docs/authentication/features/rbac) configured. | `/fern roles developer,admin` | +| **show** | Show the current channel settings. | `/fern show` | +| **help** | Get help with the slash commands. | `/fern help` | + + + Respond all setting in Slack + + +### Customize the bot name + +Rename the bot to match your brand (example: "YourCompanyName Support"): + +1. In Slack, go to **Apps** in the sidebar and select **Ask Fern** +2. Select the **About** tab, then **Configuration** +3. Scroll to the **Bot User** section and select **Edit** +4. Enter your preferred bot name and save changes + + + Update name of Slackbot + + +Members then see `@YourCompanyName Support was added to the channel` instead of the default name. + +### Improve answers over time + +Teaching the bot from real conversations improves the answers it gives later: + +1. **A member asks a question** - The bot responds in the channel +2. **Review the response** - If the answer needs improvement, reply in the thread to the bot's message +3. **Provide corrections** - Add missing context, correct inaccuracies, or clarify the response +4. **Request indexing** - Ask the bot to index the improved response (e.g., "Index this response") +5. **Iterate if needed** - The bot drafts an improved Q&A pair. Continue refining until it looks right +6. **Confirm indexing** - Tell the bot to save the pair, and it confirms the Q&A pair has been indexed + +Once indexed, the curated question-answer pair informs the bot's answers to similar questions. + + + +**User –** *@PlantSupport* what's the best way to care for succulents +indoors? + +**Plant Support bot –** Succulents need bright, indirect light and should be watered every 2-3 weeks. Make sure the soil dries out completely between waterings. + +**Support Lead –** *@PlantSupport* This is good but you should mention drainage holes and the +risk of root rot. Also, watering frequency depends on the season - less in +winter. Let's index this thread. + +**Plant Support bot:** I'd be happy to help you index this thread! Let me work +with you to create a clear Q&A pair for your knowledge base. Based on the +conversation, the main question is about caring for indoor succulents. Let me +draft an improved Q&A pair: + +Question: "What's the best way to care for succulents indoors?" + +Ideal Response: + +Succulents thrive indoors with the following care:* + +- Light: Provide bright, indirect sunlight (6+ hours daily near a south or east-facing window) +- Watering: Water thoroughly every 2-3 weeks during spring and summer, +reducing to once a month in winter. Always wait until the soil is +completely dry between waterings +- Drainage: Use pots with drainage holes and well-draining soil +(cactus/succulent mix) to prevent root rot +- Warning: Overwatering is the most common cause of succulent death. Root rot +develops quickly in waterlogged soil + +Does this capture the question and response accurately? Would you like me to adjust anything before saving it to your knowledge base? + +**Support Lead:** *@PlantSupport* Perfect! Please save this. + +**Plant Support bot –** Successfully indexed! This Q&A pair has been added to your knowledge base and will be used to inform future responses about indoor succulent care. + + + +### Architecture + +When a member asks a question, a webhook triggers Fern's servers to search your documentation database and retrieve relevant context. Using that context, Ask Fern generates a response. + + +```mermaid +sequenceDiagram + autonumber + participant U as User (Slack) + participant S as Slack Webhook + participant F as Fern Servers + participant V as Documentation Database + participant A as Ask Fern + + U->>S: Ask question to the bot + S->>F: Webhook fires to Fern servers + F->>F: Convert query to vector + F->>F: Check user roles (if RBAC enabled) + F->>V: Search for relevant chunks + V->>F: Return matching documents user can access + F->>A: Send query + context + A->>A: Generate response + A->>U: Return answer in Slack thread + F->>F: Store question and answer for analytics +``` + + +## Updating docs + +Docs updates keep your content aligned as your product evolves. This capability is powered by [Devin from Cognition](https://cognition.ai/blog/introducing-devin), understands Fern components and your writing style, and can be customized with an `AGENTS.md` file in your docs repository. + + + + + +### Making a request + +Tag Fern in a channel where it has been added and describe the change you need. It only responds when directly tagged. It reacts to your message to confirm receipt, then opens a pull request and replies with a link. + +Image and file attachments provide additional context. When tagged in an existing thread, Fern reads the full conversation before responding. + +### Reviewing and merging + +Request changes by replying in the Slack thread. Once the pull request meets your requirements, merge it like any other pull request. + +### Pull request attribution + + + Pull request attribution + + +Each pull request includes a **Requested by** field in the description, attributing the change to the person or team that initiated the request. Commits are signed and attributed to `fern-support`, making automated changes clearly distinguishable from manual contributions in your repository's history. + +### Example requests + + +Document the new rate limiting feature added in PR #123 + + +
+ + +Add a section about webhook retry behavior to the webhooks guide + + +
+ + +Merge the authentication and authorization pages, and add a redirect from the old auth page + + +
+ + +Fix the broken code example in the quickstart and update the package version to v2.1.0 + + +### Setup + +Docs updates require a GitHub repository. GitLab and other Git providers aren't supported. + + + +If you connected a repo through the [Fern Dashboard](/learn/dashboard/configuration/github-repo), the [Fern GitHub App](https://github.com/apps/fern-api) is already installed and this step can be skipped. + +Otherwise, install it on your docs repo (requires GitHub org admin access). The app lets Fern read your code and pull requests, open documentation pull requests, and push commits attributed to `fern-support`. + + +[Get a unique Slack installation link](/learn/docs/scribe-api/fern-writer-api/get-fern-writer-install-link) for your organization. Provide: +- Your [Fern API key](/learn/cli-api-reference/cli-reference/commands#fern-token) +- The GitHub repository in `owner/repo` format (e.g., `acme/docs`) + +You can alternatively use this cURL request: +```bash +curl -G https://fai.buildwithfern.com/scribe/slack/get-install \ + -H "Authorization: Bearer " \ + --data-urlencode github_repo= +``` + +Follow the URL returned in the response. + + +You'll be redirected to Slack to authorize the app. Select the workspace where you want to add it, then select **Allow**. + + +Once installed, add Fern to the Slack channels where your team discusses documentation. + + + +## Privacy and data handling + +Fern doesn't store your Slack messages directly. When you tag Fern or reference a message or thread, the content is stored in a session to complete the task and isn't retained after the task completes. Questions and answers from Q&A interactions are stored for [analytics purposes](/learn/docs/ai-features/ask-fern/overview#analytics). + +Neither Fern nor [Devin](https://docs.devin.ai/admin/security#how-is-your-data-used-to-improve-devin) uses your data to train AI models. Fern explicitly configures its Devin integration to opt out of any data collection for model training. Your channel messages, code, and documentation content are never used for training purposes. See Devin's documentation on [Slack integration security](https://docs.devin.ai/admin/security#integrating-with-slack) for additional details. diff --git a/fern/products/docs/pages/ai/overview.mdx b/fern/products/docs/pages/ai/overview.mdx index 94232015e3..10d14a4ab6 100644 --- a/fern/products/docs/pages/ai/overview.mdx +++ b/fern/products/docs/pages/ai/overview.mdx @@ -14,27 +14,28 @@ Your documentation site comes with automatic optimizations for AI tools, plus fe | --- | --- | | Ask Fern | 2 credits per message | | AI-generated examples | 1 credit | - | Fern Writer session | 50 credits | + | Docs update in Slack | 50 credits per session | ## Find answers -Help users get instant, cited answers from your documentation wherever they're working. Ask Fern is available as an embedded chat widget, an [API](/learn/docs/ai-features/ask-fern/api-reference/overview) for custom integrations, and a [Slack app](/learn/docs/ai-features/ask-fern/slack-app) for your community. For developers in AI clients like Claude Code, Cursor, and Windsurf, Fern also hosts an MCP server so they can query your docs directly from their development environment. +Help users get instant, cited answers from your documentation wherever they're working. Ask Fern is available as an embedded chat widget, an [API](/learn/docs/ai-features/ask-fern/api-reference/overview) for custom integrations, and [@Fern in Slack](/learn/docs/ai-features/fern-slack) for your community. For developers in AI clients like Claude Code, Cursor, and Windsurf, Fern also hosts an MCP server so they can query your docs directly from their development environment. - + ## Create and update content -AI helps keep your documentation current. Fern Writer is a Slack-based technical writing agent that creates pull requests with targeted edits when you tag `@Fern Writer` to request updates. For API Reference docs, Fern automatically generates realistic examples from your OpenAPI spec that stay synchronized with spec changes, replacing placeholder values like `"string"` with believable data. +AI helps keep your documentation current. [@Fern in Slack](/learn/docs/ai-features/fern-slack) takes a described change and opens a pull request with the edits, and [Fern Agent](/learn/docs/ai-features/fern-agent) works from the Fern Dashboard, where it edits your docs and answers questions about your analytics, readers, and site configuration. For API Reference docs, Fern automatically generates realistic examples from your OpenAPI spec that stay synchronized with spec changes, replacing placeholder values like `"string"` with believable data. - - + + + diff --git a/fern/products/docs/pages/ai/writer.mdx b/fern/products/docs/pages/ai/writer.mdx deleted file mode 100644 index bbfe0c81de..0000000000 --- a/fern/products/docs/pages/ai/writer.mdx +++ /dev/null @@ -1,114 +0,0 @@ ---- -title: Fern Writer -description: A Slack-based technical writing agent that updates your documentation via GitHub pull requests ---- - - -Fern Writer is a Slack-based technical writing agent that keeps your docs aligned as your product evolves. It's powered by [Devin from Cognition](https://cognition.ai/blog/introducing-devin). Fern Writer understands Fern components and your writing style, and can be customized via an `AGENTS.md` file in your docs repository. - - - - - -## How it works - -### Making a request - -In Slack channels where you've added Fern Writer, tag `@Fern Writer` and describe the change you need. Fern Writer [only responds when directly tagged](#privacy-and-data-handling). It will react to your message to confirm receipt, then create a pull request and reply with a link. - -Fern Writer supports image and file attachments for additional context. When tagged in an existing thread, it reads the full conversation to understand context before responding. - -### Reviewing and merging - -Request changes by commenting in the Slack thread. Once the PR meets your requirements, merge it like any other pull request. - -### Pull request attribution - - - Fern Writer PR attribution - - -Each pull request includes a **Requested by** field in the description, attributing the change to the person or team that initiated the request. Commits are signed and attributed to `fern-support`, ensuring that automated changes are clearly distinguishable from manual contributions in your repository's history. - -## Example requests - - -@Fern Writer document the new rate limiting feature added in PR #123 - - -
- - -@Fern Writer add a section about webhook retry behavior to the webhooks guide - - -
- - -@Fern Writer merge the authentication and authorization pages, and add a redirect from the old auth page - - -
- - -@Fern Writer fix the broken code example in the quickstart and update the package version to v2.1.0 - - -## Setup - - - Fern Writer only supports GitHub. GitLab and other Git providers aren't supported. - - -To start using Fern Writer, add it to your Slack workspace (you must be a Slack admin) and invite it to channels where your team discusses documentation. - - - - -If you connected a repo through the [Fern Dashboard](/learn/dashboard/configuration/github-repo), the [Fern GitHub App](https://github.com/apps/fern-api) is already installed and you can skip this step. - -Otherwise, install it on your docs repo (requires GitHub org admin access). The app lets Fern Writer read your code and pull requests, open documentation PRs, and push commits attributed to `fern-support`. - - - - -[Get a unique Slack installation link](/learn/docs/scribe-api/fern-writer-api/get-fern-writer-install-link) for your organization. Provide: -- Your [Fern API key](/learn/cli-api-reference/cli-reference/commands#fern-token) -- The GitHub repository in `owner/repo` format (e.g., `acme/docs`) - -You can alternatively use this cURL request: -```bash -curl -G https://fai.buildwithfern.com/scribe/slack/get-install \ - -H "Authorization: Bearer " \ - --data-urlencode github_repo= -``` - -Follow the URL returned in the response. - - - -You'll be redirected to Slack to authorize Fern Writer. Select the workspace where you want to add Fern Writer and click **Allow**. - - - - -Once installed, add Fern Writer to Slack channels where your team discusses documentation. - - - - -## Privacy and data handling - -Fern Writer doesn't store your Slack messages directly. When you tag `@Fern Writer` or reference a message or thread, the content is stored in a session to generate the documentation pull request. Session data isn't retained after the task completes. - -Neither Fern nor [Devin](https://docs.devin.ai/admin/security#how-is-your-data-used-to-improve-devin) uses your data to train AI models. Fern explicitly configures its Devin integration to opt out of any data collection for model training. Your channel messages, code, and documentation content are never used for training purposes. See Devin's documentation on [Slack integration security](https://docs.devin.ai/admin/security#integrating-with-slack) for additional details. diff --git a/fern/products/docs/pages/ask-fern/slack-app.mdx b/fern/products/docs/pages/ask-fern/slack-app.mdx deleted file mode 100644 index 506d77236b..0000000000 --- a/fern/products/docs/pages/ask-fern/slack-app.mdx +++ /dev/null @@ -1,166 +0,0 @@ ---- -title: Ask Fern Slack app -description: Enable your customers to get instant answers to product questions directly in Slack using Ask Fern's AI-powered documentation bot. ---- - - -The Ask Fern Slack app allows customers to ask questions about your products directly in Slack channels and receive AI-generated answers from your documentation database. - -Fern stores all questions and answers from Slack interactions for [analytics purposes](/learn/docs/ai-features/ask-fern/overview#analytics). - -## Setup - -Install the Ask Fern app in your workspace and add the bot to customer channels. - - - To install Ask Fern in your organization's Slack workspace, you must be a Slack admin. - - - - - -Use the [API Explorer](/learn/docs/ai-features/ask-fern/api-reference/slack-ask-fern/get-slack-install-link) to get a unique Slack installation link for your organization. Provide: -- Your Fern API key -- Your domain without protocol or path (e.g., `website.com`, not `https://website.com/docs`) - -You can alternatively use this cURL request: -```bash -curl -G https://fai.buildwithfern.com/slack/get-install \ - -H "Authorization: Bearer " \ - --data-urlencode domain= -``` - -Follow the URL returned in the `install_url` response field. - - - -You'll be redirected to Slack to authorize the Ask Fern app. Select the workspace where you want to add Ask Fern and click **Allow**. - - - Allow Ask Fern for Slack workspace - - - - - -Once you've installed it in your workspace, add the bot to customer Slack channels to give it access. Customers will see that `@Ask Fern was added to the channel` and can start asking questions immediately. - - - - -## Configuration - -Customize the bot's behavior to match your workflow needs. - -### Bot settings per channel - -Use the `/fern` slash command in any channel to adjust the settings: - -| Command | Description | Example | -|---------|-------------|---------| -| **respond_to** | Controls whether the Ask Fern bot responds to all messages (`all`), reponds only when directly mentioned with `@Ask Fern` (`mentions_only`), or determines when to respond to messages depending on context (`auto`). Set to `auto` by default. | `/fern respond_to all` | -| **roles** | Specifies which RBAC roles (comma-separated) should be used to filter Ask Fern responses (if you have [role-based access control](/learn/docs/authentication/features/rbac) configured) | `/fern roles developer,admin` | -| **show** | Show the current settings | `/fern show` | -| **help** | Get help with Ask Fern slash commands | `/fern help` | - - - Respond all setting in Slack - - -### Customize the bot name - -You can rename the bot to match your brand (example: "YourCompanyName Support"): - -1. In Slack, go to **Apps** in the sidebar and click **Ask Fern** -2. Click the **About** tab, then **Configuration** -3. Scroll to **Bot User** section and click **Edit** -4. Enter your preferred bot name and save changes - - - Update name of Slackbot - - -Now customers will see `@YourCompanyName Support was added to the channel` instead of the default `@Ask Fern` name. - -### Collaborative FAQ generation - -You can improve the Slack bot's knowledge base by teaching it from real customer interactions. When the bot provides answers in Slack, you can refine those responses and save them for future reference. - -How it works: - -1. **A user asks a question** - The bot responds in the channel -2. **Review the response** - If the answer needs improvement, reply in the thread to the bot's message -3. **Provide corrections** - Add missing context, correct inaccuracies, or clarify the response -4. **Request indexing** - Ask the bot to index the improved response (e.g., "Index this response" or "Please save this") -5. **Iterate if needed** - The bot will generate an improved answer. Continue refining until you're satisfied -6. **Confirm indexing** - When the response looks good, tell the bot to save it. The bot will confirm the Q&A pair has been indexed - -Once indexed, Ask Fern will use this curated question-answer pair to inform future responses to similar questions, giving more accurate answers over time. - - - - -**User –** *@PlantSupport* what's the best way to care for succulents -indoors? - -**Plant Support bot –** Succulents need bright, indirect light and should be watered every 2-3 weeks. Make sure the soil dries out completely between waterings. - -**Support Lead –** *@PlantSupport* This is good but you should mention drainage holes and the -risk of root rot. Also, watering frequency depends on the season - less in -winter. Let's index this thread. - -**Plant Support bot:** I'd be happy to help you index this thread! Let me work -with you to create a clear Q&A pair for your knowledge base. Based on the -conversation, the main question is about caring for indoor succulents. Let me -draft an improved Q&A pair: - -Question: "What's the best way to care for succulents indoors?" - -Ideal Response: - -Succulents thrive indoors with the following care:* - -- Light: Provide bright, indirect sunlight (6+ hours daily near a south or east-facing window) -- Watering: Water thoroughly every 2-3 weeks during spring and summer, -reducing to once a month in winter. Always wait until the soil is -completely dry between waterings -- Drainage: Use pots with drainage holes and well-draining soil -(cactus/succulent mix) to prevent root rot -- Warning: Overwatering is the most common cause of succulent death. Root rot -develops quickly in waterlogged soil - -Does this capture the question and response accurately? Would you like me to adjust anything before saving it to your knowledge base? - -**Support Lead:** *@PlantSupport* Perfect! Please save this. - -**Plant Support bot –** Successfully indexed! This Q&A pair has been added to your knowledge base and will be used to inform future responses about indoor succulent care. - - - - -## Architecture - -When a user asks Ask Fern a question in Slack, a webhook triggers Fern's servers to search your documentation database and retrieve relevant context. Using that context, Ask Fern generates a response. - - -```mermaid -sequenceDiagram - autonumber - participant U as User (Slack) - participant S as Slack Webhook - participant F as Fern Servers - participant V as Documentation Database - participant A as Ask Fern - - U->>S: Ask question to @Ask Fern - S->>F: Webhook fires to Fern servers - F->>F: Convert query to vector - F->>F: Check user roles (if RBAC enabled) - F->>V: Search for relevant chunks - V->>F: Return matching documents user can access - F->>A: Send query + context - A->>A: Generate response - A->>U: Return answer in Slack thread - F->>F: Store question and answer for analytics -``` - diff --git a/fern/products/docs/pages/ask-fern/what-is-ask-fern.mdx b/fern/products/docs/pages/ask-fern/what-is-ask-fern.mdx index 803ee36493..b8ca687a8a 100644 --- a/fern/products/docs/pages/ask-fern/what-is-ask-fern.mdx +++ b/fern/products/docs/pages/ask-fern/what-is-ask-fern.mdx @@ -32,7 +32,7 @@ Ask Fern is Fern's AI Search feature, powered by [Claude 4.6 Sonnet](https://www - Connect Ask Fern to [Slack](/learn/docs/ai-features/ask-fern/slack-app) so your users can ask questions directly from chat. + Connect Ask Fern to [Slack](/learn/docs/ai-features/fern-slack) so your users can ask questions directly from chat. Finetune Ask Fern's behavior: diff --git a/fern/products/docs/pages/changelog/2026-08-13.mdx b/fern/products/docs/pages/changelog/2026-08-13.mdx new file mode 100644 index 0000000000..7cfaf6cf36 --- /dev/null +++ b/fern/products/docs/pages/changelog/2026-08-13.mdx @@ -0,0 +1,7 @@ +## Fern Agent in the dashboard + +ai + +Fern Agent is an AI assistant in the [Fern Dashboard](https://dashboard.buildwithfern.com/) that works from plain-language requests. It edits your docs and hands the branch to the Fern Editor, answers questions about traffic, 404s, search queries, and Ask Fern conversations, reports site configuration and deployment history, and links you to the dashboard page for anything it can't do itself. Fern Agent acts with your own permissions, so it only touches sites you already have access to. + + diff --git a/fern/products/docs/pages/getting-started/capabilities.mdx b/fern/products/docs/pages/getting-started/capabilities.mdx index fb579d234c..00b76b9b3d 100644 --- a/fern/products/docs/pages/getting-started/capabilities.mdx +++ b/fern/products/docs/pages/getting-started/capabilities.mdx @@ -65,8 +65,8 @@ Build a docs site quickly by importing your existing styling and specs. Teach coding agents to author your docs - - A Slack-based writing agent that ships pull requests + + Answers questions and ships docs pull requests from Slack Algolia-backed search with custom filtering and ranking diff --git a/fern/products/docs/pages/self-hosted/self-hosted.mdx b/fern/products/docs/pages/self-hosted/self-hosted.mdx index 1382a38995..dd0620b2bd 100644 --- a/fern/products/docs/pages/self-hosted/self-hosted.mdx +++ b/fern/products/docs/pages/self-hosted/self-hosted.mdx @@ -44,7 +44,7 @@ PDF export and **offline AI chat functionality** for self-hosted deployments are | [Dark / light mode](/learn/docs/configuration/site-level-settings) | Yes | | [Embedded mode](/learn/docs/customization/embedded-mode) | Yes | | [Fern Editor](/learn/docs/writing-content/fern-editor) | No | -| [Fern Writer](/learn/docs/ai-features/fern-writer) | No | +| [Fern in Slack](/learn/docs/ai-features/fern-slack) | No | | [Header and footer customization](/learn/docs/customization/header-and-footer) | Yes | | [Health check endpoints](/learn/docs/self-hosted/health-check-endpoints) | Yes | | [HTTP snippets](/learn/docs/api-references/http-snippets) | Yes |