mirror of
https://github.com/aaif-goose/goose.git
synced 2026-06-02 06:14:27 +02:00
docs: multi-chat support and misc updates (#6753)
This commit is contained in:
@@ -232,13 +232,13 @@ Speak to goose directly instead of typing your prompts.
|
||||
To enable voice dictation:
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `Settings` in the sidebar
|
||||
3. Click `Chat`
|
||||
3. Click the `Chat` tab
|
||||
4. Under `Voice Dictation`, toggle `Enable Voice Dictation` on
|
||||
5. Choose between `OpenAI Whisper` or `ElevenLabs` as your dictation provider
|
||||
6. Enter your API key for the provider you chose
|
||||
|
||||
To use voice dictation:
|
||||
1. Return to the chat interface (click `Chat` in the sidebar)
|
||||
1. Return to your chat (click your chat session under `Chat` in the sidebar)
|
||||
2. Click the microphone on the right of the chat box and begin speaking
|
||||
|
||||
The first time you use voice dictation, goose will request access to your microphone. While recording, you'll see a live waveform of your audio in the input field, a timer, and the current size of your recording. Click the microphone button again to finish recording.
|
||||
|
||||
@@ -5,7 +5,7 @@ sidebar_label: Session Management
|
||||
---
|
||||
import Tabs from '@theme/Tabs';
|
||||
import TabItem from '@theme/TabItem';
|
||||
import { AppWindow, PanelLeft, FolderDot, Paperclip, Copy, Edit2, Trash2, Download, Upload } from 'lucide-react';
|
||||
import { AppWindow, PanelLeft, FolderDot, Paperclip, Copy, Edit2, Trash2, Download, Upload, ChefHat } from 'lucide-react';
|
||||
|
||||
|
||||
A session is a single, continuous interaction between you and goose, providing a space to ask questions and prompt action. This guide covers how to manage the session lifecycle.
|
||||
@@ -20,27 +20,20 @@ In your first session, goose prompts you to [set up an LLM (Large Language Model
|
||||
<TabItem value="ui" label="goose Desktop" default>
|
||||
When you open goose, you'll see the session interface ready for use. Just type—[or speak](/docs/guides/sessions/in-session-actions#voice-dictation "Learn how to enable voice dictation")—your questions, requests, or instructions directly into the input field, and goose will immediately get to work.
|
||||
|
||||
You can also start a new session at any time, either in the same goose window or in a new one.
|
||||
To start a new chat session:
|
||||
|
||||
<Tabs groupId="window-type">
|
||||
<TabItem value="same-window" label="Same Window" default>
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `Home` or `Chat` in the sidebar
|
||||
3. Send your first prompt from the chat box
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `Home` in the sidebar
|
||||
3. Send your first prompt from the chat box
|
||||
</TabItem>
|
||||
<TabItem value="new-window" label="New Window">
|
||||
|
||||
1. Click the <AppWindow className="inline" size={16} /> button in the top-left
|
||||
2. In the new window, send your first prompt from the chat box
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
goose Desktop supports working with multiple active chat sessions in the same window. Your new sessions are added to the `Chat` section of the sidebar, so you can quickly switch between your 10 most recent sessions. Just click a session to [continue working](#resume-session) in that session.
|
||||
|
||||
To change your working directory, click the <FolderDot className="inline" size={16} /> directory switcher at the bottom of the app.
|
||||
|
||||
:::tip
|
||||
On macOS, you can use the goose dock icon to quickly start sessions:
|
||||
:::info Starting Sessions in a New Window
|
||||
To start a session in a new window, click the <AppWindow className="inline" size={16} /> button in the top-left. After you send your first prompt, the new session is added to the `Chat` section of the sidebar.
|
||||
|
||||
On macOS, you can also use the goose dock icon to quickly start sessions:
|
||||
- **Drag and drop** a folder onto the goose icon to open a new session in that directory
|
||||
- **Right-click** the goose icon and select `New Window` to open a new session in your most recent directory
|
||||
:::
|
||||
@@ -57,6 +50,7 @@ In your first session, goose prompts you to [set up an LLM (Large Language Model
|
||||
| New Session in Different Directory | `Cmd+O` | `Ctrl+O` |
|
||||
| Toggle Sidebar | `Cmd+B` | `Ctrl+B` |
|
||||
| Open Settings | `Cmd+,` | `Ctrl+,` |
|
||||
| Focus goose Window | `Cmd+Option+G` | `Ctrl+Alt+G` |
|
||||
| Keep goose Window Always on Top | `Cmd+Shift+T` | `Ctrl+Shift+T` |
|
||||
|
||||
<br />
|
||||
@@ -84,12 +78,12 @@ In your first session, goose prompts you to [set up an LLM (Large Language Model
|
||||
## Name Session
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="ui" label="goose Desktop" default>
|
||||
In the Desktop app, session tiles display auto-generated descriptions based on the context of your initial prompt.
|
||||
A session's display name is auto-generated based on the context of your initial prompt. Session names help you identify goose sessions so you can switch between active sessions or [resume a session](#resume-session).
|
||||
|
||||
You can edit session descriptions after they're created:
|
||||
You can edit session names after they're created:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
3. Hover over the session you'd like to rename
|
||||
4. Click the <Edit2 className="inline" size={16} /> button that appears on the session card
|
||||
5. In the "Edit Session Description" modal that opens:
|
||||
@@ -98,9 +92,7 @@ In your first session, goose prompts you to [set up an LLM (Large Language Model
|
||||
- Or click the `Save` or `Cancel` buttons
|
||||
6. A success toast notification will confirm the change
|
||||
|
||||
:::tip
|
||||
Session descriptions help you manage multiple goose windows. When you're in the goose chat interface, session descriptions appear in the `Window` menu and in the Dock (macOS) or taskbar (Windows) menu, making it easy to identify and switch between different goose sessions.
|
||||
:::
|
||||
Session names appear in the `Chat` section of the sidebar, the `Window` menu, and the Dock (macOS) or taskbar (Windows) menu.
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="cli" label="goose CLI">
|
||||
@@ -129,7 +121,7 @@ Note that sessions are automatically saved when you exit.
|
||||
<TabItem value="cli" label="goose CLI">
|
||||
To exit a session, type `exit`. Alternatively, you exit the session by holding down `Ctrl+C`.
|
||||
|
||||
Your session will be stored in the local SQLite database at `~/.local/share/goose/sessions/sessions.db`.
|
||||
Your session will be stored in goose's [local SQLite database](/docs/guides/logs#session-records).
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
@@ -151,6 +143,10 @@ Search allows you to find specific content within sessions or find specific sess
|
||||
| Toggle Case-Sensitivity | `Aa` | `Aa` |
|
||||
| Close Search | `Esc` or `X` | `Esc` or `X` |
|
||||
|
||||
:::info No Regex or operator support
|
||||
Using regular expressions or search operators in search text isn't supported.
|
||||
:::
|
||||
|
||||
The following scenarios are supported:
|
||||
|
||||
#### Search Within Current Session
|
||||
@@ -166,7 +162,7 @@ Search allows you to find specific content within sessions or find specific sess
|
||||
To search all your sessions by name or working directory path:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
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)
|
||||
@@ -184,25 +180,12 @@ Search allows you to find specific content within sessions or find specific sess
|
||||
- "Find my earlier conversation about React hooks from last week"
|
||||
- "Show me sessions where I worked on database migrations"
|
||||
|
||||
goose will search your session history and show relevant conversations with context from matching sessions.
|
||||
goose will search your session history and show relevant conversations with context from matching sessions.
|
||||
|
||||
:::info
|
||||
This functionality requires the built-in [Chatrecall extension](/docs/mcp/chatrecall-mcp) to be enabled.
|
||||
:::
|
||||
|
||||
#### Search Within Historical Session
|
||||
This functionality requires the built-in [Chatrecall extension](/docs/mcp/chatrecall-mcp) to be enabled. You can enable it manually or, if [Extension Manager](/docs/mcp/extension-manager-mcp) is enabled, simply ask goose to use it:
|
||||
|
||||
To find specific content within a historical session:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> 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.
|
||||
- "Use chatrecall to find the latest status of the database migration project"
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
@@ -273,16 +256,39 @@ Search allows you to find specific content within sessions or find specific sess
|
||||
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="ui" label="goose Desktop" default>
|
||||
|
||||
You can switch between active sessions in the sidebar or resume any session from your history.
|
||||
|
||||
#### Switch Between Active Sessions
|
||||
|
||||
goose Desktop allows you to switch between multiple chat sessions in the same window. You can start a task in one session, switch to another to do some work, and return to the first session when the task is completed.
|
||||
|
||||
Your most recent sessions (up to 10) are available in the sidebar for quick access:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
3. Click the session you'd like to resume. goose provides [search features](#search-sessions) to help you find the session.
|
||||
2. In the `Chat` section, click any session to switch to it
|
||||
|
||||
Visual indicators help you track session status:
|
||||
- **Blue spinning icon** - Session is actively processing a request
|
||||
- **Green dot** - Session completed a task while you were viewing a different session
|
||||
- **Red dot** - Session encountered an error
|
||||
|
||||
In addition, sessions that are started from a recipe display the <ChefHat className="inline" size={16} /> icon.
|
||||
|
||||
:::tip
|
||||
You can [rename sessions](#name-session) to make it easier to identify specific sessions.
|
||||
:::
|
||||
|
||||
#### Resume from Session History
|
||||
|
||||
To find and resume sessions beyond your 10 most recent:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
3. Find 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
|
||||
|
||||
:::tip
|
||||
You can also quickly resume one of your three most recent sessions by clicking it in the `Recent chats` section on the `Home` page.
|
||||
:::
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="cli" label="goose CLI">
|
||||
@@ -302,33 +308,14 @@ Search allows you to find specific content within sessions or find specific sess
|
||||
```
|
||||
goose session -r --name react-migration
|
||||
```
|
||||
|
||||
:::tip
|
||||
While you can resume sessions using the commands above, we recommend creating new sessions for new tasks to reduce the chance of [doom spiraling](/docs/troubleshooting/known-issues#stuck-in-a-loop-or-unresponsive).
|
||||
:::
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### Resume Session Across Interfaces
|
||||
Sessions created in goose Desktop can be resumed in the CLI and vice versa. All sessions are stored in the [same database](/docs/guides/logs#session-records).
|
||||
|
||||
You can resume a CLI session in Desktop.
|
||||
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="ui" label="goose Desktop" default>
|
||||
All saved sessions are listed in the Desktop app, even CLI sessions. To resume a CLI session within the Desktop:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
3. Click the session you'd like to resume
|
||||
4. Choose how to resume:
|
||||
- Click `Resume` to continue in the current window
|
||||
- Click `New Window` to open in a new window
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="cli" label="goose CLI">
|
||||
Currently, you cannot resume a Desktop session within the CLI.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
:::tip Create New Sessions for New Tasks
|
||||
While you can resume sessions, we recommend creating new sessions for new tasks to reduce the chance of [doom spiraling](/docs/troubleshooting/known-issues#stuck-in-a-loop-or-unresponsive).
|
||||
:::
|
||||
|
||||
### Resume Project-Based Sessions
|
||||
|
||||
@@ -348,7 +335,7 @@ You can resume a CLI session in Desktop.
|
||||
You can delete sessions directly from the Desktop app:
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
3. Find the session you want to delete
|
||||
4. Hover over the session card to reveal the action buttons
|
||||
5. Click the <Trash2 className="inline" size={16} /> button that appears
|
||||
@@ -372,7 +359,7 @@ You can resume a CLI session in Desktop.
|
||||
Import complete sessions from JSON files to restore, share, or migrate sessions between goose instances. Importing creates a new session with a new ID rather than overwriting existing sessions.
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
3. Click the <Upload className="inline" size={16} /> `Import Session` button in the top-right corner
|
||||
4. Select a `.json` session file that was previously exported from goose
|
||||
5. The session will be imported with a new session ID
|
||||
@@ -391,7 +378,7 @@ You can resume a CLI session in Desktop.
|
||||
Export complete sessions as JSON files for backup, sharing, migration, or archival. Exported files preserve all session data including conversation history, metadata, and settings.
|
||||
|
||||
1. Click the <PanelLeft className="inline" size={16} /> button in the top-left to open the sidebar
|
||||
2. Click `History` in the sidebar
|
||||
2. Click `View All` at the bottom of the `Chat` section
|
||||
3. Find the session you want to export
|
||||
4. Hover over the session card to reveal the action buttons
|
||||
5. Click the <Download className="inline" size={16} /> button that appears
|
||||
|
||||
Reference in New Issue
Block a user