Awesome
Community plugins repository for Goose 🧩
<p align="center"> <img src="docs/assets/goose_plugins_repository.png" alt="Goose Plugins Repository" width="500"/> </p>🪿 Loose Goose November 2024 🪿
goose-plugins
is participating in Loose Goose November 2024! 🪿 We’re so excited for your contributions, and have created a wide variety of content issues so that anyone can contribute. Whether you're a seasoned developer or a first-time open source contributor, there's something for everyone.
This event is open to both employees and external contributors! 🦢
To get started:
- Read the contributing guide.
- Read the code of conduct.
- Choose a task from our Loose Goose Project Hub here and follow the instructions. Each issue has the 🏷️
loosegoose
label.
Have questions? Connecting with us in our Discord community in the #loosegoose
and #goose-toolkits
project channel.
Installation
Goose plugins are currently only available by cloning this repository and linking to your local version of Goose. Installation via a package manager is being investigated. Keep an eye out for updates!
These instructions assume have cloned the Goose repository and the Goose plugins repository and are able to run goose running via uv run goose
.
- List the current toolkits available
uv run goose toolkit list
- Install the goose community plugins in editable mode
uv add --editable ~/path/to/goose-plugins
- List the toolkits again to see the new plugins
uv run goose toolkit list
You should see the community plugins in the list of available toolkits.
- Add the plugin to your Goose configuration file
Update your config at ~/.config/goose/profile.yaml
to include the plugin you want to use.
default:
provider: anthropic
processor: claude-3-5-sonnet-20240620
accelerator: claude-3-5-sonnet-20240620
moderator: truncate
toolkits:
- name: developer
requires: {}
- name: your_community_plugin
requires: {}
- Start a new goose session and your plugin should be available.
uv run goose session start
Developing Plugins
Check out the Goose docs on plugins! for more information on developing plugins.
- Fork the repositories and clone to your local machine.
git clone https://github.com/block/goose
git clone https://github.com/block-open-source/goose-plugins
- Create the virtual environment in each repository using
uv
.
uv sync
uv venv
Run the source ... activate
command that is output by the uv venv
command
- Install the goose community plugins in editable mode
uv add --editable ~/path/to/goose-plugins
- Run goose via
uv run
to iteratively develop your plugin
uv run goose session start