8a21a212f8
Deploy Documentation / deploy (push) Has been cancelled
Canary / build-cli (push) Has been skipped
Canary / Upload Install Script (push) Has been skipped
Canary / bundle-desktop (push) Has been skipped
Canary / bundle-desktop-intel (push) Has been skipped
Canary / bundle-desktop-linux (push) Has been skipped
Canary / bundle-desktop-windows (push) Has been skipped
Canary / bundle-desktop-windows-cuda (push) Has been skipped
Canary / Release (push) Has been skipped
Cargo Deny / deny (push) Has been skipped
Unused Dependencies / machete (push) Has been skipped
Canary / Prepare Version (push) Failing after 1s
Live Provider Tests / check-fork (push) Failing after 0s
Create Minor Release PR / check-version-bump-pr (push) Has been skipped
Publish Ask AI Bot Docker Image / docker (push) Failing after 1s
Live Provider Tests / changes (push) Has been skipped
Scorecard supply-chain security / Scorecard analysis (push) Has been skipped
Publish Docker Image / docker (push) Failing after 1s
CI / changes (push) Failing after 8s
Create Minor Release PR / release (push) Has been skipped
Live Provider Tests / Smoke Tests (push) Has been cancelled
Live Provider Tests / Smoke Tests (Code Execution) (push) Has been cancelled
Live Provider Tests / Compaction Tests (push) Has been cancelled
CI / Build Rust Project on Windows (push) Has been cancelled
Live Provider Tests / Build Binary (push) Has been cancelled
CI / Lint Rust Code (push) Has been cancelled
CI / Check Generated Schemas are Up-to-Date (push) Has been cancelled
CI / Test and Lint Electron Desktop App (push) Has been cancelled
CI / Check Rust Code Format (push) Has been cancelled
CI / Build and Test Rust Project (push) Has been cancelled
CI / Check MSRV (push) Has been cancelled
2.1 KiB
2.1 KiB
title, sidebar_position, sidebar_label
| title | sidebar_position | sidebar_label |
|---|---|---|
| Custom Distributions | 60 | Custom Distributions |
Custom Distributions
goose is designed to be forked and customized. You can create your own "distro" of goose preconfigured with specific providers, bundled extensions, custom branding, and tailored workflows for your organization or audience.
What you can customize
| What You Want | Complexity |
|---|---|
| Preconfigure a model/provider | Low |
| Add custom AI providers (declarative JSON, no code) | Low |
| Bundle custom MCP extensions | Medium |
| Modify system prompts | Low |
| Customize desktop branding (icons, names, colors) | Medium |
| Build a new UI via ACP | High |
| Create guided workflows with recipes | Low |
Getting started
The full guide lives in the repo root since you'll need to work at the code level to build a custom distribution:
It covers:
- Architecture overview — how goose's layers (UI → server → core) fit together
- Configuration-only customization — environment variables,
config.yaml,init-config.yaml - Extension bundling — adding MCP servers as built-in extensions or via recipes
- Custom branding — replacing icons, app names, system prompts
- Building new interfaces — integrating with
goose serveorgoose acpover Agent Client Protocol (ACP) - Custom AI providers — declarative JSON providers or implementing the Provider trait
- Recipes & subagents — distributing preconfigured workflows
- Licensing & contribution guidance — staying compliant with Apache 2.0
Quick example: ship goose with a local model
The simplest custom distribution just sets environment defaults:
export GOOSE_PROVIDER=ollama
export GOOSE_MODEL=qwen3-coder:latest
Or create an init-config.yaml applied on first run:
GOOSE_PROVIDER: ollama
GOOSE_MODEL: qwen3-coder:latest
See the full guide for more scenarios including corporate API key distribution, audience-specific builds, and custom UIs.