Skip to main content
The configure command provides an interactive interface for managing Goose configuration.

Usage

First Time Setup

On first run, Goose guides you through initial configuration:
  1. Telemetry consent - Choose whether to share anonymous usage data
  2. Provider setup - Select from:
    • OpenRouter Login (recommended)
    • Tetrate Agent Router Service Login
    • Manual Configuration
  3. Model selection - Choose your AI model
Example:

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
Process:
  1. Select provider
  2. Enter credentials (API keys)
  3. Configure advanced settings (optional)
  4. Select model
  5. Test configuration
Example:

Custom Providers

Add custom provider with compatible API. Supported APIs:
  • OpenAI-compatible
  • Anthropic-compatible
  • Custom implementations
Configuration:

Add Extension

Connect to a new extension. Extension Types: Built-in Extensions:
  • developer - Code editing and shell access
  • autovisualiser - Data visualization
  • computercontroller - Web scraping and automation
  • memory - Persistent storage
  • tutorial - Interactive guides
Command-line (Stdio) Extensions:
  • Run local commands or scripts
  • Examples: npx -y @block/gdrive
Remote (Streamable HTTP) Extensions:
  • Connect via MCP Streamable HTTP
  • Format: http://localhost:8000/messages
Example:

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:
mode
Full file modification, extension usage. Edit, create, and delete files freely.
mode
All tools, extensions, and file modifications require human approval.
mode
Editing, creating, deleting files and using extensions require approval.
mode
Engage with provider without tools, extensions, or file modification.
Example:

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)
Not Collected:
  • Conversations or code
  • Tool arguments
  • Error messages
  • Personal data
Example:

Tool Permissions

Set permission levels for individual tools. Permission Levels:
  • always_allow - Never ask for approval
  • always_deny - Never allow execution
  • ask - Prompt for approval each time
Example:

Tool Output

Control how much tool output is shown.
level
Show only critical output
level
Include file write results
level
Show all output including shell commands
Example:

Max Turns

Set maximum turns without user input. Default: 1000 Example:

Secret Storage

Configure how secrets are stored.
storage
Use secure system keyring (recommended)Platforms:
  • macOS: Keychain
  • Windows: Credential Manager
  • Linux: Secret Service API
storage
Store in ~/.config/goose/secrets.yaml (plain text)Use when keyring access is restricted.
Example:

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 provider
  • GOOSE_MODEL - Override model
  • ANTHROPIC_API_KEY - Anthropic API key
  • OPENAI_API_KEY - OpenAI API key
Behavior:
  • GOOSE_MODE - Override mode setting
  • GOOSE_CLI_MIN_PRIORITY - Tool output level
  • GOOSE_TELEMETRY_OFF - Disable telemetry
Storage:
  • GOOSE_DISABLE_KEYRING - Use file storage instead of keyring
Example:

OAuth Authentication

Some providers support OAuth: Supported:
  • Databricks
  • GitHub (for custom providers)
Flow:
  1. Select provider
  2. Choose OAuth option
  3. Follow device code flow
  4. Complete authentication in browser

Testing Configuration

Configuration is automatically tested after setup:
Failed tests show specific errors:

Examples

Complete setup:
Add extensions:
Update settings:

See Also