diff --git a/documentation/docs/guides/managing-goose-sessions.md b/documentation/docs/guides/managing-goose-sessions.md
index 4bf62aa2e971..d44289d9df6a 100644
--- a/documentation/docs/guides/managing-goose-sessions.md
+++ b/documentation/docs/guides/managing-goose-sessions.md
@@ -5,7 +5,7 @@ sidebar_label: Managing Sessions
---
import Tabs from '@theme/Tabs';
import TabItem from '@theme/TabItem';
-import { AppWindow, PanelLeft, FolderDot, Paperclip } from 'lucide-react';
+import { AppWindow, PanelLeft, FolderDot, Paperclip, Copy } from 'lucide-react';
A session is a single, continuous interaction between you and Goose, providing a space to ask questions and prompt action. In this guide, we'll cover how to start, exit, and resume a session.
@@ -104,13 +104,114 @@ Note that sessions are automatically saved when you exit.
+## Search Sessions
+
+Search allows you to find specific content within sessions or find specific sessions.
+
+
+
+
+ You can use keyboard shortcuts and search bar buttons to search sessions in Goose Desktop.
+
+ | Action | macOS | Windows/Linux |
+ |--------|-------|---------------|
+ | Open Search | `Cmd+F` | `Ctrl+F` |
+ | Next Match | `Cmd+G` or `↓` | `Ctrl+G` or `↓` |
+ | Previous Match | `Shift+Cmd+G` or `↑` | `Shift+Ctrl+G` or `↑` |
+ | Use Selection for Find | `Cmd+E` | n/a |
+ | Toggle Case-Sensitivity | `Aa` | `Aa` |
+ | Close Search | `Esc` or `X` | `Esc` or `X` |
+
+ The following scenarios are supported:
+
+ #### Search Within Current Session
+
+ To find specific content within your current session:
+
+ 1. Use `Cmd+F` to open the search bar
+ 2. Enter your search term
+ 3. Use shortcuts and search bar buttons to navigate the results
+
+ #### Search For Session By Name or Path
+
+ To search all your sessions by name or working directory path:
+
+ 1. Click the button in the top-left to open the sidebar
+ 2. Click `History` in the sidebar
+ 3. Use `Cmd+F` to open the search bar
+ 4. Enter your search term
+ 5. Use keyboard shortcuts and search bar buttons to navigate the results (`Cmd+E` not supported)
+
+ This is a metadata-only search. It doesn't search conversation content. Note that searching by file name is supported (e.g. `20250727_130002.jsonl`), but this property isn't displayed in the UI.
+
+ #### Search Within Historical Session
+
+ To find specific content within a historical session:
+
+ 1. Click the button in the top-left to open the sidebar
+ 2. Click `History` in the sidebar
+ 3. Click a specific session tile from the list to view its content
+ 4. Use `Cmd+F` to open the search bar
+ 5. Enter your search term
+ 6. Use keyboard shortcuts and search bar buttons to navigate the results
+
+ :::info No Regex or operator support
+ Using regular expressions or search operators in search text isn't supported.
+ :::
+
+
+
+
+ Search functionality is provided by your terminal interface. Use the appropriate shortcut for your environment:
+
+ | Terminal | Operating System | Shortcut |
+ |----------|-----------------|-----------|
+ | iTerm2 | macOS | `Cmd+F` |
+ | Terminal.app | macOS | `Cmd+F` |
+ | Windows Terminal | Windows | `Ctrl+F` |
+ | Linux Terminal | Linux | `Ctrl+F` |
+
+ :::info
+ Your specific terminal emulator may use a different keyboard shortcut. Check your terminal's documentation or settings for the search command.
+ :::
+
+ The Goose CLI supports [listing session history](/docs/guides/goose-cli-commands#session-list-options) but doesn't provide search functionality. As a workaround, you can use your terminal's search capabilities (including regex support) to search for specific content within sessions or find specific sessions.
+
+ Examples for macOS:
+
+ ```bash
+ # Search session IDs (filenames)
+ ls ~/.local/share/goose/sessions/ | grep "full or partial session id"
+
+ # List sessions modified in last 7 days
+ find ~/.local/share/goose/sessions/ -mtime -7 -name "*.jsonl"
+
+ # Show first line (metadata) of each session file
+ for f in ~/.local/share/goose/sessions/*.jsonl; do
+ head -n1 "$f" | grep "your search term" && echo "Found in: $(basename "$f" .jsonl)"
+ done
+
+ # Find search term in session content
+ rg "your search term" ~/.local/share/goose/sessions/
+
+ # Search and show session IDs that contain search term
+ for f in ~/.local/share/goose/sessions/*.jsonl; do
+ if grep -q "your search term" "$f"; then
+ echo "Found in session: $(basename "$f" .jsonl)"
+ fi
+ done
+ ```
+
+
+
+
## Resume Session
1. Click the button in the top-left to open the sidebar
2. Click `History` in the sidebar
- 3. Click the session you'd like to resume
+ 3. Click the session you'd like to resume. Goose provides [search features](#search-sessions) to help you find the session.
4. Choose how to resume:
- Click `Resume` to continue in the current window
- Click `New Window` to open in a new window
@@ -144,56 +245,6 @@ Note that sessions are automatically saved when you exit.
-### Search Session History
-
-
-
- In Goose Desktop, you can search session metadata including the description, filename, and working directory path. The search is text-based and supports case-sensitive matching, but doesn't search session content or support regex patterns.
-
- 1. Click the button in the top-left to open the sidebar
- 2. Click `History` in the sidebar
- 3. Use `Cmd+F` to open the search bar
- 4. Enter your search term
- 5. Use search features to refine and navigate results
-
- | Action | macOS | Windows/Linux |
- |--------|-------|---------------|
- | Next Match | `Cmd+G`
or `↓` | `Ctrl+G`
or `↓` |
- | Previous Match | `Shift+Cmd+G`
or `↑` | `Shift+Ctrl+G`
or `↑` |
- | Toggle Case-Sensitivity | `Aa` | `Aa` |
- | Focus Search Bar | `Cmd+F` | `Ctrl+F` |
- | Close Search | `Esc` or X | `Esc` or X |
-
-
-
- The Goose CLI supports [listing session history](/docs/guides/goose-cli-commands/#session-list-options) but doesn't provide search functionality. As a workaround, you can use your terminal's search capabilities (including regex support). Examples for macOS:
-
- ```bash
- # Search session IDs (filenames)
- ls ~/.local/share/goose/sessions/ | grep "full or partial session id"
-
- # List sessions modified in last 7 days
- find ~/.local/share/goose/sessions/ -mtime -7 -name "*.jsonl"
-
- # Show first line (metadata) of each session file
- for f in ~/.local/share/goose/sessions/*.jsonl; do
- head -n1 "$f" | grep "your search term" && echo "Found in: $(basename "$f" .jsonl)"
- done
-
- # Find search term in session content
- rg "your search term" ~/.local/share/goose/sessions/
-
- # Search and show session IDs that contain search term
- for f in ~/.local/share/goose/sessions/*.jsonl; do
- if grep -q "your search term" "$f"; then
- echo "Found in session: $(basename "$f" .jsonl)"
- fi
- done
- ```
-
-
-
-
### Resume Session Across Interfaces
You can resume a CLI session in Desktop.
@@ -290,40 +341,6 @@ Speak to Goose directly instead of typing your prompts.
-## Search Within Sessions
-
-Search allows you to find specific content within your current session. The search functionality is available in both CLI and Desktop interfaces.
-
-
-
- Trigger search using keyboard shortcuts or the search icon:
-
- | Action | macOS | Windows/Linux |
- |--------|-------|---------------|
- | Open Search | `Cmd+F` | `Ctrl+F` |
- | Next Match | `Cmd+G`
or `↓` | `Ctrl+G`
or `↓` |
- | Previous Match | `Shift+Cmd+G`
or `↑` | `Shift+Ctrl+G`
or `↑` |
- | Use Selection for Find | `Cmd+E` | n/a |
- | Toggle Case-Sensitivity | `Aa` | `Aa` |
- | Close Search | `Esc` or X | `Esc` or X |
-
-
-
- Search functionality is provided by your terminal interface. Use the appropriate shortcut for your environment:
-
- | Terminal | Operating System | Shortcut |
- |----------|-----------------|-----------|
- | iTerm2 | macOS | `Cmd+F` |
- | Terminal.app | macOS | `Cmd+F` |
- | Windows Terminal | Windows | `Ctrl+F` |
- | Linux Terminal | Linux | `Ctrl+F` |
-
- :::info
- Your specific terminal emulator may use a different keyboard shortcut. Check your terminal's documentation or settings for the search command.
- :::
-
-
-
## Share Files in Session
diff --git a/documentation/docs/guides/recipes/session-recipes.md b/documentation/docs/guides/recipes/session-recipes.md
index f218ffa1c283..24f17358066d 100644
--- a/documentation/docs/guides/recipes/session-recipes.md
+++ b/documentation/docs/guides/recipes/session-recipes.md
@@ -455,7 +455,7 @@ You can turn your current Goose session into a reusable recipe that includes the
- Share your recipe with Desktop users by copying the recipe URL from the recipe creation dialog. When someone clicks the URL, it will open Goose Desktop with your recipe configuration.
+ Share your recipe with Desktop users by copying the recipe URL from the recipe creation dialog.
To copy the recipe URL:
1. [Open the recipe](#use-recipe)
@@ -463,6 +463,8 @@ You can turn your current Goose session into a reusable recipe that includes the
3. Click `View recipe`
4. Scroll down and copy the link
+ When someone clicks the URL, it will open Goose Desktop with your recipe configuration. They can also use your recipe URL to [import a recipe](/docs/guides/recipes/storing-recipes#storing-recipes) into their Recipe Library.
+
Share your recipe with CLI users by directly sending them the recipe file or converting it to a shareable [deep link](/docs/guides/goose-cli-commands#recipe) for Desktop users:
diff --git a/documentation/docs/guides/recipes/storing-recipes.md b/documentation/docs/guides/recipes/storing-recipes.md
index b9075c697f40..d6844a775e33 100644
--- a/documentation/docs/guides/recipes/storing-recipes.md
+++ b/documentation/docs/guides/recipes/storing-recipes.md
@@ -59,6 +59,15 @@ If you're already using a recipe and want to save a modified version:
When you modify and save a recipe with a new name, a new recipe and new link are generated. You can still run the original recipe from the recipe library, or using the original link. If you edit a recipe without changing its name, the version in the recipe library is updated, but you can still run the original recipe via link.
:::
+**Import Recipe:**
+
+You can import a [shared recipe](/docs/guides/recipes/session-recipes#share-recipe) into your Recipe Library:
+1. Click the button in the top-left to open the sidebar
+2. Click `Recipes`
+3. Click **Import Recipe** and paste in the recipe URL
+4. Add a name and choose the [storage location](#recipe-storage-locations)
+5. Click **Import Recipe**
+
diff --git a/documentation/docs/mcp/_template_.mdx b/documentation/docs/mcp/_template_.mdx
index 32d66f515134..bb8d41afd8be 100644
--- a/documentation/docs/mcp/_template_.mdx
+++ b/documentation/docs/mcp/_template_.mdx
@@ -1,7 +1,6 @@
---
title: {Extension Name} Extension
-
-escription: Add {Extension Name} MCP Server as a Goose Extension
+description: Add {Extension Name} MCP Server as a Goose Extension
---
import Tabs from '@theme/Tabs';