Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
49 changes: 49 additions & 0 deletions documentation/docs/guides/goose-cli-commands.md
Original file line number Diff line number Diff line change
Expand Up @@ -450,6 +450,55 @@ After selecting a project, you'll be asked to either:
- **Start new session**: Start a new session in the selected project

---
### web

Start a new session in Goose Web, a lightweight web-based interface launched via the CLI that mirrors the desktop app's chat experience.

Goose Web is particularly useful when:
- You want to access Goose with a graphical interface without installing the desktop app
- You need to use Goose from different devices, including mobile
- You're working in an environment where installing desktop apps isn't practical

**Usage:**
```bash
goose web
```

**Options:**
- **`-p, --port <PORT>`**: Port number to run the web server on. Default is `3000`.
- **`--host <HOST>`**: Host to bind the web server to. Default is `127.0.0.1`.
- **`--open`**: Automatically open the browser when the server starts.

**Examples:**
```bash
# Start web interface at `http://127.0.0.1:3000` and open the browser
goose web --open

# Start web interface at `http://127.0.0.1:8080`
goose web --port 8080

# Start web interface accessible from local network at `http://192.168.1.7:8080`
goose web --host 192.168.1.7 --port 8080
```

**Limitations:**

While the web interface provides most core features, be aware of these limitations:
- Some file system operations may require additional confirmation
- Extension management must be done through the CLI
- Certain tool interactions might need extra setup
- Configuration changes require a server restart

:::warning
Don't expose the web interface to the internet without proper security measures.
:::

:::info
Use `Ctrl-C` to stop the server.
:::

---

Comment on lines +499 to +501
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CLI commands looks great, but I'm thinking this deserves more of a splash. Should we create a new doc for goose web or add it to an existing page so people know what its, why they would use it, and then link to this section on CLI commands?

## Prompt Completion

The CLI provides a set of slash commands that can be accessed during a session. These commands support tab completion for easier use.
Expand Down
25 changes: 15 additions & 10 deletions documentation/docs/guides/managing-goose-sessions.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ A session is a single, continuous interaction between you and Goose, providing a
<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.
To start a new session at any time, click the gear icon `⚙️` in the top-right corner of the application and select **New session** from the dropdown menu.

You can also use keyboard shortcuts to start a new session or bring focus to open Goose windows.

Expand All @@ -33,6 +33,11 @@ A session is a single, continuous interaction between you and Goose, providing a
goose session
```

If you want to interact with Goose in a web-based chat interface, start a session with the [`web`](/docs/guides/goose-cli-commands#web) command:
```sh
goose web --open
```

:::tip
You can also use the [`project`](/docs/guides/goose-cli-commands#project) and [`projects`](/docs/guides/goose-cli-commands#projects) commands to start or resume sessions from a project, which is a tracked working directory with session metadata.
:::
Expand Down Expand Up @@ -81,8 +86,8 @@ Note that sessions are automatically saved when you exit.

<Tabs>
<TabItem value="ui" label="Goose Desktop" default>
1. Click `...` in the upper right corner
2. Click `Previous Sessions`
1. Click `⚙️` in the upper right corner
2. Click `Session history`
3. Click a session
4. Click `Resume Session` in the upper right corner
</TabItem>
Expand Down Expand Up @@ -120,8 +125,8 @@ Note that sessions are automatically saved when you exit.
<TabItem value="ui" label="Goose Desktop" default>
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 `...` in the upper right corner
2. Click `Previous Sessions`
1. Click `⚙️` in the upper right corner
2. Click `Session history`
3. Use `Cmd+F` to open the search bar
4. Enter your search term
5. Use search features to refine and navigate results
Expand Down Expand Up @@ -172,8 +177,8 @@ You can resume a CLI session in Desktop and vice versa.
<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
2. Click `Previous Sessions`
1. Click `⚙️` in the upper right corner
2. Click `Session history`
3. Click the session you'd like to resume

:::tip
Expand Down Expand Up @@ -204,8 +209,8 @@ You can resume a CLI session in Desktop and vice versa.
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`
2. Click `⚙️` in the upper right corner
3. Click `Session history`
4. Find the session that you want to resume, and copy the basename (without the `.jsonl` extension).
:::note Example

Expand Down Expand Up @@ -238,7 +243,7 @@ Export sessions to Markdown to share with your team, create documentation, archi
Session export is currently only available through the CLI. You can export Desktop sessions via their session filename:

1. Click `⚙️` in the upper right corner
2. Click `Session History`
2. Click `Session history`
3. Note the session filename (e.g., `20250305_113223.jsonl`)
4. In the CLI, run the command:
```bash
Expand Down
8 changes: 8 additions & 0 deletions documentation/docs/quickstart.md
Original file line number Diff line number Diff line change
Expand Up @@ -140,6 +140,14 @@ Sessions are single, continuous conversations between you and Goose. Let's start
```sh
goose session
```

:::tip Goose Web
CLI users can also start a session in [Goose Web](/docs/guides/goose-cli-commands#web), a web-based chat interface:
```sh
goose web --open
```
:::

</TabItem>
<TabItem value="ui" label="Goose Desktop" default>
After choosing an LLM provider, you’ll see the session interface ready for use.
Expand Down
Loading