configure command provides an interactive interface for managing Goose configuration.
Usage
First Time Setup
On first run, Goose guides you through initial configuration:- Telemetry consent - Choose whether to share anonymous usage data
- Provider setup - Select from:
- OpenRouter Login (recommended)
- Tetrate Agent Router Service Login
- Manual Configuration
- Model selection - Choose your AI model
Configuration Options
When run on an existing configuration:Configure Providers
Change provider or update credentials. Available Providers:- OpenAI
- Anthropic
- Ollama (local)
- Databricks
- Gemini
- Custom providers
- Select provider
- Enter credentials (API keys)
- Configure advanced settings (optional)
- Select model
- Test configuration
Custom Providers
Add custom provider with compatible API. Supported APIs:- OpenAI-compatible
- Anthropic-compatible
- Custom implementations
Add Extension
Connect to a new extension. Extension Types: Built-in Extensions:developer- Code editing and shell accessautovisualiser- Data visualizationcomputercontroller- Web scraping and automationmemory- Persistent storagetutorial- Interactive guides
- Run local commands or scripts
- Examples:
npx -y @block/gdrive
- Connect via MCP Streamable HTTP
- Format:
http://localhost:8000/messages
Toggle Extensions
Enable or disable connected extensions. Example:Remove Extension
Remove an extension (must be disabled first). Example:Goose Settings
Goose Mode
Control agent autonomy:Full file modification, extension usage. Edit, create, and delete files freely.
All tools, extensions, and file modifications require human approval.
Editing, creating, deleting files and using extensions require approval.
Engage with provider without tools, extensions, or file modification.
Telemetry
Enable or disable anonymous usage data collection. What’s Collected:- Operating system and architecture
- Goose version
- Provider and model used
- Extension usage counts (names only)
- Session metrics (duration, tokens)
- Error types (no details)
- Conversations or code
- Tool arguments
- Error messages
- Personal data
Tool Permissions
Set permission levels for individual tools. Permission Levels:always_allow- Never ask for approvalalways_deny- Never allow executionask- Prompt for approval each time
Tool Output
Control how much tool output is shown.Show only critical output
Include file write results
Show all output including shell commands
Max Turns
Set maximum turns without user input. Default: 1000 Example:Secret Storage
Configure how secrets are stored.Use secure system keyring (recommended)Platforms:
- macOS: Keychain
- Windows: Credential Manager
- Linux: Secret Service API
Store in
~/.config/goose/secrets.yaml (plain text)Use when keyring access is restricted.Toggle Experiment
Enable or disable experimental features. Example:Goose Recipe GitHub Repo
Configure GitHub repository for recipes. Example:Configuration Files
Configuration is stored in: Config:~/.config/goose/config.yaml
Secrets: System keyring or ~/.config/goose/secrets.yaml
Example config.yaml:
Environment Variables
Configuration can be overridden via environment: Provider/Model:GOOSE_PROVIDER- Override providerGOOSE_MODEL- Override modelANTHROPIC_API_KEY- Anthropic API keyOPENAI_API_KEY- OpenAI API key
GOOSE_MODE- Override mode settingGOOSE_CLI_MIN_PRIORITY- Tool output levelGOOSE_TELEMETRY_OFF- Disable telemetry
GOOSE_DISABLE_KEYRING- Use file storage instead of keyring
OAuth Authentication
Some providers support OAuth: Supported:- Databricks
- GitHub (for custom providers)
- Select provider
- Choose OAuth option
- Follow device code flow
- Complete authentication in browser
Testing Configuration
Configuration is automatically tested after setup:Examples
Complete setup:See Also
- Extensions Overview - Extension system
- Session Command - Using configured extensions
- Configuration Guide - Complete configuration reference