mirror of
https://github.com/aljazceru/goose.git
synced 2025-12-17 22:24:21 +01:00
docs: text-based CLI examples (#790)
This commit is contained in:
@@ -10,14 +10,13 @@ import { IconDownload } from "@site/src/components/icons/download";
|
||||
# Install Goose
|
||||
|
||||
:::info Supported Environments
|
||||
Goose currently works on **macOS** and **Linux** systems, and supports both **ARM** and **x86** architectures. If you'd like to request support for additional operating systems, please [open an issue on GitHub](https://github.com/block/goose/issues/new?template=Blank+issue).
|
||||
Goose currently works on **macOS** and **Linux** systems and supports both **ARM** and **x86** architectures. If you'd like to request support for additional operating systems, please [open an issue on GitHub](https://github.com/block/goose/issues/new?template=Blank+issue).
|
||||
:::
|
||||
|
||||
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="cli" label="Goose CLI" default>
|
||||
#### Installing the Goose CLI
|
||||
To install Goose, run the following script on macOS or Linux.
|
||||
Run the following command to install the latest version of Goose:
|
||||
|
||||
```sh
|
||||
curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | sh
|
||||
@@ -29,7 +28,6 @@ Goose currently works on **macOS** and **Linux** systems, and supports both **AR
|
||||
:::
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
#### Installing the Goose Desktop Application
|
||||
To install Goose, click the **button** below:
|
||||
<div className="pill-button">
|
||||
<Link
|
||||
@@ -50,17 +48,39 @@ Goose currently works on **macOS** and **Linux** systems, and supports both **AR
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
### Set Up a Provider
|
||||
### Set LLM Provider
|
||||
Goose works with a set of [supported LLM providers][providers], and you’ll need an API key to get started. When you use Goose for the first time, you’ll be prompted to select a provider and enter your API key.
|
||||
|
||||
The process will look similar to the example below:
|
||||
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="cli" label="Goose CLI" default>
|
||||

|
||||
Upon installing, Goose will automatically enter its configuration screen. Here is where you can set up your LLM provider.
|
||||
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Configure Providers
|
||||
│
|
||||
◇ Which model provider should we use?
|
||||
│ OpenAI
|
||||
│
|
||||
◇ Provider openai requires OPENAI_API_KEY, please enter a value
|
||||
│▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪
|
||||
│
|
||||
◇ Enter a model from that provider:
|
||||
│ gpt-4o
|
||||
│
|
||||
◇ Welcome aboard! You're all set to start using this agent—let's achieve great things together!
|
||||
│
|
||||
└ Configuration saved successfully
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
Upon installing, the Provider screen will appear. Here is where you can choose your LLM Provider.
|
||||
|
||||

|
||||
|
||||
Once selecting your provider, you'll be prompted to enter an API key if applicable. Do so, and click `Submit`.
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
@@ -77,22 +97,26 @@ The process will look similar to the example below:
|
||||
|
||||
**Example:**
|
||||
|
||||
To select an option during configuration, hover over it and press Enter.
|
||||
To select an option during configuration, use the up and down arrows to highlight your choice then press Enter.
|
||||
|
||||
```sh
|
||||
What would you like to configure?
|
||||
> Configure Providers
|
||||
Toggle Extensions
|
||||
Add Extension
|
||||
|
||||
Which Model provider should we use?
|
||||
> OpenAI
|
||||
Databricks
|
||||
Ollama
|
||||
.....
|
||||
|
||||
Enter Api Key:
|
||||
> sk-1234abcd5678efgh
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Configure Providers
|
||||
│
|
||||
◇ Which model provider should we use?
|
||||
│ Google Gemini
|
||||
│
|
||||
◇ Provider Google Gemini requires GOOGLE_API_KEY, please enter a value
|
||||
│▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪
|
||||
│
|
||||
◇ Enter a model from that provider:
|
||||
│ gemini-2.0-flash-exp
|
||||
│
|
||||
◇ Hello there! You're all set to use me, so please ask away!
|
||||
│
|
||||
└ Configuration saved successfully
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
|
||||
@@ -13,105 +13,127 @@ You can use Goose with your preferred LLM. Goose supports a variety of LLM provi
|
||||
<Tabs groupId="interface">
|
||||
<TabItem value="cli" label="Goose CLI" default>
|
||||
1. Run the following command:
|
||||
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Configure Providers` from the menu.
|
||||
|
||||

|
||||
2. Select `Configure Providers` from the menu and press Enter.
|
||||
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◆ What would you like to configure?
|
||||
│ ● Configure Providers (Change provider or update credentials)
|
||||
│ ○ Toggle Extensions
|
||||
│ ○ Add Extension
|
||||
└
|
||||
```
|
||||
3. Choose a model provider and press Enter.
|
||||
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Configure Providers
|
||||
│
|
||||
◆ Which model provider should we use?
|
||||
│ ● Anthropic (Claude and other models from Anthropic)
|
||||
│ ○ Databricks
|
||||
│ ○ Google Gemini
|
||||
│ ○ Groq
|
||||
│ ○ Ollama
|
||||
│ ○ OpenAI
|
||||
│ ○ OpenRouter
|
||||
└
|
||||
```
|
||||
4. Enter you API key when prompted. Get more info on [how to obtain your API key](/docs/getting-started/providers#available-providers).
|
||||
|
||||
|
||||
|
||||
## Available Providers
|
||||
|
||||
### OpenAI
|
||||
|
||||
OpenAI offers powerful language models that include GPT-4, GPT-3.5-turbo, and more.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `OpenAI` from the list of available providers.
|
||||
3. Enter your `OPENAI_API_KEY` when prompted, which you can obtain by registering at [OpenAI's platform](https://platform.openai.com/api-keys).
|
||||
|
||||
### Databricks
|
||||
|
||||
Databricks is a data analytics and AI platform that provides access to various AI models and tools. They offer integration with popular models and custom model deployment.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Databricks` as your provider.
|
||||
3. Enter your `DATABRICKS_HOST` and `DATABRICKS_TOKEN`, which can be generated in your [Databricks Account Settings](https://www.databricks.com/).
|
||||
|
||||
### Ollama
|
||||
|
||||
Ollama is an open-source project that allows running large language models locally. It supports various open-source models and provides an API for integration.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Ollama` and follow the steps to download and set up your models as detailed on [Ollama's site](https://ollama.com/). Requires `OLLAMA_HOST`.
|
||||
|
||||
### Anthropic
|
||||
|
||||
Anthropic is an AI research company that offers advanced language models through its API. Their primary model is Claude, which comes in various versions.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Choose `Anthropic` and provide the `ANTHROPIC_API_KEY`, obtainable via [Anthropic's platform](https://www.anthropic.com/).
|
||||
|
||||
### Google Gemini
|
||||
|
||||
Google Gemini is a suite of large language models developed by Google. It offers multimodal capabilities and can be accessed through the [Google AI Studio](https://ai.google.dev/gemini-api/docs).
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Pick `Google Gemini` from the list of providers and input your `GOOGLE_API_KEY`.
|
||||
|
||||
### Groq
|
||||
|
||||
Groq is an AI company that offers high-performance inference for large language models. They provide access to various models through their API.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Groq` from the list of providers and input your `GROQ_API_KEY`, set up via the [Groq Console](https://groq.com/).
|
||||
|
||||
### OpenRouter
|
||||
|
||||
OpenRouter is a platform that provides access to multiple AI models from various providers through a single API. It simplifies the process of using different AI models in applications.
|
||||
|
||||
1. Run the following command and choose `Configure Providers`:
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
|
||||
2. Select `OpenRouter` from the list of providers and input your `OPENROUTER_API_KEY`, set up via the [OpenRouter Console](https://openrouter.ai/).
|
||||
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
**To update your LLM provider and API key:**
|
||||
|
||||
1. Click on the three dots in the top-right corner.
|
||||
1. Click the three dots (`...`) in the top-right corner.
|
||||
2. Select `Provider Settings` from the menu.
|
||||
3. Click Edit, enter your API key, and click `Set as Active`.
|
||||
|
||||
</TabItem>
|
||||
</Tabs>
|
||||
|
||||
## Available Providers
|
||||
|
||||
- OpenAI
|
||||
- Databricks
|
||||
- Ollama
|
||||
- Anthropic
|
||||
- Google Gemini
|
||||
- Groq
|
||||
- OpenRouter
|
||||
|
||||
|
||||
### OpenAI
|
||||
|
||||
OpenAI offers powerful language models that include GPT-4, GPT-3.5-turbo, and more.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `OpenAI` from the list of available providers.
|
||||
3. Enter your `OPENAI_API_KEY` when prompted, which you can obtain by registering at [OpenAI's platform](https://platform.openai.com/api-keys).
|
||||
|
||||
### Databricks
|
||||
|
||||
Databricks is a data analytics and AI platform that provides access to various AI models and tools. They offer integration with popular models and custom model deployment.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Databricks` as your provider.
|
||||
3. Enter your `DATABRICKS_HOST` and `DATABRICKS_TOKEN`, which can be generated in your [Databricks Account Settings](https://www.databricks.com/).
|
||||
|
||||
### Ollama
|
||||
|
||||
Ollama is an open-source project that allows running large language models locally. It supports various open-source models and provides an API for integration.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Ollama` and follow the steps to download and set up your models as detailed on [Ollama's site](https://ollama.com/). Requires `OLLAMA_HOST`.
|
||||
|
||||
### Anthropic
|
||||
|
||||
Anthropic is an AI research company that offers advanced language models through its API. Their primary model is Claude, which comes in various versions.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Choose `Anthropic` and provide the `ANTHROPIC_API_KEY`, obtainable via [Anthropic's platform](https://www.anthropic.com/).
|
||||
|
||||
### Google Gemini
|
||||
|
||||
Google Gemini is a suite of large language models developed by Google. It offers multimodal capabilities and can be accessed through the [Google AI Studio](https://ai.google.dev/gemini-api/docs).
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Pick `Google Gemini` from the list of providers and input your `GOOGLE_API_KEY`. .
|
||||
|
||||
### Groq
|
||||
|
||||
Groq is an AI company that offers high-performance inference for large language models. They provide access to various models through their API.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
2. Select `Groq` from the list of providers and input your `GROQ_API_KEY`, set up via the [Groq Console](https://groq.com/).
|
||||
|
||||
### OpenRouter
|
||||
|
||||
OpenRouter is a platform that provides access to multiple AI models from various providers through a single API. It simplifies the process of using different AI models in applications.
|
||||
|
||||
1. Run the following command and choose "Configure Providers":
|
||||
```sh
|
||||
goose configure
|
||||
```
|
||||
|
||||
2. Select `OpenRouter` from the list of providers and input your `OPENROUTER_API_KEY`, set up via the [OpenRouter Console](https://openrouter.ai/).
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ Out of the box, Goose is installed with a few extensions but with only the `Deve
|
||||
Here are the built-in extensions:
|
||||
|
||||
1. **Developer**: provides a set of general development tools that are useful for software development.
|
||||
2. **Non-Developer**: provides general computer control tools that doesn't require you to be a developer or engineer.
|
||||
2. **Computer Controller**: provides general computer control tools for webscraping, file caching, and automations.
|
||||
3. **Memory**: teaches goose to remember your preferences as you use it
|
||||
4. **JetBrains**: provides an integration for working with JetBrains IDEs.
|
||||
5. **Google Drive**: provides an integration for working with Google Drive for file management and access.
|
||||
@@ -52,26 +52,26 @@ Here are the built-in extensions:
|
||||
|
||||
To select an option during configuration, hover over it and press Enter.
|
||||
|
||||
```sh
|
||||
What would you like to configure?
|
||||
Configure Providers
|
||||
Toggle Extensions
|
||||
> Add Extension
|
||||
|
||||
|
||||
What type of extension would you like to add?
|
||||
> Built-in Extension
|
||||
Command-line Extension
|
||||
Remote Extension
|
||||
|
||||
Which Built-in extension would you like to enable?
|
||||
Developer Tools
|
||||
Non Developer
|
||||
> Jetbrains
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Built-in Extension
|
||||
│
|
||||
◆ Which built-in extension would you like to enable?
|
||||
│ ○ Developer Tools
|
||||
│ ○ Computer Controller (controls for webscraping, file caching, and automations)
|
||||
│ ○ Google Drive
|
||||
│ ○ Memory
|
||||
│ ● JetBrains
|
||||
└
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
1. Locate the menu (...) in the top right corner of the Goose Desktop.
|
||||
1. Click `...` in the top right corner of the Goose Desktop.
|
||||
2. Select `Settings` from the menu.
|
||||
3. Under `Extensions`, you can toggle the built-in extensions on or off.
|
||||
</TabItem>
|
||||
@@ -110,11 +110,34 @@ For advanced users, you can also edit the `~/.config/goose/config.yaml` file dir
|
||||
- `Command-Line Extension`: Add a local command or script to run as an extension.
|
||||
- `Remote Extension`: Connect to a remote system via SSE (Server-Sent Events).
|
||||
4. Follow the prompts based on the type of extension you selected.
|
||||
|
||||
Example of adding Command-Line Extension:
|
||||
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Add Extension
|
||||
│
|
||||
◇ What type of extension would you like to add?
|
||||
│ Command-line Extension
|
||||
│
|
||||
◇ What would you like to call this extension?
|
||||
│ fetch
|
||||
│
|
||||
◇ What command should be run?
|
||||
│ uvx mcp-server-fetch
|
||||
│
|
||||
◇ Would you like to add environment variables?
|
||||
│ No
|
||||
│
|
||||
└ Added fetch extension
|
||||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
|
||||
|
||||
1. Locate the menu (...) in the top right corner of the Goose Desktop.
|
||||
1. Click `...` in the top right corner of the Goose Desktop.
|
||||
2. Select `Settings` from the menu.
|
||||
3. Under `Extensions`, you can toggle the built-in extensions on or off.
|
||||
|
||||
@@ -178,20 +201,20 @@ You can enable or disable installed extensions based on your workflow needs.
|
||||
```
|
||||
2. Select `Toggle Extensions` from the menu.
|
||||
3. A list of already installed extensions will populate.
|
||||
4. Press the `space bar` to toggle the extension `enabled` or `disabled`.
|
||||
4. Press the `space bar` to toggle the extension. Solid means enabled.
|
||||
|
||||
**Example:**
|
||||
|
||||
To select an option during configuration, hover over it and press Enter.
|
||||
```sh
|
||||
What would you like to configure?
|
||||
Configure Providers
|
||||
> Toggle Extensions
|
||||
Add Extension
|
||||
|
||||
Enable systems: (use "space" to toggle and "enter" to submit)
|
||||
[ ] Developer Tools
|
||||
[X] JetBrains
|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Toggle Extensions
|
||||
│
|
||||
◆ enable extensions: (use "space" to toggle and "enter" to submit)
|
||||
│ ◼ developer
|
||||
│ ◻ fetch
|
||||
└
|
||||
```
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
|
||||
@@ -31,7 +31,25 @@ To set up Google Gemini with Goose, follow these steps:
|
||||
2. Select `Configure Providers` from the menu.
|
||||
3. Follow the prompts to choose `Google Gemini` as the provider and enter your API key.
|
||||
|
||||

|
||||
```
|
||||
┌ goose-configure
|
||||
│
|
||||
◇ What would you like to configure?
|
||||
│ Configure Providers
|
||||
│
|
||||
◇ Which model provider should we use?
|
||||
│ Google Gemini
|
||||
│
|
||||
◇ Provider Google Gemini requires GOOGLE_API_KEY, please enter a value
|
||||
│▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪▪
|
||||
│
|
||||
◇ Enter a model from that provider:
|
||||
│ gemini-2.0-flash-exp
|
||||
│
|
||||
◇ Hello! You're all set and ready to go, feel free to ask me anything!
|
||||
│
|
||||
└ Configuration saved successfully
|
||||
```
|
||||
|
||||
</TabItem>
|
||||
<TabItem value="ui" label="Goose Desktop">
|
||||
|
||||
Reference in New Issue
Block a user