docs: switching Goose Desktop and Goose CLI tabs (#2384)

This commit is contained in:
Rizel Scarlett
2025-04-29 12:21:06 -04:00
committed by GitHub
parent 2dc2301fa4
commit 8f7fe26461
38 changed files with 552 additions and 556 deletions

View File

@@ -28,7 +28,22 @@ Gooses permissions determine how much autonomy it has when modifying files, u
Here's how to configure:
<Tabs groupId="interface">
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
You can change modes before or during a session and it will take effect immediately.
<Tabs>
<TabItem value="session" label="In Session" default>
Click the Goose Mode option from the bottom menu.
</TabItem>
<TabItem value="settings" label="From Settings">
1. Click `...` in the upper right corner
2. Click `Settings`
3. Under `Mode Selection`, choose the mode you'd like
</TabItem>
</Tabs>
</TabItem>
<TabItem value="cli" label="Goose CLI">
<Tabs>
<TabItem value="session" label="In Session" default>
@@ -101,21 +116,6 @@ Here's how to configure:
</TabItem>
</Tabs>
</TabItem>
<TabItem value="ui" label="Goose Desktop">
You can change modes before or during a session and it will take effect immediately.
<Tabs>
<TabItem value="session" label="In Session" default>
Click the Goose Mode option from the bottom menu.
</TabItem>
<TabItem value="settings" label="From Settings">
1. Click `...` in the upper right corner
2. Click `Settings`
3. Under `Mode Selection`, choose the mode you'd like
</TabItem>
</Tabs>
</TabItem>
</Tabs>
:::info

View File

@@ -20,16 +20,7 @@ OpenRouter provides a unified interface for LLMs that allows you to select and s
2. Once verified, create your [API key](https://openrouter.ai/settings/keys).
<Tabs groupId="interface">
<TabItem value="cli" label="Goose CLI" default>
1. Run the Goose configuration command:
```sh
goose configure
```
2. Select `Configure Providers` from the menu.
3. Follow the prompts to choose OpenRouter as your provider and enter your OpenRouter API key when prompted.
</TabItem>
<TabItem value="ui" label="Goose Desktop">
<TabItem value="ui" label="Goose Desktop" default>
1. Click on the three dots in the top-right corner.
2. Select `Advanced Settings` from the menu.
3. Click on "Browse" in the `Models` section.
@@ -37,8 +28,15 @@ OpenRouter provides a unified interface for LLMs that allows you to select and s
5. Select `OpenRouter` from the list of available providers.
6. Enter your OpenRouter API key in the dialog that appears.
</TabItem>
<TabItem value="cli" label="Goose CLI">
1. Run the Goose configuration command:
```sh
goose configure
```
2. Select `Configure Providers` from the menu.
3. Follow the prompts to choose OpenRouter as your provider and enter your OpenRouter API key when prompted.
</TabItem>
</Tabs>
Now Goose will send your requests through OpenRouter which will automatically switch models when necessary to avoid interruptions due to rate limiting.
Now Goose will send your requests through OpenRouter which will automatically switch models when necessary to avoid interruptions due to rate limiting.

View File

@@ -13,18 +13,18 @@ A session is a single, continuous interaction between you and Goose, providing a
## Start Session
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
After choosing an LLM provider, you'll see the session interface ready for use. Type your questions, tasks, or instructions directly into the input field, and Goose will immediately get to work.
To start a new session at any time, click the three dots in the top-right corner of the application and select **New Session** from the dropdown menu.
</TabItem>
<TabItem value="cli" label="Goose CLI">
From your terminal, navigate to the directory from which you'd like to start, and run:
```sh
goose session
```
</TabItem>
<TabItem value="ui" label="Goose Desktop">
After choosing an LLM provider, youll see the session interface ready for use. Type your questions, tasks, or instructions directly into the input field, and Goose will immediately get to work.
To start a new session at any time, click the three dots in the top-right corner of the application and select **New Session** from the dropdown menu.
</TabItem>
</Tabs>
:::info
@@ -33,7 +33,10 @@ If this is your first session, Goose will prompt you for an API key to access an
## Name Session
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
Within the Desktop app, sessions are automatically named using the current timestamp in the format `YYYYMMDD_HHMMSS`. Goose also provides a description of the session based on context.
</TabItem>
<TabItem value="cli" label="Goose CLI">
By default, Goose names your session using the current timestamp in the format `YYYYMMDD_HHMMSS`. If you'd like to provide a specific name, this is where you'd do so. For example to name your session `react-migration`, you would run:
```
@@ -47,29 +50,31 @@ If this is your first session, Goose will prompt you for an API key to access an
logging to ~/.local/share/goose/sessions/react-migration.json1
```
</TabItem>
<TabItem value="ui" label="Goose Desktop">
Within the Desktop app, sessions are automatically named using the current timestamp in the format `YYYYMMDD_HHMMSS`. Goose also provides a description of the session based on context.
</TabItem>
</Tabs>
## Exit Session
Note that sessions are automatically saved when you exit.
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
To exit a session, simply close the application.
</TabItem>
<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 locally in `~/.local/share/goose/sessions`.
</TabItem>
<TabItem value="ui" label="Goose Desktop">
To exit a session, simply close the application.
</TabItem>
</Tabs>
## Resume Session
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
1. Click `...` in the upper right corner
2. Click `Previous Sessions`
3. Click a session
4. Click `Resume Session` in the upper right corner
</TabItem>
<TabItem value="cli" label="Goose CLI">
To resume your latest session, you can run the following command:
```
@@ -92,12 +97,6 @@ Note that sessions are automatically saved when you exit.
:::
</TabItem>
<TabItem value="ui" label="Goose Desktop">
1. Click `...` in the upper right corner
2. Click `Previous Sessions`
3. Click a session
4. Click `Resume Session` in the upper right corner
</TabItem>
</Tabs>
### Resume Session Across Interfaces
@@ -105,30 +104,7 @@ Note that sessions are automatically saved when you exit.
You can resume a CLI session in Desktop and vice versa.
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
To resume a Desktop session within CLI, get the name of the session from the Desktop app. Note that unless you specifically named the session, its default name is a timestamp in the format `YYYYMMDD_HHMMSS`.
1. Open Goose Desktop
2. Click `...` in the upper right corner
3. Click `Previous Sessions`
4. Find the session that you want to resume, and copy the basename (without the `.jsonl` extension).
:::note Example
**Desktop Session**
| Session Description | Session Filename |
|------------------------|------------------------------|
| GitHub PR Access Issue | **20250305_113223**.jsonl |
**CLI Command**
```sh
goose session -r --name 20250305_113223
```
:::
</TabItem>
<TabItem value="ui" label="Goose Desktop">
<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 `...` in the upper right corner
@@ -159,6 +135,29 @@ You can resume a CLI session in Desktop and vice versa.
:::
</TabItem>
<TabItem value="cli" label="Goose CLI">
To resume a Desktop session within CLI, get the name of the session from the Desktop app. Note that unless you specifically named the session, its default name is a timestamp in the format `YYYYMMDD_HHMMSS`.
1. Open Goose Desktop
2. Click `...` in the upper right corner
3. Click `Previous Sessions`
4. Find the session that you want to resume, and copy the basename (without the `.jsonl` extension).
:::note Example
**Desktop Session**
| Session Description | Session Filename |
|------------------------|------------------------------|
| GitHub PR Access Issue | **20250305_113223**.jsonl |
**CLI Command**
```sh
goose session -r --name 20250305_113223
```
:::
</TabItem>
</Tabs>
## Search Within Sessions
@@ -166,7 +165,19 @@ You can resume a CLI session in Desktop and vice versa.
Search allows you to find specific content within your current session. The search functionality is available in both CLI and Desktop interfaces.
<Tabs>
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
Trigger search using keyboard shortcuts or the search icon:
| Action | macOS | Windows/Linux |
|--------|-------|---------------|
| Open Search | `Cmd+F` | `Ctrl+F` |
| Previous Match | `` | `` |
| Next Match | `` | `` |
| Toggle Case-Sensitivity | `Aa` | `Aa` |
| Close Search | `Esc` or X | `Esc` or X |
</TabItem>
<TabItem value="cli" label="Goose CLI">
Search functionality is provided by your terminal interface. Use the appropriate shortcut for your environment:
| Terminal | Operating System | Shortcut |
@@ -180,16 +191,4 @@ Search allows you to find specific content within your current session. The sear
Your specific terminal emulator may use a different keyboard shortcut. Check your terminal's documentation or settings for the search command.
:::
</TabItem>
<TabItem value="ui" label="Goose Desktop">
Trigger search using keyboard shortcuts or the search icon:
| Action | macOS | Windows/Linux |
|--------|-------|---------------|
| Open Search | `Cmd+F` | `Ctrl+F` |
| Previous Match | `` | `` |
| Next Match | `` | `` |
| Toggle Case-Sensitivity | `Aa` | `Aa` |
| Close Search | `Esc` or X | `Esc` or X |
</TabItem>
</Tabs>

View File

@@ -42,7 +42,31 @@ Tool permissions work alongside [Goose Permission Modes](/docs/guides/goose-perm
## Configuring Tool Permissions
<Tabs groupId="interface">
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
You can configure tool permissions through either Manual or Smart Approval modes:
<Tabs>
<TabItem value="manual" label="Manual Approval" default>
1. Click `...` in the upper right corner
2. Click `Advanced Settings`
3. Under `Mode Selection`, choose `Manual Approval`
4. Click on an extension name
5. Use the dropdown next to each tool to set its permission level
</TabItem>
<TabItem value="smart" label="Smart Approval">
:::tip
In Smart Approval mode, Goose will automatically detect and allow read-only operations while requiring approval for state-changing actions.
:::
1. Click `...` in the upper right corner
2. Click `Advanced Settings`
3. Under `Mode Selection`, choose `Smart Approval`
4. Click on an extension name
5. Use the dropdown next to each tool to set its permission level
</TabItem>
</Tabs>
</TabItem>
<TabItem value="cli" label="Goose CLI">
1. Run the configure command:
```sh
@@ -102,30 +126,6 @@ Tool permissions work alongside [Goose Permission Modes](/docs/guides/goose-perm
```
</TabItem>
<TabItem value="ui" label="Goose Desktop">
You can configure tool permissions through either Manual or Smart Approval modes:
<Tabs>
<TabItem value="manual" label="Manual Approval" default>
1. Click `...` in the upper right corner
2. Click `Advanced Settings`
3. Under `Mode Selection`, choose `Manual Approval`
4. Click on an extension name
5. Use the dropdown next to each tool to set its permission level
</TabItem>
<TabItem value="smart" label="Smart Approval">
:::tip
In Smart Approval mode, Goose will automatically detect and allow read-only operations while requiring approval for state-changing actions.
:::
1. Click `...` in the upper right corner
2. Click `Advanced Settings`
3. Under `Mode Selection`, choose `Smart Approval`
4. Click on an extension name
5. Use the dropdown next to each tool to set its permission level
</TabItem>
</Tabs>
</TabItem>
</Tabs>
## Benefits of Permission Management
@@ -170,4 +170,4 @@ Documentation Task:
✓ Markdown editing → Always Allow
✗ Code editing → Never Allow
✗ System commands → Never Allow
```
```

View File

@@ -11,7 +11,19 @@ import DesktopInstallButtons from '@site/src/components/DesktopInstallButtons';
The Goose CLI and desktop apps are under active and continuous development. To get the newest features and fixes, you should periodically update your Goose client using the following instructions.
<Tabs groupId="interface">
<TabItem value="cli" label="Goose CLI" default>
<TabItem value="ui" label="Goose Desktop" default>
:::info
To update Goose to the latest stable version, reinstall using the instructions below
:::
<div style={{ marginTop: '1rem' }}>
1. <DesktopInstallButtons/>
2. Unzip the downloaded zip file.
3. Run the executable file to launch the Goose Desktop application.
4. Overwrite the existing Goose application with the new version.
5. Run the executable file to launch the Goose desktop application.
</div>
</TabItem>
<TabItem value="cli" label="Goose CLI">
You can update Goose by running:
```sh
@@ -41,16 +53,4 @@ The Goose CLI and desktop apps are under active and continuous development. To g
```
</TabItem>
<TabItem value="ui" label="Goose Desktop">
:::info
To update Goose to the latest stable version, reinstall using the instructions below
:::
<div style={{ marginTop: '1rem' }}>
1. <DesktopInstallButtons/>
2. Unzip the downloaded zip file.
3. Run the executable file to launch the Goose Desktop application.
4. Overwrite the existing Goose application with the new version.
5. Run the executable file to launch the Goose desktop application.
</div>
</TabItem>
</Tabs>

View File

@@ -28,13 +28,7 @@ You can use both global and local hints at the same time. When both exist, Goose
:::
<Tabs>
<TabItem value="manual" label="Manual" default>
- **Global hints file** - Create a `.goosehints` file in `~/.config/goose`.
- **Local hints file** - Create a `.goosehints` file at the root of the directory you'd like it applied to.
</TabItem>
<TabItem value="ui" label="Goose Desktop">
<TabItem value="ui" label="Goose Desktop" default>
#### Global hints file
1. Create a `.goosehints` file in `~/.config/goose`.
@@ -51,6 +45,12 @@ You can use both global and local hints at the same time. When both exist, Goose
You may have to adjust the screen size to fully see the Save and Cancel buttons.
:::
</TabItem>
<TabItem value="manual" label="Manual">
- **Global hints file** - Create a `.goosehints` file in `~/.config/goose`.
- **Local hints file** - Create a `.goosehints` file at the root of the directory you'd like it applied to.
</TabItem>
</Tabs>