Skip to main content
Goose includes several built-in extensions that provide core capabilities. These extensions are ready to use without installation.

Available Extensions

developer

Code editing, file operations, and shell access. Enable:
Capabilities:
  • Read, write, and edit files
  • Execute shell commands
  • Navigate file systems
  • Search code
  • Run tests and builds
Platform Extension: This is a platform-level extension with OS-specific implementations. Configuration:

autovisualiser

Data visualization and UI generation tools. Enable:
Capabilities:
  • Generate charts (bar, line, pie, scatter)
  • Create interactive dashboards
  • Visualize data from JSON/CSV
  • Build UI components
Use Cases:
  • Data analysis visualization
  • Report generation
  • Interactive data exploration
  • Dashboard creation
Configuration:

computercontroller

Web scraping, file caching, and system automation. Enable:
Tools:

web_scrape

Fetch and parse web content. Example:
Parameters:
  • url - URL to fetch
  • save_as - Format: text, json, or binary
Features:
  • HTML to text conversion
  • JSON API responses
  • Binary downloads
  • Automatic caching

cache

Manage cached web content. Operations:
  • list - Show cached files
  • view - Display file content
  • delete - Remove specific file
  • clear - Delete all cached files
Example:

automation_script

Execute automation scripts in various languages. Supported Languages:
  • Shell/Bash (Linux/macOS)
  • Batch (Windows)
  • PowerShell (all platforms)
  • Ruby (if installed)
Example:

Document Readers

read_pdf - Extract text from PDF files read_docx - Extract text from Word documents
read_xlsx - Extract data from Excel spreadsheets
Example:
Configuration:

memory

Persistent memory storage across sessions. Enable:
Capabilities:
  • Store categorized information
  • Tag-based retrieval
  • Global and project-local storage
  • Persistent across sessions
Storage Types: Global Memory: Stored in ~/.config/goose/memory/global/
Available across all projects.
Local Memory: Stored in <project>/.goose/memory/
Project-specific information.
Operations:

Store Memory

Parameters:
  • category - Organization category
  • data - Information to store
  • tags - Optional tags
  • is_global - Global or local storage

Retrieve Memory

Parameters:
  • category - Category to retrieve (”*” for all)
  • is_global - Global or local storage

Remove Memory

When to Use:
  • User preferences and habits
  • Project configuration details
  • Recurring workflow patterns
  • API keys and endpoints
  • Team conventions
Configuration:

tutorial

Interactive tutorials and learning guides. Enable:
Capabilities:
  • Step-by-step guides
  • Interactive examples
  • Best practices
  • Learning resources
Use Cases:
  • Learning Goose features
  • Understanding extension development
  • Exploring MCP protocol
  • Recipe creation guidance
Configuration:

Using Built-in Extensions

Command Line

Single Extension:
Multiple Extensions:
With Other Options:

Configuration File

Add to ~/.config/goose/config.yaml:

Interactive Configuration

Extension Registry

Built-in extensions are registered at startup:
Registry maps extension names to spawn functions:

Container Support

Run extensions inside Docker containers:
Requirements:
  • Extension must exist in container
  • For built-in extensions, Goose must be installed in container
  • Container must be running

Disabling Profile Extensions

Skip default profile extensions:
This uses only the specified extensions, ignoring your profile defaults.

Timeout Configuration

Set custom timeouts for long operations:
Default timeout is 120 seconds.

Platform Extensions

The developer extension is a platform extension with OS-specific implementations:
  • Linux: Native file operations and shell
  • macOS: Native file operations and Terminal integration
  • Windows: Native file operations and PowerShell/CMD

See Also