Files
goose/documentation/docs/getting-started/using-extensions.md
Bradley Axen 1c9a7c0b05 feat: V1.0 (#734)
Co-authored-by: Michael Neale <michael.neale@gmail.com>
Co-authored-by: Wendy Tang <wendytang@squareup.com>
Co-authored-by: Jarrod Sibbison <72240382+jsibbison-square@users.noreply.github.com>
Co-authored-by: Alex Hancock <alex.hancock@example.com>
Co-authored-by: Alex Hancock <alexhancock@block.xyz>
Co-authored-by: Lifei Zhou <lifei@squareup.com>
Co-authored-by: Wes <141185334+wesrblock@users.noreply.github.com>
Co-authored-by: Max Novich <maksymstepanenko1990@gmail.com>
Co-authored-by: Zaki Ali <zaki@squareup.com>
Co-authored-by: Salman Mohammed <smohammed@squareup.com>
Co-authored-by: Kalvin C <kalvinnchau@users.noreply.github.com>
Co-authored-by: Alec Thomas <alec@swapoff.org>
Co-authored-by: lily-de <119957291+lily-de@users.noreply.github.com>
Co-authored-by: kalvinnchau <kalvin@block.xyz>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Rizel Scarlett <rizel@squareup.com>
Co-authored-by: bwrage <bwrage@squareup.com>
Co-authored-by: Kalvin Chau <kalvin@squareup.com>
Co-authored-by: Alice Hau <110418948+ahau-square@users.noreply.github.com>
Co-authored-by: Alistair Gray <ajgray@stripe.com>
Co-authored-by: Nahiyan Khan <nahiyan.khan@gmail.com>
Co-authored-by: Alex Hancock <alexhancock@squareup.com>
Co-authored-by: Nahiyan Khan <nahiyan@squareup.com>
Co-authored-by: marcelle <1852848+laanak08@users.noreply.github.com>
Co-authored-by: Yingjie He <yingjiehe@block.xyz>
Co-authored-by: Yingjie He <yingjiehe@squareup.com>
Co-authored-by: Lily Delalande <ldelalande@block.xyz>
Co-authored-by: Adewale Abati <acekyd01@gmail.com>
Co-authored-by: Ebony Louis <ebony774@gmail.com>
Co-authored-by: Angie Jones <jones.angie@gmail.com>
Co-authored-by: Ebony Louis <55366651+EbonyLouis@users.noreply.github.com>
2025-01-24 13:04:43 -08:00

4.1 KiB
Raw Blame History

sidebar_position, title
sidebar_position title
1 Using Extensions

import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';

Using Extensions

:::info Supported Environments Goose currently works only on OSX 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 to let us know. :::

Goose Extensions are add-ons that provide a way to extend the functionality of Goose by connecting with applications and tools you already use in your workflow. These extensions can be used to add new features, access data and resources, or integrate with other systems.

Adding An Extension

When you install Goose, a few built-in extensions are included. In addition, you can add external extensions that were developed on the Model Context Protocol (MCP).

**To add an extension:**

1. Run the following command:
```sh
goose configure
```
2. Select `Add Extension` from the menu.
3. Choose the type of extension youd like to add:
    - `Built-In Extension`: Use an extension that comes pre-installed with Goose.
    - `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: Adding Built-in Extension**

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
```
**Extensions can be installed directly from the [directory page][extensions-directory] to the Goose UI as shown below.**
![Install Extension](../assets/guides/install-extension-ui.png)

Toggle Extensions

You can manage extensions by enabling or disabling them based on your workflow needs. Both, the CLI and UI, allow you to toggle extensions on or off as necessary.

**To enable or disable extensions that are already installed:**
1. Run the following command to open up Goose's configurations:
```sh
goose configure
```
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`. 

**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
```
**To enable or disable extensions that are already installed:**
  1. Click the three dots in the top-right corner of the application.
  2. Select Settings from the menu, then click on the Extensions section.
  3. Use the toggle switch next to each extension to enable or disable it.

Install Extension

Additional Resources

Visit the Installation Guide for detailed instructions on how to update your LLM provider.